Questions tagged «cross-compilation»

有关如何使用其他设备为Raspberry Pi编译软件的问题。

8
如何建立用于交叉编译的GCC 4.7工具链?
我已经在Stack Overflow上问过这个问题,但我想知道是否有人设法为ARM交叉编译(对于x86 / x86-64 Linux主机)构建了GCC 4.7工具链。关于从源代码构建GCC的说明很多,对于4.7之前的GCC版本,有很多可用的交叉编译器,而不仅仅是最新的版本。 在Rasp Pi本身上编译可以很好地工作,但是对于实际目的来说有点太慢了。 我渴望编译,我想使用最新和最好的工具。

4
是否有Linux From Scratch(LFS)ARM等效产品
我想展示如何从几乎裸露的Linux安装中“引导”到有用且高效的产品。Tiny Core和LFS项目很好地证明了这一点。但是,它们是基于x86的系统的特定映像 是否有一个基于ARM系统的类似项目,尤其是Raspberry Pi。如果没有,那么如何引导一个类似的项目。它将需要考虑有限的内存,存储和处理器速度以及非自由的Blob要求,但是仍然应该可以构建一个小型定制系统。 如果可以通过交叉编译或在一堆Pis上使用dist-cc之类的东西在单独的主机上进行编译,则可以加分。


3
如果我的软件包管理器不包含它,我该如何安装它?
无法在Debian squeeze的默认存储库中安装Node.js(位于Google v8引擎之上的服务器端javascript),并且无法轻松地针对ARM进行编译。是否有任何特定于raspberry pi的项目来启动并运行节点?如果我的程序包管理器不包含节点或我想要最新版本,是否有一种简单的方法可以从源代码进行构建或从二进制文件进行安装?

2
如何查看我拥有哪个ARM CPU版本?
在为Pi编译程序包时,我遇到了如下消息: CFLAGS += -march=armv7-a -mtune=cortex-a8 -mfpu=neon -mfloat-abi=softfp #-mcpu=cortex-a8 and CFLAGS += -mtune=arm1176jzf-s -mfpu=vfp -mfloat-abi=hard 我知道之间的区别-march和-mtunu,但之间有什么区别armv7-a和arm1176jzf-s?如果我正在寻找新的Pi,我如何知道应该使用哪些标志和参数?

2
构建包括ramdisk的内核映像(.img)
我通过以下步骤为Raspberry Pi构建了Linux内核(3.0.1): 1. Downloading kernel source 2. tar xvf source.tar.bz2 3. downloading arm cross compilation tool. 4. tar xvf arm-2010q1-202-arm-none-linux-gnueabi-i686-pc-linux-gnu.tar.bz2 5. setting up path for cross tool export PATH=$PATH:/home/shan/<cross tool folder>/bin/ 6. after entering linux source dir make ARCH=arm versatile_defconfig (is this reliable with raspberry pi) 7. make ARCH=arm CROSS_COMPILE=arm-none-linux-gnueabi- …

1
如何安装distcc?
我已经阅读了如何构建用于交叉编译的GCC 4.7工具链?并成功构建了适用于我的RPi的简单测试程序。 为此,我必须arm-unknown-linux-gnueabi-gcc hello.c -o hello在x86桌面和scpRPi的可执行文件上运行。这很慢,很麻烦。我宁愿从我的RPi控制编译。 我已经读过有关的文章distcc,该文章可用于将编译内容从一台计算机分发到另一台计算机。 我该如何安装?我同时拥有Debian / Ubuntu和Arch Linux桌面,并且两个操作系统都安装在SD卡上。


3
交叉编译后是什么导致这些崩溃?
我正在尝试在Ubuntu上使用gcc交叉编译大型库(TensorFlow)。我已经安装了g ++-arm-linux-gnueabihf工具链,并且能够成功构建我的二进制文件。我正在使用的构建过程记录在这里:https : //github.com/petewarden4prs/tensorflow/tree/master/tensorflow/contrib/makefile#raspberry-pi 最初,我尝试在Pi 3上运行生成的可执行文件时遇到一个错误,指出pthreading被禁用(“启用多线程以使用std :: thread:不允许操作”)。我重新编译了-pthread作为编译选项,并且现在,该程序似乎因分段错误而随机崩溃。在gdb中运行它,它们似乎经常与使用错误的指针调用free()有关,并且调用堆栈似乎已损坏,因此我假设发生了一些内存不匹配的情况。 有没有人对我可以尝试在这里找出问题的建议? 以下是我的Pi的一些详细信息: pi@raspberrypi ~ $ uname -a Linux raspberrypi 4.1.19-v7+ #858 SMP Tue Mar 15 15:56:00 GMT 2016 armv7l GNU/Linux pi@raspberrypi ~ $ file benchmark benchmark: ELF 32-bit LSB executable, ARM, version 1 (SYSV), dynamically linked (uses shared libs), for GNU/Linux 2.6.32, …
By using our site, you acknowledge that you have read and understand our Cookie Policy and Privacy Policy.
Licensed under cc by-sa 3.0 with attribution required.