我的lxml-3.4.0主要是使用--static-deps构建的。如何连接这些剩余的未定义符号?
请注意,此处的gcc已编译为使用Solaris链接器:
# LDSHARED=/usr/bin/ld \
LD_LIBRARY_PATH=/full/path/lxml/build/tmp/libxml2/lib:/usr/lib \
LDFLAGS="-Wl,-Bdynamic -Wl,-lc -Wl,-lsocket -Wl,-lnsl -Wl,-Bstatic -Wl,-lxslt" \
python3.4 setup.py build_ext -i --static-deps --multicore=1
...
building 'lxml.etree' extension
/usr/gcc/4.8/bin/gcc -m32 -O3 -fPIC -DPIC -Wno-unused-result -DNDEBUG -g -O3 -Wall -Wstrict-prototypes -m32 -O3 -fPIC -DPIC -I/export/home/drlou/lxml/build/tmp/libxml2/include --I/full/path/lxml/build/tmp/libxml2/include/libxml2 -I/build/path/lxml/build/tmp/libxml2/include/libxslt -I/full/path/lxml/build/tmp/libxml2/include/libexslt -I/full/path/lxml/src/lxml/includes -I/usr/include/python3.4m -c src/lxml/lxml.etree.c -o build/temp.solaris-2.11-i86pc.32bit-3.4/src/lxml/lxml.etree.o -w
/usr/bin/ld -Wl,-Bdynamic -Wl,-lc -Wl,-lsocket -Wl,-lnsl build/temp.solaris-2.11-i86pc.32bit-3.4/src/lxml/lxml.etree.o /full/path/lxml/build/tmp/libxml2/lib/libiconv.a /full/path/lxml/build/tmp/libxml2/lib/libxslt.a /full/path/lxml/build/tmp/libxml2/lib/libxml2.a /full/path/lxml/build/tmp/libxml2/lib/libexslt.a -L/full/path/lxml/build/tmp/libxml2/lib -L/usr/lib -lz -lm -lpython3.4m -o /full/path/lxml/src/lxml/etree.cpython-34m.so
Undefined first referenced
symbol in file
gcry_md_hash_buffer /full/path/lxml/build/tmp/libxml2/lib/libexslt.a(crypto.o)
lzma_end /full/path/lxml/build/tmp/libxml2/lib/libxml2.a(xzlib.o)
gcry_cipher_close /full/path/lxml/build/tmp/libxml2/lib/libexslt.a(crypto.o)
gcry_cipher_open /full/path/lxml/build/tmp/libxml2/lib/libexslt.a(crypto.o)
lzma_code /full/path/lxml/build/tmp/libxml2/lib/libxml2.a(xzlib.o)
gcry_check_version /full/path/lxml/build/tmp/libxml2/lib/libexslt.a(crypto.o)
libiconv_close /full/path/lxml/build/tmp/libxml2/lib/libxml2.a(encoding.o)
gcry_strerror /full/path/lxml/build/tmp/libxml2/lib/libexslt.a(crypto.o)
gcry_cipher_setkey /full/path/lxml/build/tmp/libxml2/lib/libexslt.a(crypto.o)
libiconv_open /full/path/lxml/build/tmp/libxml2/lib/libxml2.a(encoding.o)
gcry_cipher_decrypt /full/path/lxml/build/tmp/libxml2/lib/libexslt.a(crypto.o)
gcry_cipher_encrypt /full/path/lxml/build/tmp/libxml2/lib/libexslt.a(crypto.o)
lzma_properties_decode /full/path/lxml/build/tmp/libxml2/lib/libxml2.a(xzlib.o)
lzma_auto_decoder /full/path/lxml/build/tmp/libxml2/lib/libxml2.a(xzlib.o)
libiconv /full/path/lxml/build/tmp/libxml2/lib/libxml2.a(encoding.o)
ld: fatal: symbol referencing errors. No output written to /full/path/lxml/src/lxml/etree.cpython-34m.so
error: command '/usr/bin/ld' failed with exit status 1