2012-08-27 139 views
0

我在debian 6.0发行版上开发我的C++服务应用程序,我也在debian 6.0上编译二进制文件; 这个二进制可以在debian 5.0发行版上正常工作吗?Linux二进制兼容性

+10

完全取决于所使用的库 – Najzero

回答

2

更好地在Debian 5.0上编译它们。

Linux内核开发人员提供向后兼容性,而不是前瞻性。但更可能的是基本库版本(如glibc)的问题。如果你害怕崩溃,请看他们的变化。

+0

我发现,大多数程序都相当不可知的linux内核版本,所以这可能不会太重要(但当然,这取决于“服务应用程序”的实际作用) –

2

不太可能,但你可以试试。它可能有助于将尽可能多的库链接为“静态”,这样不同版本的不同系统就不会造成问题。

0

确保使用Debian-5.0上提供的libstdC++/compiler版本。

例如使用g++-4.3二进制文件都会连接到相应的libstdc++6-4.3,编译时应该可以在Debian-5.0

注意,默认的C++ - 上挤编译器(Debian的6)为g++-4.4,这是莱尼没有可用。

,所以你可能要(:-)安装后明显)明确设置你的编译器/连接到g++-4.5

$ ./configure CPP=cpp-4.5 CC=gcc-4.5 CXX=g++-4.5 
$ make