我正在尝试在Ubuntu中为我的树莓派板交叉编译库bcm2835-1.42。 下载库并使用以下命令进行交叉编译:
wget http:www.airspayce.com/mikem/bcm2835/bcm2835-1.42.tar.gz
tar -xvf bcm2835-1.42.tar.gz
cd bcm2835-1.42
- arm-linux-gnueabi-ld和fpc ppcrossarm仍然链接到linux-i386
- 如何解决../libcrypto.so:未定义的引用到'rc4_md5_enc'?
- 在Linux上为Mac交叉编译简单的标准C程序
- 如何在Windows上使用QtCreator来构build和debuggingLinux的应用程序?
- 交叉编译gstreamer失败:x86-64 – > ARMv6 32位
./configure -host = arm -prefix = $(DEVELROOT)CC = arm-linux-gnueabihf-gcc-4.8 ar = arm-linux-gnueabihf-ar-4.8
使
当我使源代码我坚持以下错误消息。
/tmp/ccxDzazg.s:汇编信息:
/tmp/ccxDzazg.s:299错误:无效屏障types –
dmb ldr r0,[r0] dmb' /tmp/ccxDzazg.s:365: Error: invalid barrier type --
dmb str r1,[r0] dmb' /tmp/ccxDzazg.s:453错误:无效屏障types –dmb ldr r0,[r0] dmb' /tmp/ccxDzazg.s:480: Error: invalid barrier type --
dmb str r1,[r6] dmb' /tmp/ccxDzazg.s:644错误:无效屏障types –dmb str r1,[r0] dmb' /tmp/ccxDzazg.s:731: Error: invalid barrier type --
dmb str r1,[r0] dmb' /tmp/ccxDzazg.s:807错误:无效屏障types –dmb str r1,[r0] dmb' /tmp/ccxDzazg.s:868: Error: invalid barrier type --
dmb str r1,[r0] dmb'
解决,这将与bcm2835-1.44库工作正常。
如果您不必使用bcm2835-1.42库,Raspberry Pi论坛上的这篇文章建议使用QEMU,其步骤如下:
sudo fdisk -l
并找到与您的SD卡大小相匹配的磁盘 sudo mount /dev/XXXX /mnt
SD卡( XXXX
是代表SD卡的标识符) sudo apt-get install qemu qemu-user qemu-user-static
安装qemu sudo cp /usr/bin/qemu-arm-static /mnt/usr/bin
将文件复制到SD卡上 sudo chroot /mnt
root:/# gcc -v
exit
sudo unmount /dev/sdc2