首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >gcc-3二进制文件与gcc-4兼容吗?

gcc-3二进制文件与gcc-4兼容吗?
EN

Stack Overflow用户
提问于 2011-05-06 23:24:31
回答 1查看 1.2K关注 0票数 9

我有一个用gcc 3.4.3编译的静态库,.I想在即将用gcc-4编译的代码中使用这个静态库。我模糊地读到过,gcc-3和gcc-4二进制文件不兼容,库需要重新编译,但只想确认这一点。有没有一个gcc-3库可以和gcc-4一起使用?

EN

回答 1

Stack Overflow用户

回答已采纳

发布于 2011-05-10 03:58:43

让组织中的其他人或供应商将他们的库更新到gcc 4并不总是一种选择,特别是当他们已经放弃它的时候。

If C++:假设能够链接,在运行时,您可以在使用流的C++标准库模板代码中崩溃,因为g++ 4生成的符号将根据g++ 3生成的定义进行解析。

在链接时,您可能会看到以下警告:

/usr/bin/ld:警告:(传统静态库)所需的libstdc++.so.5可能与libstdc++.so.6冲突

下面是一个示例:基类析构函数~basic_stringbuf() (实际上是一个模板)可以在g++ 3下编译的模块中定义,它会被libstdc++so.6中的析构函数~basic_ostringstream()错误地调用,而libstdc++so.6中的析构函数是由g++ 4编译模块调用的。卡布姆。

我尝试过compat-libstdc++-33,但没有成功。

也就是说,我仍然将32位的gcc 3时代的C库链接到我的gcc 4.1.2 C++程序中。

票数 3
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/5913530

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档