cross-platform - 初学者交叉编译 mipsel
问题描述
我已经安装了用于交叉编译的“mipsel tuxbox”编译套件主机系统是 x86_64 slackware 目标是 mipsel32bit “vuduo+”
例如,我想编译一个程序,我使用这个脚本
make clean
export TOOLCHAIN=/opt/mipsel-tuxbox-linux-gnu
export PATH="$TOOLCHAIN/bin:$PATH"
export CC=/opt/mipsel-tuxbox-linux-gnu/mipsel-tuxbox-linux-gnu/bin/gcc
export RANLIB=/opt/mipsel-tuxbox-linux-gnu/mipsel-tuxbox-linux-gnu/bin/ranlib
make
编译可执行是..x86_64!
如果我使用这条线,会给我很多关于未找到包含的错误
make CC=/opt/mipsel-tuxbox-linux-gnu/mipsel-tuxbox-linux-gnu/bin/gcc STRIP=/opt/mipsel-tuxbox-linux-gnu/mipsel-tuxbox-linux-gnu/bin/strip CPPFLAGS="-I/opt/mipsel-tuxbox-linux-gnu/mipsel-tuxbox-linux-gnu/sysroot/usr/include/linux/ -I/opt/mipsel-tuxbox-linux-gnu/mipsel-tuxbox-linux-gnu/sysroot/usr/include/sys/"
怎么了?
解决方案
您还应该看看http://code.vuplus.com/index.php?action=repo
这些系统基于使用https://github.com/openembedded/bitbake构建系统的https://github.com/openembedded 。
除了上面的原始 vu+ 还有很多其他的
- https://github.com/OpenPLi
- https://github.com/oe-alliance
- https://www.vuplus-support.org/wbb4/vtisoftware/
它使您可以构建简单的应用程序并将其集成到具有一致依赖关系的完整系统映像中。
其他选项是
- 使用 gcc/llvm/等。并制作(https://www.linux-mips.org/wiki/Toolchains)。
- 使用 crossdev ( https://wiki.gentoo.org/wiki/Crossdev )创建一个 Go 编译器,或者使用 crossdev 构建和管理您的软件。
- 将 RUST ( https://www.rust-lang.org/tools/install ) 与 mipsel-unknown-linux-gnu 工具链一起使用。
- 使用https://github.com/joaohf/meta-erlang和上面提到的 OpenEmbedded 构建系统构建一个 Erlang-Runtime ,然后直接在你的 Box 上使用它。
- 使用 GDC 或 LDC ( https://wiki.dlang.org/Compilers )交叉编译 D。
推荐阅读
- java - 使用 JavaFX 创建一个带有“wait()”的任务
- json - 从各种类型的 JSON 值流中展开数组
- linux - 无法发送电子邮件 - ISPConfig / Roundcube
- c# - 如何在 asmx 方法 asp.net 中获取会话值
- java - Android 10 requestNetwork() takes too long displaying specified network
- html - laravel 5.8 bootstrap 在 Jquery 中不起作用
- php - 使用 Symfony 的教义命令问题
- reactjs - 如何更改 Material UI 自动完成弹出框的宽度
- javascript - Nest 无法解析 CommonModule 的依赖关系
- amazon-web-services - 创建 AWS EKS 集群的不同选项