【发布时间】:2011-03-08 09:02:29
【问题描述】:
当我尝试在本地计算机上编译我的项目副本时,我收到一条错误消息,指出它正在跳过不兼容的库。当我在工作中使用托管在服务器上的实时版本时,情况并非如此[它在那里完美无缺]。
其他各种网站让我相信这可能是一个环境问题,因为我正在开发 Ubuntu 的 64 位发行版,并且我假设服务器版本在 32 位上运行。尽管如此,在将我的环境变量设置为:
CFLAGS+=" -m32"
CXXFLAGS+=" -m32"
我仍然收到相同的编译错误:
/usr/bin/ld: skipping incompatible /dvlpmnt/libPI-Http.a when searching for -lPI-Http
可以有教程吗?
==编辑==
这是我按照乔纳森的建议得到的输出:
http.o: ELF 32-bit LSB relocatable, Intel 80386, version 1 (SYSV), not stripped
显然,所讨论的库毕竟是 32 位的?
【问题讨论】:
-
那个库肯定是 32 位的吗?试试
file /dvlpmnt/libPI-Http.a -
@Rup:这可能是说“当前的 ar 存档”,这并不是非常有用。如我的回答所示,您必须获取存档中的文件。
标签: c++ 64-bit compilation 32-bit conflicting-libraries