Questions tagged «cross-compilation»

1
单声道魔术如何?
我正在学习C#,所以我制作了一个小C#程序,说Hello, World!,然后使用进行编译mono-csc并运行mono: $ mono-csc Hello.cs $ mono Hello.exe Hello, World! 我注意到,当我点击TAB时bash,Hello.exe被标记为可执行。确实,它只是通过加载文件名的shell运行! Hello.exe是不是有一个有趣的文件扩展名的ELF文件: $ readelf -a Hello.exe readelf: Error: Not an ELF file - it has the wrong magic bytes at the start $ xxd Hello.exe | head -n1 00000000: 4d5a 9000 0300 0000 0400 0000 ffff 0000 MZ.............. MZ表示它是Microsoft Windows静态链接的可执行文件。将其放到Windows框上,它将(应该)运行。 …

1
为我的ARM SoC交叉编译GLIBC
我看到在chroot版本的Debian armel环境中确实有些奇怪。 但是首先,要有一些背景知识……虽然很长,但是问题很复杂,任何潜在的帮助都取决于了解全文。 我有一个运行Linux的嵌入式ARM SoC,更具体地说,armel是2.6.17内核上的Debian Lenny。Debian发行版本身可以很容易地升级到更高版本(sudo apt-get dist-upgrade),因此可以加快速度,达到甚至的armel版本 。squeezewheezy 问题在于内核是自定义内核...有问题的ARM SoC并不是主线内核的一部分,因此在2.6.17时已被废弃。 如果您知道Linux和GLIBC是如何工作的,那么您已经可以看到问题-使用最低支持的内核版本来编译GLIBC版本...已经超过2.6.17。因此,如果我们尝试将chroot压缩为Debian ... $ # From inside the little ARM machine running Debian Lenny $ sudo debootstrap --arch armel squeeze /squeeze \ http://ftp.whateverCountry.debian.org/debian $ sudo -i # mount -t proc none /squeeze/proc # mount -t sysfs none /squeeze/sys # mount …

1
尝试执行“ cc1”时出现GCC错误
我正在笔记本电脑上运行Raspberry Pi的Linux内核(运行debian 7)(遵循Raspberry Pi Kernel Compilation中的说明);但是当编译时 make ARCH=arm CROSS_COMPILE=${CCPREFIX} 我收到以下消息: CHK include/linux/version.h CHK include/generated/utsrelease.h make[1]: `include/generated/mach-types.h' is up to date. CC kernel/bounds.s gcc: error trying to exec 'cc1': execvp: No such file or directory make[1]: *** [kernel/bounds.s] Error 1 make: *** [prepare0] Error 2 我发现问题是找不到cc1或未gcc正确安装cc1 (所以我重新安装了gcc,apt-get --reinstall install gcc但是没有运气)。 gcc …

1
如何交叉编译Chromium for ARM?
目标 我需要在mini210s运行Linux 3.0.8 armv7l的 FriendlyARM 上安装Chromium 环境 Ubuntu Precise64的无家可归盒 depot_tools按照以下准则进行安装获得代码和 Linux Chromium ARM 工具链depot_tools 得到后depot_tools: vagrant@vagrant:~/depot_tools$ fetch chromium 环境变量 export GYP_CROSSCOMPILE=1 export GYP_DEFINES="target_arch=arm arm_float_abi=hard" 依存关系 vagrant@vagrant:~/depot_tools/src$ ./chrome/installer/linux/sysroot_scripts/install-debian.wheezy.sysroot.py --arch=arm Installing Debian Wheezy arm root image: /home/vagrant/depot_tools/src/chrome/installer/linux/debian_wheezy_arm-sysroot Downloading http://storage.googleapis.com/chrome-linux-sysroot/toolchain/285950/debian_wheezy_arm_sysroot.tgz build/install-build-deps.sh --arm build/install-build-deps-android.sh gclient sync 编译 build/gyp_chromium -Goutput_dir=out_arm ninja -C out_arm/Debug chrome 失误 …

4
使用交叉编译的Valgrind
我已经从Valgrind主干下载了源代码,并将其构建为可在由ARM926(ARMv5t架构)支持的嵌入式Linux系统(Montavista Linux)上使用。一切运行良好,直到我尝试运行它以检查我已完成的某些应用程序为止。瓦尔格朗德告诉我: “ valgrind:无法为平台“ arm-linux”启动工具“ memcheck”:没有此类文件或目录”。 尝试运行任何其他工具都会给出相同的消息。对于make install,我使用--prefix选项指向通过NFS挂载的嵌入式系统的文件系统(例如--prefix = / home / NFS_ Mounted / opt / valgrind)。我检查了安装位置,其中的lib目录包含正确的工具;我还检查了Valgrind的相应pkgconfig文件,它似乎还可以,所以我现在有点笨拙,无法弄清楚出了什么问题。2个问题: 这样使用/安装交叉编译的Valgrind是否正确?也许我在设置方面做错了,或者也许我缺少了涉及主机系统的某些东西(例如gdb / gdbserver)。 有没有人尝试过在ARM体系结构上运行它?我知道该支持是最近才开始的,所以我想知道是否可以取得不错的结果。

1
如何为Beagleboard构建从头开始的Cross Linux从头开始的GCC交叉编译器(CLFS)?
目前,我尝试按照Scratch的Cross Linux的说明从头开始构建嵌入式Linux 。 一切正常,直到我尝试编译GCC交叉编译器。我想为Beagleboard-xM构建Linux。因此,我选择了以下设置: export CLFS_ABI="aapcs-linux" export CLFS_HOST="x86_64-cross-linux-gnu" export CLFS_TARGET="armv7a-unknown-linux-uclibceabi" export CLFS_ARCH="arm" export CLFS_ENDIAN="little" export CLFS_ARM_ARCH="armv7" export CLFS_ARM_MODE="arm" export CLFS_FLOAT="hard" export CLFS_FPU="neon" 否,一旦我尝试运行此页面上的说明,该命令就会make all-gcc all-target-libgcc出错。 checking for armv7a-unknown-linux-uclibceabi-gcc... /mnt/clfs/sources/gcc-build/./gcc/xgcc -B/mnt/clfs/sources/gcc-build/./gcc/ -B/mnt/clfs/cross-tools/armv7a-unknown-linux-uclibceabi/bin/ -B/mnt/clfs/cross-tools/armv7a-unknown-linux-uclibceabi/lib/ -isystem /mnt/clfs/cross-tools/armv7a-unknown-linux-uclibceabi/include -isystem /mnt/clfs/cross-tools/armv7a-unknown-linux-uclibceabi/sys-include checking for suffix of object files... configure: error: in `/mnt/clfs/sources/gcc-build/armv7a-unknown-linux-uclibceabi/libgcc': configure: error: cannot compute …
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.