gpt4 book ai didi

compiler-errors - 在64位Linux上编译32位libGLEW.so

转载 作者:行者123 更新时间:2023-12-02 10:42:16 24 4
gpt4 key购买 nike

我正在尝试构建32位libGLEW.so。我正在64位linux上。我试图将-m32添加到Makefile的CFLAGS中。

cc -DGLEW_NO_GLU -O2 -Wall -W -Iinclude  -m32 -fPIC  -o tmp/linux/default/shared/glew.o -c src/glew.c
cc -shared -Wl,-soname=libGLEW.so.1.9 -o lib/libGLEW.so.1.9.0 tmp/linux/default/shared/glew.o -L/usr/X11R6/lib64 -L/usr/lib64 -lXmu -lXi -lGL -lXext -lX11
/usr/bin/ld: i386 architecture of input file `tmp/linux/default/shared/glew.o' is incompatible with i386:x86-64 output
/usr/bin/ld: tmp/linux/default/shared/glew.o: file class ELFCLASS32 incompatible with ELFCLASS64
/usr/bin/ld: final link failed: File in wrong format
collect2: error: ld returned 1 exit status
make: *** [lib/libGLEW.so.1.9.0] Error 1

我不确定是什么意思?似乎它正在构建32位.o文件,但尝试将其链接为64位目标?我如何解决此问题。我已经看到它添加了-L/usr/X11R6/lib64和-L/usr/lib64,但是我也尝试过运行make SYSTEM = gnu来广告/usr/X11R6/lib和/usr/lib文件夹,但是它给了我同样的错误。

最佳答案

好的,所以我需要下面列出的软件包。我在Makefile的CFLAGS和LDFLAGS中都添加了-m32,只是为了确保在环境中将-m32设置为CFLAGS,CXXFLAGS和LDFLAGS,然后才运行make。

libx11-dev:i386
libxext-dev:i386
libxmu-dev:i386
libxi-dev:i386
libgl1-mesa-dev:i386

export CFLAGS='-m32'
export CXXFLAGS='-m32'
export LDFLAGS='-m32'
make

关于compiler-errors - 在64位Linux上编译32位libGLEW.so,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/15062238/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com