--- old/README 2006-04-03 08:03:44.000000000 -0700 +++ new/README 2006-04-17 12:56:40.615000000 -0700 @@ -314,6 +314,32 @@ Solaris: When using Sun's C compiler wit make CPPFLAGS='-D"Py_HUGE_VAL=HUGE_VAL()" -I. -I$(srcdir)/Include' ./python setup.py CPPFLAGS='-D"Py_HUGE_VAL=HUGE_VAL()"' + On Solaris 8, the crypt library is installed incorrectly if + your system has only the exportable crypt library and if you + are compiling Python in 64-bit mode. There is a symbolic link + /usr/lib/libcrypt.so -> libcrypt_i.s, so setup.py (which looks + at 32-bit libraries) assumes -lcrypt will work, but the + symbolic link /usr/lib/sparcv9/libcrypt.so is missing. The + bug is fixed in Solaris 9 and later. To work around the + problem, you can apply the following patch before building + Python, but this patch will cause Python to use the exportable + library even on hosts that have the higher-quality domestic + library. + + --- setup.py.bak 2006-04-03 23:29:05.000000000 -0700 + +++ setup.py 2006-04-17 12:53:28.631003000 -0700 + @@ -474,7 +474,9 @@ class PyBuildExt(build_ext): + if platform not in ['mac']: + # crypt module. + + - if self.compiler.find_library_file(lib_dirs, 'crypt'): + + if self.compiler.find_library_file(lib_dirs, 'crypt_i'): + + libs = ['crypt_i'] + + elif self.compiler.find_library_file(lib_dirs, 'crypt'): + libs = ['crypt'] + else: + libs = [] + Linux: A problem with threads and fork() was tracked down to a bug in the pthreads code in glibc version 2.0.5; glibc version 2.0.7 solves the problem. This causes the popen2 test to fail;