You are viewing a plain text version of this content. The canonical link for it is here.
Posted to dev@santuario.apache.org by Guillaume Rousse <gu...@renater.fr> on 2018/07/20 10:36:28 UTC

linking error when building xml-security-c with xalan support

Hello.

I'm unable to build xml-security-c with xalan support, as I'm facing a 
linking error:
/bin/sh ../libtool  --tag=CXX   --mode=link g++     -Wall -O2 -g -pipe 
-Wall -Wp,-D_FORTIFY_SOURCE=2 -fexceptions -fstack-protector-strong 
--param=ssp-buffer-size=4 -grecord-gcc-switches   -m64 -mtune=generic 
-O2 -DNDEBUG -pthread  -Wl,-z,relro  -o xsec-xtest 
tools/xtest/xsec_xtest-xtest.o libxml-security-c.la -lxerces-c 
-lxalan-c    -lcrypto
/home/rousse/packages/xml-security-c/BUILD/xml-security-c-2.0.0/xsec/tools/xtest/xtest.cpp:2689: 
undefined reference to 
`xalanc_1_11::XPathEvaluator::initialize(xercesc_3_2::MemoryManager&)'
/home/rousse/packages/xml-security-c/BUILD/xml-security-c-2.0.0/xsec/tools/xtest/xtest.cpp:2690: 
undefined reference to 
`xalanc_1_11::XalanTransformer::initialize(xercesc_3_2::MemoryManager&)'
...

I'm not a C++ expert, but if the linker tries to resolve symbols in 
xalan library using xerces 3.2 namespace, does it means than the actual 
dependency is not just "xalan >= 1.11", but "xalan >= 1.11, build 
against xerces >= 3.2" ?

This happens on a Centos 7.5 (gcc 4.8.5), using vanilla CentOS packages 
excepted for the custom Xerces 3.2 build.

Regards.
-- 
Guillaume Rousse
Pôle SSI

Tel: +33 1 53 94 20 45
www.renater.fr


Re: linking error when building xml-security-c with xalan support

Posted by "Cantor, Scott" <ca...@osu.edu>.
On 7/20/18, 6:36 AM, "Guillaume Rousse" <gu...@renater.fr> wrote:

> I'm not a C++ expert, but if the linker tries to resolve symbols in 
> xalan library using xerces 3.2 namespace, does it means than the actual 
> dependency is not just "xalan >= 1.11", but "xalan >= 1.11, build 
> against xerces >= 3.2" ?

Yes, but that's generally true of all C++, you can't mix different versions of any dependency. It's really true of anything in C for the most part. It's just a given.

-- Scott