]> git.ipfire.org Git - thirdparty/openssl.git/blame - PROBLEMS
Missing 0 broke FreeBSD build.
[thirdparty/openssl.git] / PROBLEMS
CommitLineData
80e1495b 1* System libcrypto.dylib and libssl.dylib are used by system ld on MacOS X.
fe5eb670
RL
2
3
4 NOTE: The problem described here only applies when OpenSSL isn't built
5 with shared library support (i.e. without the "shared" configuration
6 option). If you build with shared library support, you will have no
7 problems as long as you set up DYLD_LIBRARY_PATH properly at all times.
8
80e1495b 9
0487cb23
RL
10This is really a misfeature in ld, which seems to look for .dylib libraries
11along the whole library path before it bothers looking for .a libraries. This
80e1495b
RL
12means that -L switches won't matter unless OpenSSL is built with shared
13library support.
14
15The workaround may be to change the following lines in apps/Makefile.ssl and
16test/Makefile.ssl:
17
18 LIBCRYPTO=-L.. -lcrypto
19 LIBSSL=-L.. -lssl
20
21to:
22
23 LIBCRYPTO=../libcrypto.a
24 LIBSSL=../libssl.a
25
26It's possible that something similar is needed for shared library support
27as well. That hasn't been well tested yet.
28
ebccb429
RL
29
30Another solution that many seem to recommend is to move the libraries
31/usr/lib/libcrypto.0.9.dylib, /usr/lib/libssl.0.9.dylib to a different
32directory, build and install OpenSSL and anything that depends on your
33build, then move libcrypto.0.9.dylib and libssl.0.9.dylib back to their
34original places. Note that the version numbers on those two libraries
35may differ on your machine.
36
37
80e1495b
RL
38As long as Apple doesn't fix the problem with ld, this problem building
39OpenSSL will remain as is.
40
e74e9c48
RL
41
42* Parallell make leads to errors
43
44While running tests, running a parallell make is a bad idea. Many test
45scripts use the same name for output and input files, which means different
46will interfere with each other and lead to test failure.
47
48The solution is simple for now: don't run parallell make when testing.
ff3345cb
RL
49
50
51* Bugs in gcc 3.0 triggered
52
53According to a problem report, there are bugs in gcc 3.0 that are
54triggered by some of the code in OpenSSL, more specifically in
55PEM_get_EVP_CIPHER_INFO(). The triggering code is the following:
56
57 header+=11;
58 if (*header != '4') return(0); header++;
59 if (*header != ',') return(0); header++;
60
61What happens is that gcc might optimize a little too agressively, and
62you end up with an extra incrementation when *header != '4'.
63
64We recommend that you upgrade gcc to as high a 3.x version as you can.
0a2407a8
AP
65
66* solaris64-sparcv9-cc SHA-1 performance with WorkShop 6 compiler.
67
68As subject suggests SHA-1 might perform poorly (4 times slower)
69if compiled with WorkShop 6 compiler and -xarch=v9. The cause for
70this seems to be the fact that compiler emits multiplication to
71perform shift operations:-( To work the problem around configure
72with './Configure solaris64-sparcv9-cc -DMD32_REG_T=int'.
52e5e5c2
LJ
73
74* Problems with hp-parisc2-cc target when used with "no-asm" flag
75
76When using the hp-parisc2-cc target, wrong bignum code is generated.
77This is due to the SIXTY_FOUR_BIT build being compiled with the +O3
78aggressive optimization.
79The problem manifests itself by the BN_kronecker test hanging in an
80endless loop. Reason: the BN_kronecker test calls BN_generate_prime()
81which itself hangs. The reason could be tracked down to the bn_mul_comba8()
82function in bn_asm.c. At some occasions the higher 32bit value of r[7]
83is off by 1 (meaning: calculated=shouldbe+1). Further analysis failed,
84as no debugger support possible at +O3 and additional fprintf()'s
85introduced fixed the bug, therefore it is most likely a bug in the
86optimizer.
87The bug was found in the BN_kronecker test but may also lead to
88failures in other parts of the code.
89(See Ticket #426.)
90
91Workaround: modify the target to +O2 when building with no-asm.