【发布时间】:2015-01-31 11:46:14
【问题描述】:
我正在尝试为 AIX 7.1 创建一个共享库,但我不断收到那些未定义的引用错误,我正在尝试通过各种尝试来覆盖它们,但正如您所见,它不起作用。有人可以帮忙吗?我使用的 gcc 是独立的,但它是为同一台机器构建的,并且由同一台机器托管。我正在使用我也为这台机器构建的 binutils 2.22 附带的 ld。谢谢!
bash-4.2$ gcc -shared .libs/nvector_serial.o ../..//src/sundials/.libs/sundials_math.o -lm -Wl,--allow-shlib-undefined -Wl,-u -Wl,.strdod -Wl,-u -Wl,.__fd_select -Wl,-u -Wl,.printf -Wl,-u -Wl,.putchar -Wl,-u -Wl,.malloc -Wl,-u -Wl,.free -Wl,-soname -Wl,libsundials_nvecserial.so.0 -o .libs/libsundials_nvecserial.so.0.0.2 .libs/nvector_serial.o:./nvector_serial.c:(.pr+0x24): 未定义引用
.strtod' .libs/nvector_serial.o:./nvector_serial.c:(.pr+0xb0): undefined reference to.__fd_select' .libs/nvector_serial.o:./nvector_serial.c:(.pr+0x118): 未定义引用.malloc' .libs/nvector_serial.o:./nvector_serial.c:(.pr+0x148): undefined reference to.malloc' .libs/nvector_serial.o:./nvector_serial.c:(.pr+0x168): 未定义引用.free' .libs/nvector_serial.o:./nvector_serial.c:(.pr+0x17e): relocation truncated to fit: R_TOC againstN_VClone_Serial' .libs/nvector_serial.o:./nvector_serial.c:(.pr+0x18e):重定位被截断以适应:R_TOC 针对N_VCloneEmpty_Serial' .libs/nvector_serial.o:./nvector_serial.c:(.pr+0x19e): relocation truncated to fit: R_TOC againstN_VDestroy_Serial' .libs/nvector_serial.o:./nvector_serial.c:(.pr+0x1ae):重定位被截断以适应:R_TOC 针对N_VSpace_Serial' .libs/nvector_serial.o:./nvector_serial.c:(.pr+0x1be): relocation truncated to fit: R_TOC againstN_VGetArrayPointer_Serial' .libs/nvector_serial.o:./nvector_serial.c:(.pr+0x1ce):重定位被截断以适应:R_TOC 针对N_VSetArrayPointer_Serial' .libs/nvector_serial.o:./nvector_serial.c:(.pr+0x1de): relocation truncated to fit: R_TOC againstN_VLinearSum_Serial' .libs/nvector_serial.o:./nvector_serial.c:(.pr+0x1ee):重定位被截断以适应:R_TOC 针对N_VConst_Serial' .libs/nvector_serial.o:./nvector_serial.c:(.pr+0x1fe): relocation truncated to fit: R_TOC againstN_VProd_Serial' .libs/nvector_serial.o:./nvector_serial.c:(.pr+0x20e):重定位被截断以适应:R_TOC 针对N_VDiv_Serial' .libs/nvector_serial.o:./nvector_serial.c:(.pr+0x21e): additional relocation overflows omitted from the output .libs/nvector_serial.o:./nvector_serial.c:(.pr+0x314): undefined reference to.malloc' .libs/nvector_serial.o:./nvector_serial.c:(.pr+0x334): 未定义引用.free' .libs/nvector_serial.o:./nvector_serial.c:(.pr+0x340): undefined reference to.free' .libs/nvector_serial.o:./nvector_serial.c:(.pr+0x448): 未定义引用.malloc' .libs/nvector_serial.o:./nvector_serial.c:(.pr+0x5f8): undefined reference to.malloc' .libs/nvector_serial.o:./nvector_serial.c:(.pr+0x770): 未定义引用.malloc' .libs/nvector_serial.o:./nvector_serial.c:(.pr+0x90c): undefined reference to.free' .libs/nvector_serial.o:./nvector_serial.c:(.pr+0x9f8): 未定义引用.printf' .libs/nvector_serial.o:./nvector_serial.c:(.pr+0xa20): undefined reference to.putchar' .libs/nvector_serial.o:./nvector_serial.c:(.pr+0xa9c): 未定义引用.malloc' .libs/nvector_serial.o:./nvector_serial.c:(.pr+0xacc): undefined reference to.malloc' .libs/nvector_serial.o:./nvector_serial.c:(.pr+0xaec): 未定义引用.free' .libs/nvector_serial.o:./nvector_serial.c:(.pr+0xe28): undefined reference to.malloc' .libs/nvector_serial.o:./nvector_serial.c:(.pr+0xe48): 未定义引用.free' .libs/nvector_serial.o:./nvector_serial.c:(.pr+0xe54): undefined reference to.free' .libs/nvector_serial.o:./nvector_serial.c:(.pr+0xf84): 未定义引用.malloc' .libs/nvector_serial.o:./nvector_serial.c:(.pr+0x1074): undefined reference to.free' .libs/nvector_serial.o:./nvector_serial.c:(.pr+0x10a4): 未定义引用.free' .libs/nvector_serial.o:./nvector_serial.c:(.pr+0x10cc): undefined reference to.free' .libs/nvector_serial.o:./nvector_serial.c:(.pr+0x10e8): 未定义引用.free' ../..//src/sundials/.libs/sundials_math.o:./sundials_math.c:(.pr+0x24): undefined reference to.strtod' ../..//src/sundials/.libs/sundials_math.o:./sundials_math.c:(.pr+0xb0): 未定义引用`.__fd_select' collect2: ld 返回 1 个退出状态 bash-4.2$ 文件 nvector_serial.o nvector_serial.o:64 位 XCOFF 可执行文件或目标模块未剥离 bash-4.2$
【问题讨论】:
-
ittoolbox.com 上有更多的 AIX 负责人。注册并找到主题所在的“组”。祝你好运。
-
我去看看,谢谢!