Problema de 'referencia indefinida a la función' incluso después de vincular la biblioteca que tiene la definición
stoy tratando de crear un ejecutable con archivos .o, .so, .a.
Aquí está mi comando de compilación: -
pkgs/gcc/v4.8.3/bin/gcc -L/usr/X11R6/lib -O2 -DUSE_FLEX -Wall -Wno-char-subscripts -fPIC -DLINUX -DG_DISABLE_CONST_RETURNS -fno-strict-aliasing -o ../build/kl/Release/test/bin/pure.exe -L../build/kl/Release/test/modules ../build/kl/Release/test/maker/constrfunc.TCL.o ../../build/kl/Release/test/maker/pvdbprocs.TCL.o .. ../build/kl/Release/test/maker/maker/memmaker.TCL.o .. ../build/kl/Release/test/maker/modules/libdenbase.a .. ../build/kl/Release/test/maker/guibase.o -litk3.2 -litcl4.0.0 -ltk8.3 -lcdnviptcl8.4 -litclstub4.0.0 -ldenbase -lglib-2.0 -ldenbase -lX11 -ldl -lm -lviputil -lvippli -lcdsCommonMT_sh -lpthread -L/home/dlb/extlibs/arm/lib
Tengo bibliotecas que tienen definiciones de las funciones en la ruta "-L / home / dlb / extlibs / arm / lib". Todavía está arrojando el error a continuación.
Error
../build/kl/Release/test/maker/guibase.o: In function `decodeAddrList':
tree234.c:(.text+0xc): undefined reference to `ptritclStubsPtr'
tree234.c:(.text+0x20): undefined reference to `ptrlitclStubsPtr'
tree234.c:(.text+0x12c): undefined reference to `ptrlitclStubsPtr'
tree234.c:(.text+0x140): undefined reference to `ptrlitclStubsPtr'
Tengo el símbolo en la biblioteca que se encuentra en la ruta / home / dlb / extlibs / arm / lib: -
Mando:
readelf -s libitcl4.0.0.so | grep ptrlitclStubsPtr
348: 0000000000060f10 8 OBJECT LOCAL DEFAULT 24 ptrlitclStubsPtr
¿Me estoy perdiendo de algo
Nota, OP ha proporcionado más información en una nueva publicación de la misma pregunta;
cita del comentario de OP:
"Debido a algunos problemas de privacidad ... Estoy cambiando el nombre de los símbolos ... Fue editado por mí ... Fue un error tipográfico ... Acabo de corregirlo ... :)"
Es decir. los identificadores en el mensaje de error y la línea grep y la salida de la línea grep se han modificado manualmente.