预备知识1
armel、armhf和arm64区别选择 /872.html预备知识2
/872.html linaro公司ARMV8架构32/64位gccUbuntu 安装64位arm交叉编译器
sudo apt install -y gcc-aarch64-linux-gnu
liuqun@vmware:~$ sudo apt install gcc-aarch64-linux-gnu正在读取软件包列表... 完成正在分析软件包的依赖关系树 正在读取状态信息... 完成 将会同时安装下列软件:binutils-aarch64-linux-gnu cpp-8-aarch64-linux-gnu cpp-aarch64-linux-gnu gcc-8-aarch64-linux-gnugcc-8-aarch64-linux-gnu-base libasan5-arm64-cross libatomic1-arm64-cross libc6-arm64-cross libc6-dev-arm64-crosslibgcc-8-dev-arm64-cross libgcc1-arm64-cross libgomp1-arm64-cross libitm1-arm64-cross liblsan0-arm64-crosslibstdc++6-arm64-cross libtsan0-arm64-cross libubsan1-arm64-cross linux-libc-dev-arm64-cross建议安装:binutils-doc gcc-8-locales cpp-doc gcc-8-doc libgcc1-dbg-arm64-cross libgomp1-dbg-arm64-crosslibitm1-dbg-arm64-cross libatomic1-dbg-arm64-cross libasan5-dbg-arm64-cross liblsan0-dbg-arm64-crosslibtsan0-dbg-arm64-cross libubsan1-dbg-arm64-cross libmpx2-dbg-arm64-cross libquadmath0-dbg-arm64-crossgdb-aarch64-linux-gnu gcc-doc下列【新】软件包将被安装:binutils-aarch64-linux-gnu cpp-8-aarch64-linux-gnu cpp-aarch64-linux-gnu gcc-8-aarch64-linux-gnugcc-8-aarch64-linux-gnu-base gcc-aarch64-linux-gnu libasan5-arm64-cross libatomic1-arm64-cross libc6-arm64-crosslibc6-dev-arm64-cross libgcc-8-dev-arm64-cross libgcc1-arm64-cross libgomp1-arm64-cross libitm1-arm64-crossliblsan0-arm64-cross libstdc++6-arm64-cross libtsan0-arm64-cross libubsan1-arm64-cross linux-libc-dev-arm64-cross升级了 0 个软件包,新安装了 19 个软件包,要卸载 0 个软件包,有 448 个软件包未被升级。需要下载 22.8 MB 的归档。解压缩后会消耗 82.0 MB 的额外空间。您希望继续执行吗? [Y/n]
检查gcc内置的define宏定义
echo "" > test.caarch64-linux-gnu-gcc -E -dM -c test.c|sort |grep -E "aarch64|ARM|ARM_ARCH"aarch64-linux-gnu-gcc -E -dM -c test.c | grep -E "STDC_VERSION"aarch64-linux-gnu-gcc --version
64位arm交叉编译器
Ubuntu 安装32位arm-linux交叉编译器
sudo apt-get install -y gcc-arm-linux-gnueabihf
检查arm交叉编译器内置的#define常量
echo "" > test.carm-linux-gnueabihf-gcc -E -dM -c test.c|sort |grep -E "arm|ARM"arm-linux-gnueabihf-gcc -E -dM -c test.c | grep -E "STDC_VERSION"arm-linux-gnueabihf-gcc --version
image.png
检查X86-64 GCC编译器内置的#define常量
image.pngecho "" > test.cgcc -E -dM -c test.c | sort | grep -E "amd64|x86_64|i386"gcc -E -dM -c test.c | grep -E "STDC_VERSION"
参考资料
版权声明:本文为CSDN博主「alan00000」的原创文章,遵循 CC 4.0 BY-SA 版权协议,转载请附上原文出处链接及本声明。
原文链接:/alan00000/article/details/47175063
gcc 预定义宏(x86-64)
打印方法:
echo "" > test.cgcc -E -dM -c test.c | sort | tee marco_x86_64.txt
arm-linux-androideabi-gcc 预定义宏(编译器版本4.8)
打印方法:
echo "" > test.carm-linux-gnueabihf-gcc -E -dM -c test.c | sort | tee marco_arm.txt