Hi, I think it is the libcrypto.so that is bad although the file command does not notice this. That least that what was happening to me. What I did was to create the shared libraries by running ld directly instead of using cc as a frontend (this is how shared libs was build for hpux in version 0.9.7). Basically I removed all the "-Wl," in front of linker arguments passed via cc since they are now going directly to ld. I also hardcoded the symbol SHAREDCMD=ld and removed the CFLAGS argument on from the link command line since these CFLAGS should not be relevant to the linker. I have attached patches for changed files. I have done my changes for the "hpux-parisc-cc" config taget in the Configure file, but you probably want to do similar changes to the "hpux-ia64-cc" target. /Leif Urjit Gokhale wrote: Hi, This is interesting ... 1) The piece of code in the Makefile that builds the shared object libcrypto.so and libssl.so is here. You can notice SHLIBDEPS='-lcrypto' for libssl.so ================== libcrypto$(SHLIB_EXT): libcrypto.a @if [ "$(SHLIB_TARGET)" != "" ]; then \ $(MAKE) SHLIBDIRS=crypto build-shared; \ else \ echo "There's no support for shared libraries on this platform" >&2; \ exit 1; \ filibssl$(SHLIB_EXT): libcrypto$(SHLIB_EXT) libssl.a @if [ "$(SHLIB_TARGET)" != "" ]; then \ $(MAKE) SHLIBDIRS=ssl SHLIBDEPS='-lcrypto' build-shared; \ else \ echo "There's no support for shared libraries on this platform" >&2; \ exit 1; \ fi ================== If I remove SHLIBDEPS='-lcrypto', the libssl.so is created. Otherwise I get the "unknown file type" error from ld. I still fail to understand what problem ld may have with libcrypto.so. It reports unknown file type error whereas 'file' command gives information about the shared object as: ================== openssl-0.9.8b> file libcrypto.so libcrypto.so: ELF-32 executable object file - IA64 ================== After this, though I could create libssl.so, The make proceeds ahead and stops while building all in engines directory. Here is the make output: ================== + rm -f libssl.exp + rm -f libssl.so + ln -s libssl.so.0.9.8 libssl.so making all in engines... + LIBDEPS=-L.. -lcrypto -ldl + SHAREDCMD=cc + SHAREDFLAGS=+Z -DOPENSSL_PIC -DOPENSSL_THREADS -DDSO_DLFCN -DHAVE_DLFCN_H - D_REENTRANT -Ae +DD64 +O3 +Olit=all -z -DB_ENDIAN -D_REENTRANT -DSHA1_ASM -DSHA256_ASM -DSHA512_ASM -D AES_ASM +DD64 -b -Wl,-B,symbolic,+vnocompatwarnings,-z,+s,+h,lib4758cca.sl + nm -Pg e_4758cca.o + grep [BDT] + cut -f1 -d + 1> lib4758cca.exp + + echo -L.. + grep ^ *-L + 1> /dev/null 2>& 1 + echo -L.. + uniq + sed -e s/^ *-L// + echo -lcrypto + grep ^ *-L + 1> /dev/null 2>& 1 + echo -ldl + grep ^ *-L + 1> /dev/null 2>& 1 LIBPATH=.. + + echo .. + sed -e s/ /:/g LIBPATH=.. + cc +Z -DOPENSSL_PIC -DOPENSSL_THREADS -DDSO_DLFCN -DHAVE_DLFCN_H -D_REENTRANT - Ae +DD64 +O3 +Olit=all -z -DB_ENDIAN -D_REENTRANT -DSHA1_ASM -DSHA256_ASM -DSHA512_ASM -D AES_ASM +DD64 -b -Wl,-B,symbolic,+vnocompatwarnings,-z,+s,+h,lib4758cca.sl -o lib4758cca.sl -Wl,+forceload e_4758cca.o -L.. -lcrypto -ldl + LD_LIBRARY_PATH=..:/usr/lib/hpux64 (Bundled) cc: warning 922: "-Ae" is unsupported in the bundled compiler, ignored. (Bundled) cc: warning 922: "+O3" is unsupported in the bundled compiler, ignored. (Bundled) cc: warning 922: "+Olit=all" is unsupported in the bundled compiler, ignored. (Bundled) cc: warning 922: "-b" is unsupported in the bundled compiler, ignored. ld: Unknown input file type: "../libcrypto.so" Fatal error. + rm -f lib4758cca.exp chmod: can't access lib4758cca.sl *** Error exit code 1 Stop. *** Error exit code 1 Stop. *** Error exit code 1 =============== Leif, could you please throw some more light on the changes made from 0.9.7 to 0.9.8 and what changes you think cause this problem. It will be great if you could share with us, what changes you made to the Makefile to things to work Thanks, ~ Urjit ----- Original Message ----- From: "Leif Thuresson" <[EMAIL PROTECTED]> To: <openssl-users@openssl.org> Sent: Tuesday, August 29, 2006 11:35 PM Subject: Re: Build problem on HP Itanium 64 bit machineHi, I have also had problems building shared version of openssl-0.9.8b on hpux-11.00 parisc using the hp ansi-c compiler. It looks like the openssl shared-library building part is completely re-implemented in 0.9.8 (compared to 0.9.7 which worked out of the box) In 0.9.7 shared libraries where linked using ld directly on this platform, but in 0.9.8 the configuration is setup to link shared libraries by running cc as a frontend to ld and this does not work for me. (maybe I have an ancient version of hp ansi-c that does not support this?) You can get a bit more insight into what is going on during the linking by uncommenting the #SET_X=set -x line in the Makefile.shared At this stage I have hand edited the Makefile and Makefile.shared to make it link directly with ld as in 0.9.7 and I have now managed to build shared libraries. I'm running the tests as I write this and it looks at least some test works okay now. :-) /Leif Urjit Gokhale wrote:Hi everyone, I am having problem building openssl on HP Itanium 64 bit box. Attached are the files that show the output of Configure and make. The output of make is stripped to show the last section where error is reported. The error is ld: Unknown input file type: "./libcrypto.so" Fatal error. I am also getting many "Unsatisfied symbol" errors during make. The cc version is: openssl-0.9.8b> cc --version (Bundled) cc: HP aC++/ANSI C B3910B A.05.50 [May 15 2003] at the end of unsuccessful make, this is what I have libcrypto.a libcrypto.so -> libcrypto.so.0.9.8 libcrypto.so.0.9.8 libssl.a Has anyone faced this problem? Does openssl have dependency on a specific version of cc? Is there any problem with the enable-shared option? If you require any more information about the environment, please let me know. Thanks, ~ Urjit DISCLAIMER ========== This e-mail may contain privileged and confidential information which is the property of Persistent Systems Pvt. Ltd. It is intended only for the use of the individual or entity to which it is addressed. If you are not the intended recipient, you are not authorized to read, retain, copy, print, distribute or use this message. If you have received this communication in error, please notify the sender and delete all copies of this message. Persistent Systems Pvt. Ltd. does not accept any liability for virus infectedmails.______________________________________________________________________ OpenSSL Project http://www.openssl.org User Support Mailing List openssl-users@openssl.org Automated List Manager [EMAIL PROTECTED]DISCLAIMER ========== This e-mail may contain privileged and confidential information which is the property of Persistent Systems Pvt. Ltd. It is intended only for the use of the individual or entity to which it is addressed. If you are not the intended recipient, you are not authorized to read, retain, copy, print, distribute or use this message. If you have received this communication in error, please notify the sender and delete all copies of this message. Persistent Systems Pvt. Ltd. does not accept any liability for virus infected mails. ______________________________________________________________________ OpenSSL Project http://www.openssl.org User Support Mailing List openssl-users@openssl.org Automated List Manager [EMAIL PROTECTED] |
openssl098b-hpux11_conf_patch.tgz
Description: application/compressed