gpt4 book ai didi

ubuntu - 为 Raspberry Pi 交叉编译第三方库的非繁琐方法

转载 作者:太空宇宙 更新时间:2023-11-03 16:49:38 25 4
gpt4 key购买 nike

我正在尝试将现有的 Linux C++ 应用程序移植到 Raspberry Pi。该应用程序依赖于许多第三方库。

我正在运行 Ubuntu 12.04,并使用 crosstools-ng 构建了我的 GCC 4.7 交叉编译器(后来才意识到我可以通过使用官方提供的工具链来省去麻烦!)我能够生成为我的 Raspberry 工作的可执行文件。到目前为止一切顺利。

然后我开始尝试构建我所有的第三方库依赖项:GLib、SDL 和其他几个。这些依赖项中的每一个都有自己的依赖项,等等。很快就会发现,手动构建所有这些库的 ARM 版本将非常繁琐且耗时。有没有更简单的方法?

最佳答案

发现后ScratchBox2 ,我已经设法拼凑出一些可行的东西。 ScratchBox2 是一种有助于创建适合交叉编译的 chroot 并利用 QEmu 的工具。 ,允许您在计算机上运行外部 CPU 二进制文件。在我的例子中,ScratchBox2 调解了对 Raspbian 的自包含沙箱的访问,Raspbian 是 Debian 的 ARM 变体,针对 Raspberry Pi 进行了优化。

结果是,一旦我完成所有设置——并且设置它花了几个乏味的小时——我可以简单地键入 sb2 -eR apt-get install ... 来获得任何所需的 ARM 包。这是神奇的东西。 (警告:我没有在 Ubuntu 12.10 中使用官方 ScratchBox2 包,所以最好使用来自 official Git repo 的最新修订版自己从源代码构建它。)

为了帮助您更轻松地重现我的设置,我在 Github 上为我的虚拟机提供了一个 Vagrant 配方:https://github.com/nickhutchinson/raspberry-devbox .它的边缘几乎肯定是粗糙的——这是我第一次使用 Puppet 配置工具——但希望其他人可以让它变得更健壮。

我发现这些资源非常有用:

关于ubuntu - 为 Raspberry Pi 交叉编译第三方库的非繁琐方法,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/13663292/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com