g++错误ELF类错误
G++ wrong ELF CLASS Error
我试图在Fedora 15x64上编译一个c++程序。并得到错误:
./game: /lib/ld-linux.so.2: bad ELF interpreter: No such file or directory.
我读到所有我需要做的是安装glibc.i686
我安装了它,现在即使在g++
中使用"-m64"选项后也会出现另一个错误error while loading shared libraries: libplayer_1.so: wrong ELF class: ELFCLASS64
我的makefile是这样的:
CONC_INC = ./include
-I../include
APP = ./src/player_1.cxx
All :
g++ -m64 -Wall -g -fPIC -I$(CONC_INC) -c $(APP)
g++ -m64 -shared -W1 -o libplayer1.so.1.0 *.o
cp libplayer1.so.1.0 ../lib/libplayer_1.so.1.0
ln -sf ../lib/libplayer_1.so.1.0 ../lib/libplayer_1.so
ln -sf ../lib/libplayer_1.so.1.0 ../lib/libplayer_1.so.1
clean:
rm -f *.so.* *.o
您的原始问题表明./game
是一个32位动态链接的可执行文件,由于未安装32位动态链接器(/lib/ld-linux.so.2
)而无法运行;安装32位glibc
包修复。
如果./game
是一个32位的可执行文件,需要libplayer_1.so
作为动态库,如果libplayer_1.so
是64位的,它将无法工作,这就是新的错误告诉你的。
尝试将库构建为32位(-m32
而不是-m64
)。
相关文章:
- 警告处理为错误这里有什么问题
- "error: no matching function for call to"构造函数错误
- boost::进程间消息队列引发错误
- C++,OpenCV,尝试显示图像时"OpenCV(4.3.0) Error: Assertion failed (size.width>0 && size.height>0)"此错误
- 有关插入适配器的错误。[错误]请求从 'back_insert_iterator<vector<>>' 类型转换为非标量类型
- QT在错误的班级中寻找空位
- vector.resize()中的分配错误
- 代码在main()中运行,但在函数中出现错误
- 释放错误后堆使用
- (C++)分析树以计算返回错误值的简单算术表达式
- Project Euler问题4的错误解决方案
- 我的字符计数代码计算错误.为什么
- 从"int*"强制转换为"unsigned int"会丢失精度错误
- 尝试导入pybind-opencv模块时出现libgtk错误
- 使用程序集嵌入数据时"Undefined reference"错误,使用适用于窗口的 mingw-w64 编译(COFF 而不是 ELF)
- 节点外派错误的ELF类:ELFCLASS64
- GCC 错误错误的 ELF 类:ELFCLASS64,尽管有 -m64 标志
- 用于Arduino IDE的ESP8266(extenssa-lx106-elf-gcc)和std::映射链接错误
- 从Windows交叉编译的GNU ARM(BeagleBoneBlack)。*.elf 上的运行时错误:"No such file or directory"
- g++错误ELF类错误