从 32 位计算机切换到 64 位计算机后出现 GCC 错误

  • 本文关键字:计算机 GCC 错误 gcc
  • 更新时间 :
  • 英文 :


我有在 32 位 Fedora 17 机器上编译和运行的功能代码。最近我们不得不将主机切换到 64 位 Centos 机器,我在编译代码时遇到了新的困难。当我键入"make"时,我收到以下错误消息:

xdatalog> sudo make
gcc -o xdatalog -march=i686 -ffast-math -O3  -I /FedoraBackup/opt/uhd/host/include  xprocess_data.o xdatalog.o pentek_setup.o xget_input.o create_datafile.o xheader.o xtimepos.o xpol_ctrl.o xdechirp.o  attitude.o -lfftw3f_threads -lfftw3f -lm -lpthread -luhd
xprocess_data.o: could not read symbols: File in wrong format
collect2: ld returned 1 exit status

我是编码新手,所以任何帮助将不胜感激!

在我看来,您只是留下了一些旧的 32 位对象文件,这些文件显然无法链接到 64 位二进制文件中。在这种特殊情况下,文件xprocess_data.o

尝试删除所有旧对象文件并从头开始重新编译(我不知道您的构建过程,但如果不是很自定义,make clean通常应该这样做。

最新更新