【问题标题】:Error: File format not recognized错误:文件格式无法识别
【发布时间】:2015-11-24 17:50:42
【问题描述】:

我正在使用运行 Ubuntu MATE 15.10 的 Raspberry Pi 2 来处理项目。 我正在尝试运行 makefile 并收到此错误

/home/dpanagou/Quadrotors/Vicon/libs/libViconDataStreamSDK_CPP.so: file not recognized: File format not recognized
collect2: error: ld returned 1 exit status
Makefile:8: recipe for target '../bin/Vicon_state' failed
make[1]: *** [../bin/Vicon_state] Error 1
make[1]: Leaving directory '/home/dpanagou/Quadrotors/HLP/Vicon'
Makefile:40: recipe for target 'Vicon' failed
make: *** [Vicon] Error 2

make 之前,我也尝试过make clean。 根据研究,很多人认为目标文件可能已损坏。所以我从开发人员那里下载了新文件并再次运行了makefile。我仍然得到同样的错误。

这是我的生成文件:

CUR_DIR = $(shell pwd)
CFLAGS = `pkg-config --cflags lcm`
LDFLAGS = `pkg-config --libs lcm` ../src/filter_util.o ../src/util.o

vicon_lib = $(CUR_DIR:%/HLP/Vicon=%/Vicon/libs)

../bin/Vicon_state:
g++ $(CFLAGS) Vicon_state_data.cpp -o ../bin/Vicon_state -Wl,-  rpath=../../Vicon/libs -L$(vicon_lib) -lViconDataStreamSDK_CPP -lDebugServices $(LDFLAGS)

由于我对 Linux 和编程非常陌生,请提供具体说明。

【问题讨论】:

  • 请不要提供您的错误图片,但请将其发布在您的问题中
  • 感谢您的建议。我已经编辑了问题。

标签: hyperlink linker makefile g++ raspberry-pi2


【解决方案1】:

使用“file”命令检查文件的格式,并将其与rpi 附带的任何.so 的格式进行比较。

我不能 100% 确定,但该库是否适用于 raspbian,其 v6 兼容 HF 与 debian 中的通用 V7-only HF?

【讨论】:

  • 这是我使用file 命令检查时返回的内容:libViconDataStreamSDK_CPP.so: ELF 64-bit LSB shared object, x86-64, version 1 (SYSV), dynamically linked, BuildID[sha1]=38d8dcc120ec023fb3cd074d221dd551d6b311ef, not stripped
  • 我检查了 rpi 附带的另一个 .so 文件,这是它返回的内容:/usr/lib/libreoffice/program/libloglo.so: ELF 32-bit LSB shared object, ARM, EABI5 version 1 (GNU/Linux), dynamically linked, BuildID[sha1]=ca546a655f47df2efc97742f492f968c9cb5e9ed, stripped
  • livicondatastreamsdk* 是一个 x86_64 库,适用于 Intel PC,不适用于 ARM RPI。这永远不会以这种方式工作。
  • 您能否详细说明此答案或指向我可以阅读更多有关此内容的网站?我是软件开发新手。
  • 您可以在维基百科上查找架构(软件)等。可以说,库是针对特定处理器的,您不能简单地复制它们以在其他 CPU 上使用。您需要为您的系统重新编译库。
猜你喜欢
  • 2021-01-13
  • 2016-02-14
  • 1970-01-01
  • 2016-05-25
  • 1970-01-01
  • 2018-02-15
  • 1970-01-01
  • 1970-01-01
  • 2013-06-12
相关资源
最近更新 更多