Al bajar los fuentes de Axis2/C versión 1.6.0 (desconozco si ocurre en otras) y al intentar compilarlo sobre una arquitectura x86_64 en distribuciones como Fedora , RedHat o CentOS ejecutando la sentencia make, aparece el siguiente error al compilar:
make[4]: se ingresa al directorio `/opt/axis2c-src-1.6.0/neethi/test' gcc -DHAVE_CONFIG_H -I. -I.. -I../include -I ../../util/include -I ../../axiom/include -I ../../include -g -O2 -pthread -g -O2 -D_LARGEFILE64_SOURCE -ansi -Wall -Werror -Wno-implicit-function-declaration -MT test.o -MD -MP -MF .deps/test.Tpo -c -o test.o test.c mv -f .deps/test.Tpo .deps/test.Po /bin/sh ../libtool --tag=CC --mode=link gcc -g -O2 -pthread -g -O2 -D_LARGEFILE64_SOURCE -ansi -Wall -Werror -Wno-implicit-function-declaration -lpthread -o test test.o ../src/libneethi.la ../../axiom/src/om/libaxis2_axiom.la ../../util/src/libaxutil.la ../src/libneethi.la -ldl mkdir .libs gcc -g -O2 -pthread -g -O2 -D_LARGEFILE64_SOURCE -ansi -Wall -Werror -Wno-implicit-function-declaration -o .libs/test test.o -lpthread ../../axiom/src/om/.libs/libaxis2_axiom.so ../../util/src/.libs/libaxutil.so ../src/.libs/libneethi.so -ldl -Wl,--rpath -Wl,/usr/local/axis2c/lib /usr/bin/ld: test.o: undefined reference to symbol 'axiom_xml_reader_free' /usr/bin/ld: note: 'axiom_xml_reader_free' is defined in DSO /usr/local/axis2c/lib/libaxis2_parser.so.0 so try adding it to the linker command line /usr/local/axis2c/lib/libaxis2_parser.so.0: could not read symbols: Invalid operation collect2: ld returned 1 exit status make[4]: *** [test] Error 1 make[4]: se sale del directorio `/opt/axis2c-src-1.6.0/neethi/test' make[3]: *** [all-recursive] Error 1 make[3]: se sale del directorio `/opt/axis2c-src-1.6.0/neethi' make[2]: *** [all] Error 2 make[2]: se sale del directorio `/opt/axis2c-src-1.6.0/neethi' make[1]: *** [all-recursive] Error 1 make[1]: se sale del directorio `/opt/axis2c-src-1.6.0' make: *** [all] Error 2
Para ello, se han de efectuar la compilación con las siguientes opciones:
[root@neodoo axis2c-src-1.6.0]# ./configure --enable-libxml2=yes --enable-guththila=no
Y modificar el fichero Makefile.in del directorio ./axis2c-src-1.6.0/neethi/test/:
test_LDADD = $(top_builddir)/src/libneethi.la ../../axiom/src/om/libaxis2_axiom.la ../../util/src/libaxutil.la ../src/libneethi.la ../../axiom/src/parser/libxml2/.libs/libaxis2_parser.so
A continuación, se puede lanzar el comando make y make install y ya tendremos Axis2/C compilado.
0 comentarios