gcc-linaro-5.3.1-2016.05-x86_64_arm-linux-gnueabihf是多少位编译器
时间: 2023-08-02 18:11:04 浏览: 199
gcc-linaro-5.3.1-2016.05-x86_64_arm-linux-gnueabihf 是一个用于 ARM 架构的交叉编译器。从名称来看,它是针对 x86_64 主机平台的,用于生成针对 arm-linux-gnueabihf 目标平台的可执行文件。根据命名约定,这个编译器是使用 64 位操作系统上的 x86_64 架构构建的,因此是一个 64 位编译器。
相关问题
/usr/bin/gcc-linaro-5.3-2016.02-x86_64_arm-linux-gnueabihf/bin/../lib/gcc/arm-linux-gnueabihf/5.3.1/../../../../arm-linux-gnueabihf/bin/ld: buffer_frame.o: relocation R_ARM_THM_MOVW_ABS_NC against `a local symbol' can not be used when making a shared object; recompile with -fPIC buffer_frame.o: error adding symbols: 错误的值 collect2: error: ld returned 1 exit status
这个错误是由于在编译时缺少 -fPIC 选项导致的。-fPIC 选项是编译动态链接库时必须加上的选项之一。在重新编译时,你需要使用以下命令:
```
gcc -fPIC -c buffer_frame.c -o buffer_frame.o
gcc -shared buffer_frame.o -o libbuffer_frame.so
```
这将在编译时添加 -fPIC 选项,并生成一个名为 libbuffer_frame.so 的动态链接库。
ar x libxxx.a gcc -shared -o libxxx.so *.o报错/usr/bin/gcc-linaro-5.3-2016.02-x86_64_arm-linux-gnueabihf/bin/../lib/gcc/arm-linux-gnueabihf/5.3.1/../../../../arm-linux-gnueabihf/bin/ld: buffer_frame.o: relocation R_ARM_THM_MOVW_ABS_NC against `a local symbol' can not be used when making a shared object; recompile with -fPIC buffer_frame.o: error adding symbols: 错误的值 collect2: error: ld returned 1 exit status
这个错误是由于在编译时缺少 -fPIC 选项导致的。-fPIC 选项是编译动态链接库时必须加上的选项之一。在重新编译时,你需要使用以下命令:
```
gcc -fPIC -c *.c
ar rcs libxxx.a *.o
gcc -shared -o libxxx.so *.o
```
这将在编译时添加 -fPIC 选项,并生成静态链接库和动态链接库。
阅读全文