【问题标题】:Compiling C/C++ Library for Raspberry Pi Toolchain为 Raspberry Pi 工具链编译 C/C++ 库
【发布时间】:2013-03-07 15:15:54
【问题描述】:

我一直致力于为 Raspberry Pi 开发设置工具链。我设置 the official Raspberry Pi cross-compiler 没有问题,但现在我开始需要一些外部库,例如 OpenSSL,以及最近发布的 OpenMAX 库。

将 C/C++ 库集成到交叉编译器中的最简单方法是什么?

【问题讨论】:

    标签: cross-compiling libraries raspberry-pi toolchain


    【解决方案1】:

    好的,所以我找到了一种将 3rd 方库与交叉编译器一起使用的方法,但它似乎不是最优的。基本上,我只是将所需的库安装到我的 Raspberry Pi(运行 Arch Linux)上

    pi:# pacman -S libssl-dev
    

    然后用

    pi:# tar -zcvf include.tar.gz /usr/include
    pi:# tar -zcvf lib.tar.gz /usr/lib
    

    压缩我的 Pi 上的 include 和 lib 目录。

    接下来,我通过sftp将它们复制到运行交叉编译器的本地机器(运行Debian挤压的i686):

    debian:$ sftp root@<pi_ip_address>:/usr/include.tar.gz
    debian:$ sftp root@<pi_ip_address>:/usr/lib.tar.gz
    

    我使用命令备份了交叉编译器的includelib 目录(作为root,因为我的交叉目录位于/opt

    debian:# tar -zcvf OLDinclude.tar.gz ./include
    debian:# tar -zcvf OLDlib.tar.gz ./lib
    

    然后将档案从 Pi 中提取到交叉编译器的 sysroot/usr/ 目录中。

    最后,为了测试它是否有效,我使用 &lt;cross&gt;-gcc&lt;cross&gt;-g++ 使用库编译了一个程序。 . .它奏效了!现在,我可能会编写一个 bash 脚本来为我处理大部分这些步骤。如果有人对如何简化此过程有任何提示,请提供建议。


    注意:对于像我这样的其他 Linux 新手,'$' 代表普通用户 shell,而 '#' 代表超级用户(即 root)shell。普通用户可以使用su命令升级为超级用户。

    【讨论】:

    • 不会覆盖主机系统库吗?
    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2021-09-12
    • 1970-01-01
    • 2021-09-05
    • 2016-06-22
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多