More experiments show that you can set your data segment size soft
limit higher and thereby get through compilation of sha_dgst.c.
This commit is contained in:
parent
9b2961573a
commit
5789f8f780
29
FAQ
29
FAQ
@ -337,16 +337,25 @@ be safely used.
|
|||||||
|
|
||||||
On some Alpha installations running True64 Unix and Compaq C, the compilation
|
On some Alpha installations running True64 Unix and Compaq C, the compilation
|
||||||
of crypto/sha/sha_dgst.c fails with the message 'Fatal: Insufficient virtual
|
of crypto/sha/sha_dgst.c fails with the message 'Fatal: Insufficient virtual
|
||||||
memory to continue compilation.' As far as the tests have shown, this is a
|
memory to continue compilation.' As far as the tests have shown, this may be
|
||||||
compiler bug. What happens is that it eats up resident memory (not the swap)
|
a compiler bug. What happens is that it eats up a lot of resident memory
|
||||||
until the current limit is reached and then dies with the error message given
|
to build something, probably a table. The problem is clearly in the
|
||||||
above. The bug in question is clearly in the optimization code, because if
|
optimization code, because if one eliminates optimization completely (-O0),
|
||||||
one eliminates optimization completely (-O0), the compilation goes through
|
the compilation goes through (and the compiler consumes about 2MB of resident
|
||||||
(and the compiler consumes about 2MB of resident memory instead of 128MB or
|
memory instead of 240MB or whatever one's limit is currently).
|
||||||
whatever one's limit is currently). The very quick solution would be to
|
|
||||||
compile everything with -O0 as optimization level, but that's not a very
|
There are three options to solve this problem:
|
||||||
nice thing to do for those who expect to get the best result from OpenSSL.
|
|
||||||
A bit more complicated solution is the following:
|
1. set your current data segment size soft limit higher. Experience shows
|
||||||
|
that about 241000 kbytes seems to be enough on an AlphaServer DS10. You do
|
||||||
|
this with the command 'ulimit -Sd nnnnnn', where 'nnnnnn' is the number of
|
||||||
|
kbytes to set the limit to.
|
||||||
|
|
||||||
|
2. If you have a hard limit that is lower than what you need and you can't
|
||||||
|
get it changed, you can compile all of OpenSSL with -O0 as optimization
|
||||||
|
level. This is however not a very nice thing to do for those who expect to
|
||||||
|
get the best result from OpenSSL. A bit more complicated solution is the
|
||||||
|
following:
|
||||||
|
|
||||||
----- snip:start -----
|
----- snip:start -----
|
||||||
make DIRS=crypto SDIRS=sha "`grep '^CFLAG=' Makefile.ssl | \
|
make DIRS=crypto SDIRS=sha "`grep '^CFLAG=' Makefile.ssl | \
|
||||||
|
Loading…
x
Reference in New Issue
Block a user