我正在尝试构建一个可以在多个Linux发行版上运行的二进制包。目前它是在Ubuntu 10.04上构建的,但在Ubuntu 8.04上运行时会出现以下错误:
./test: /usr/lib/libstdc++.so.6: version `GLIBCXX_3.4.11' not found (required by ./test)
./test: /usr/lib/libstdc.so.6: version `GLIBC_2.11' not found (required by ./test)
什么是解决这个问题的首选方法?有没有办法在新系统上安装旧版glibc并针对其进行构建,或者必须在旧发行版上构建?如果我针对旧版glibc进行构建,它能够在新版glibc上正常工作吗?
或者,是否有一些方便的编译器标志或软件包可供安装以解决问题?