74 |
|
|
75 |
|
no-asm Do not use assembler code. |
76 |
|
|
77 |
< |
386 Use the 80386 instruction set only (the default x86 code is |
78 |
< |
more efficient, but requires at least a 486). Note: Use |
79 |
< |
compiler flags for any other CPU specific configuration, |
80 |
< |
e.g. "-m32" to build x86 code on an x64 system. |
77 |
> |
386 In 32-bit x86 builds, when generating assembly modules, |
78 |
> |
use the 80386 instruction set only (the default x86 code |
79 |
> |
is more efficient, but requires at least a 486). Note: |
80 |
> |
This doesn't affect code generated by compiler, you're |
81 |
> |
likely to complement configuration command line with |
82 |
> |
suitable compiler-specific option. |
83 |
|
|
84 |
< |
no-sse2 Exclude SSE2 code pathes. Normally SSE2 extention is |
85 |
< |
detected at run-time, but the decision whether or not the |
86 |
< |
machine code will be executed is taken solely on CPU |
87 |
< |
capability vector. This means that if you happen to run OS |
88 |
< |
kernel which does not support SSE2 extension on Intel P4 |
89 |
< |
processor, then your application might be exposed to |
90 |
< |
"illegal instruction" exception. There might be a way |
91 |
< |
to enable support in kernel, e.g. FreeBSD kernel can be |
92 |
< |
compiled with CPU_ENABLE_SSE, and there is a way to |
93 |
< |
disengage SSE2 code pathes upon application start-up, |
94 |
< |
but if you aim for wider "audience" running such kernel, |
95 |
< |
consider no-sse2. Both 386 and no-asm options above imply |
96 |
< |
no-sse2. |
84 |
> |
no-sse2 Exclude SSE2 code paths from 32-bit x86 assembly modules. |
85 |
> |
Normally SSE2 extension is detected at run-time, but the |
86 |
> |
decision whether or not the machine code will be executed |
87 |
> |
is taken solely on CPU capability vector. This means that |
88 |
> |
if you happen to run OS kernel which does not support SSE2 |
89 |
> |
extension on Intel P4 processor, then your application |
90 |
> |
might be exposed to "illegal instruction" exception. |
91 |
> |
There might be a way to enable support in kernel, e.g. |
92 |
> |
FreeBSD kernel can be compiled with CPU_ENABLE_SSE, and |
93 |
> |
there is a way to disengage SSE2 code paths upon application |
94 |
> |
start-up, but if you aim for wider "audience" running |
95 |
> |
such kernel, consider no-sse2. Both the 386 and |
96 |
> |
no-asm options imply no-sse2. |
97 |
|
|
98 |
|
no-<cipher> Build without the specified cipher (bf, cast, des, dh, dsa, |
99 |
|
hmac, md2, md5, mdc2, rc2, rc4, rc5, rsa, sha). |
103 |
|
-Dxxx, -lxxx, -Lxxx, -fxxx, -mXXX, -Kxxx These system specific options will |
104 |
|
be passed through to the compiler to allow you to |
105 |
|
define preprocessor symbols, specify additional libraries, |
106 |
< |
library directories or other compiler options. |
106 |
> |
library directories or other compiler options. It might be |
107 |
> |
worth noting that some compilers generate code specifically |
108 |
> |
for processor the compiler currently executes on. This is |
109 |
> |
not necessarily what you might have in mind, since it might |
110 |
> |
be unsuitable for execution on other, typically older, |
111 |
> |
processor. Consult your compiler documentation. |
112 |
|
|
113 |
|
-DHAVE_CRYPTODEV Enable the BSD cryptodev engine even if we are not using |
114 |
|
BSD. Useful if you are running ocf-linux or something |
166 |
|
OpenSSL binary ("openssl"). The libraries will be built in the top-level |
167 |
|
directory, and the binary will be in the "apps" directory. |
168 |
|
|
169 |
< |
If "make" fails, look at the output. There may be reasons for |
170 |
< |
the failure that aren't problems in OpenSSL itself (like missing |
171 |
< |
standard headers). If it is a problem with OpenSSL itself, please |
172 |
< |
report the problem to <openssl-bugs@openssl.org> (note that your |
173 |
< |
message will be recorded in the request tracker publicly readable |
174 |
< |
at https://www.openssl.org/community/index.html#bugs and will be |
175 |
< |
forwarded to a public mailing list). Include the output of "make |
176 |
< |
report" in your message. Please check out the request tracker. Maybe |
177 |
< |
the bug was already reported or has already been fixed. |
169 |
> |
If the build fails, look at the output. There may be reasons |
170 |
> |
for the failure that aren't problems in OpenSSL itself (like |
171 |
> |
missing standard headers). If you are having problems you can |
172 |
> |
get help by sending an email to the openssl-users email list (see |
173 |
> |
https://www.openssl.org/community/mailinglists.html for details). If |
174 |
> |
it is a bug with OpenSSL itself, please open an issue on GitHub, at |
175 |
> |
https://github.com/openssl/openssl/issues. Please review the existing |
176 |
> |
ones first; maybe the bug was already reported or has already been |
177 |
> |
fixed. |
178 |
|
|
179 |
< |
[If you encounter assembler error messages, try the "no-asm" |
180 |
< |
configuration option as an immediate fix.] |
179 |
> |
(If you encounter assembler error messages, try the "no-asm" |
180 |
> |
configuration option as an immediate fix.) |
181 |
|
|
182 |
|
Compiling parts of OpenSSL with gcc and others with the system |
183 |
|
compiler will result in unresolved symbols on some systems. |
190 |
|
the failure that isn't a problem in OpenSSL itself (like a missing |
191 |
|
or malfunctioning bc). If it is a problem with OpenSSL itself, |
192 |
|
try removing any compiler optimization flags from the CFLAG line |
193 |
< |
in Makefile.ssl and run "make clean; make". Please send a bug |
194 |
< |
report to <openssl-bugs@openssl.org>, including the output of |
188 |
< |
"make report" in order to be added to the request tracker at |
189 |
< |
http://www.openssl.org/support/rt.html. |
193 |
> |
in Makefile.ssl and run "make clean; make". To report a bug please open an |
194 |
> |
issue on GitHub, at https://github.com/openssl/openssl/issues. |
195 |
|
|
196 |
|
4. If everything tests ok, install OpenSSL with |
197 |
|
|