Dennis Clarke <[email protected]> writes: > Looks like nettle 2.5 should build pretty much out of the box but the > Makefiles seem to have a few issues.
Thanks for testing. > First thing wrong there is that libgmp does exist just fine. To figure out why that configure check failed, you'll have to look in config.log. > ... and then link goes boom because of the totally missing options to the > compiler/linker : > > /opt/solarisstudio12.3/bin/cc -I. -I/usr/local/include:/usr/sfw/include > -DHAVE_CONFIG_H -errfmt=error -erroff=%none -errshort=full -xstrconst > -xildoff -m64 -xmemalign=8s -xnolibmil -Xa -xcode=pic32 -xregs=no%appl > -xlibmieee -mc -g -xs -ftrap=%none -Qy -xbuiltin=%none -xdebugformat=dwarf > -xunroll=1 -xtarget=ultraT2 -xcache=8/16/4:4096/64/16 -D_TS_ERRNO > -D_POSIX_PTHREAD_SEMANTICS -D_LARGEFILE64_SOURCE -KPIC -Bdynamic -KPIC > -Bdynamic -c memxor.c -o memxor.po \ > && true > /opt/solarisstudio12.3/bin/cc -G -h libnettle.so.4 aes-decrypt-internal.po > aes-decrypt.po aes-encrypt-internal.po aes-encrypt.po aes-encrypt-table.po > aes-set-encrypt-key.po aes-set-decrypt-key.po aes-meta.po arcfour.po > arcfour-crypt.po arcfour-meta.po arctwo.po arctwo-meta.po base16-encode.po > base16-decode.po base16-meta.po base64-encode.po base64-decode.po > base64-meta.po camellia-crypt.po camellia-crypt-internal.po > camellia-set-encrypt-key.po camellia-set-decrypt-key.po camellia-table.po > camellia-meta.po cast128.po cast128-meta.po blowfish.po cbc.po ctr.po gcm.po > gcm-aes.po des.po des3.po des-compat.po hmac.po hmac-md5.po hmac-ripemd160.po > hmac-sha1.po hmac-sha224.po hmac-sha256.po hmac-sha384.po hmac-sha512.po > knuth-lfib.po md2.po md2-meta.po md4.po md4-meta.po md5.po md5-compress.po > md5-compat.po md5-meta.po ripemd160.po ripemd160-compress.po > ripemd160-meta.po salsa20-crypt.po salsa20-set-key.po sha1.po > sha1-compress.po sha1-meta.po sha256.po sha256-compress.po sha224-! me > ta.po sha256-meta.po sha512.po sha512-compress.po sha384-meta.po > sha512-meta.po serpent-set-key.po serpent-encrypt.po serpent-decrypt.po > serpent-meta.po twofish.po twofish-meta.po yarrow256.po yarrow_key_event.po > buffer.po buffer-init.po realloc.po nettle-meta-hashes.po > nettle-meta-ciphers.po nettle-meta-armors.po write-be32.po write-le32.po > memxor.po -o libnettle.so > ld: fatal: file aes-decrypt-internal.po: wrong ELF class: ELFCLASS64 > ld: fatal: file processing errors. No output written to libnettle.so > gmake[1]: *** [libnettle.so] Error 2 > gmake[1]: Leaving directory `/usr/local/build/nettle-2.5_sparcv9_001' > gmake: *** [all] Error 2 If I understand you correctly, the main problem is the linker command line, with -m64 being the most important missing option. And indeed, $(CFLAGS) seems not to be included when building shared libraries. IF you look in configure.in, and the definitions on LIBNETTLE_LINK and LIBHOGWEED_LINK (a couple of different variants), one would need to add $(CFLAGS) there. (Or of you want to workaround it without touching configure.in, the definitions are substituted into config.make). > what the heck is a po file ? Here, it's an object file compiled with compiler flags for position independent code, suitable for a shared library. > Anyways ... makefiles seem a bit off and a autoreconf --verbose --install may > be needed after a tweak to Makefile.am or similar. The intention is that there should be make rules for recreating anything (assuming you ran configure before you started hacking). To generate autoconf-related files from scrath, e.g., for a fresh checkout, you run the small ./.bootstrap script, and then rerun configure. There is no Makefile.am ;-). Regards, /Niels -- Niels Möller. PGP-encrypted email is preferred. Keyid C0B98E26. Internet email is subject to wholesale government surveillance. _______________________________________________ nettle-bugs mailing list [email protected] http://lists.lysator.liu.se/mailman/listinfo/nettle-bugs
