0

我能够在 AIX 上使用神圣的本机编译器“xlc”成功构建共享对象。它确实构建了共享对象库,但不安装共享对象库。

配置命令是:./configure --prefix=/PATH/to/install --exec-prefix=/PATH/to/install --enable-shared --enable-static=no --enable-module=so -- build=powerpc-ibm-aix5.3.0.0 --host=powerpc-ibm-aix5.3.0.0 LDFLAGS="-G -shared"

任何帮助,将不胜感激?

4

3 回答 3

0

因此,您正在尝试编译到共享库位置。

我建议看看你是否可以编译/链接到你的本地目录。

如果可行,请尝试将新库复制到正确的目录。可能是 oldshared 库已被某个进程打开,因此无法被覆盖。

您是否收到任何错误消息?

于 2009-10-17T01:09:26.947 回答
0

当我必须将 LDFLAGS 专门导出为“-brtl -L/path/to/install”时,我可以成功安装共享库。

于 2009-10-27T13:46:17.343 回答
0

在 AIX 下,有两种类型的共享库,AIX 风格和 SysV 兼容库。

AIX 风格的库是可以包含静态库以及多个版本的共享库的存档文件,并且具有类似 libFOO.a 的名称

SysV 兼容库的名称类似于 libFoo.so,并且更像您在 Linux 上可以找到的名称。

Libtool 将构建任一类型。如果您想要 SysV-compat 库,请将 -Wl,-brtl 添加到 LDFLAGS。

我的猜测是您看到 /PATH/to/install/lib/libFOO.a 并假设它是一个静态库,而实际上它是一个 AIX 共享库。

于 2012-10-26T17:52:38.530 回答