on our production solaris x86 server we dont have a compiler, so i have to compile on a separate so开发者_Go百科laris x86. The compilation server has the md_3dnow instruction set, but the production server does not. Is there a way to tell openssl config or make to exclude amd_3dnow instructions of the libssl.so? isainfo -v on the prod/target server tells:
- 64-bit amd64 applications: pclmulqdq aes sse4.2 sse4.1 ssse3 popcnt tscp cx16 mon sse3 pause sse2 sse fxsr mmx cmov amd_sysc cx8 tsc fpu
- 32-bit i386 applications: clmulqdq aes sse4.2 sse4.1 ssse3 popcnt tscp cx16 mon sse3 pause sse2 sse fxsr mmx cmov sep cx8 tsc fpu
Rather than using ./config
, use ./Configure
to manually configure the source tree (probably specifying either solaris64-x86_64-gcc
or solaris-x86-gcc
as the OS/compiler).
Since you appear to have a Core i7 CPU with AES, you could also specify -march=corei7-avx
(if you have a recent enough gcc) to get a build that is optimised for your production CPU. It won't run on your build system, though. Consult the list of supported -march
options for gcc on x86 / x86-64.
精彩评论