我有一些旧硬件,上面运行着旧版的SuSE linux。现在我有了这台运行Ubuntu 9.10的花哨的开发机器。我用来编译我的C应用程序的一些工具(用Python 2.6.x编写)在旧的SuSe框中不可用。那么......是否有可能在我的开发盒上编译那台旧机器?
我有以下几个步骤,但是想冒险进入这个任务之前要交叉检查: 1.找出我的应用程序需要哪些静态/共享库,并找到/构建它们的目标版本 2.还可以找到相应的头文件 3.将正确的标志输入gcc以使用目标标头和库 4.将正确的标志输入gcc以使用正确的体系结构(i386 / i686),还是需要交叉编译工具链。 5.编译,上传和欣赏; - )
我经常使用avr-gcc和cc65,两者都是交叉编译。我知道你设置了一个coss编译器来开发类似gumstix的东西,所以应该可以为旧的/其他Linux发行版做同样的事情,不是吗?
C
答案 0 :(得分:2)
我接触这个问题的方法就是抓住你的oldmachine:/usr/lib
和oldmachine:/usr/include
,这样你就可以newmachine:/oldmachinecompiler/usr/{lib|include}
然后构建交叉编译器设置--sysroot
到newmachine:/oldmachinecompiler/
这确实是确保程序中的任何库要求(包括libc)与oldmachine
兼容的唯一方法。