我在使用gcc 4.9编译的系统范围库的机器上安装了gcc5。
特别是boost
已使用旧的gcc4.9编译器编译。
我希望链接有问题,但编译和链接依赖于libboost_system
和libboost_filesystem
的简单程序并没有显示任何问题。
我认为gcc5会破坏与之前构建的库的二进制兼容性,我想知道我是否可能在这个配置的可执行文件中出现一些奇怪的行为。
安装的libstdc ++是:libstdc++.so.6.0.13
这是一个问题吗?我正在链接一些像这样的简单程序:
//gcc5 main
int main()
{
auto a = func();
}
//gcc 4.9 library linked statically or dinamically
std::string func
{
std::string s;
//do something
return s;
}
你能解释一下为什么它链接正确吗?