关于Arm和Linux的一个简单问题:
我刚刚在我的Ubuntu上构建了arm-none-eabi工具链来为ARM编译linux内核。这个工具链是否也能够编译在我的ARM上运行的linux环境中执行的二进制文件,还是需要第二个工具链?
啊,我想到了第二个问题。可以使用buildroot创建的工具链;是用来编译Linux for ARM还是编译运行在ARM上的Linux系统的二进制文件?任何人都可以向我解释这一点吗?!
答案 0 :(得分:2)
如果你有工具链,你可以编译Linux / ARM环境的任何程序。你只需要一个工具链。我没有看到Linux和任何其他程序之间的任何区别。
答案 1 :(得分:0)
让我用一个问题回答这个问题。 gcc或gnu编译器,你可以用它来编译你正在运行Linux的计算机的内核。您是否可以使用相同的编译器来编译在此计算机上运行的应用程序,或者您是否需要为应用程序使用第二个gcc编译器?
如果它可以构建Linux内核并且该内核正常工作,那么它很可能构建可以在该内核上运行的应用程序。我相信人们可以提出例外情况。但在实践中,特别是arm-none-linux-eabi,我们每天都会使用它来构建一个可用于arm的Linux系统并编译在那个arm linux系统上运行的程序。相同的编译器/工具链。
答案 2 :(得分:0)
是的,这是可能的!我创建了一个带有arm-2011.09交叉编译工具链的Ubuntu环境,并且从这个环境中定期构建Arm应用程序和Buildroot所需的linux内核组件。一切都很棒!
我使用Docker构建这些环境,这使得开发环境在工作,家庭和其他地方之间非常便携。如果Docker在我的业务范围内。