2015-06-04 42 views
0

我正在使用buildroot的工具链为ARM交叉编译应用程序。但是,某些应用程序需要不为该工具链编译的库。我在我的主机工具链上有这些库,例如-ljack,lfftw等。为ARM工具链编译库(buildroot)

我需要知道,如果我得到所需软件包的tar包,那么如何配置它们以便通过arm-gcc编译库以及头文件/库复制到/ usr和/包括的buildroot?

通过这种方式,我应该可以通过buildroot的工具链访问这些库。

谢谢,

回答

4

那么,你需要将它们集成到Buildroot中。

以fftw为例,在这种特殊情况下,fftw已经在Buildroot中可用,并且您只需在构建中启用它即可。转到Target packagesLibrariesOther并启用fftw

如果你不知道在哪里可以找到一个包,运行make menuconfig并键入Ctrl-/得到一个搜索框。在那里你可以输入例如fftw并了解它所在菜单系统的位置以及它的依赖关系。

如果fftw(或其他一些你需要的库)在Buildroot中没有/不可用,你需要自己添加它。见例如adding packages to Buildroot

+0

谢谢,是的,软件包可以添加到buildroot,然后可以建立图像,但如果已经有分布,他想手动编译库并将它们放入目录? 我知道那不是正确的方式,但对于一些依赖性很小的应用程序,应该可以手动链接它们吗? 它应该也有可能吗? – jav321

+0

当然,我想你可以在sysroot中手动安装所有东西......并且/或者将gcc指向你拥有头文件和库的地方......尽管我会建议你不要这样做。也许我在处理嵌入式系统时有偏见,但我总是希望构建系统(在这种情况下是Buildroot)来构建一切,因为这是获得可靠和可重现构建的唯一方法。 – Anders