gpt4 book ai didi

c++ - g++ 找到 -lXext 但 MinGW 找不到它,错误为 : i586-mingw32msvc/bin/ld: cannot find -lXext

转载 作者:太空宇宙 更新时间:2023-11-04 10:40:46 30 4
gpt4 key购买 nike

我可以像下面这样用 g++ 构建一个 Linux 可执行文件,没有任何问题:

g++ -I/usr/local/include -I/usr/local/include/FL/images -I/usr/include/freetype2 -D_LARGEFILE_SOURCE -D_LARGEFILE64_SOURCE -D_FILE_OFFSET_BITS=64 -D_THREAD_SAFE -D_REENTRANT -o '2016_02_06a_1st_Window' '2016_02_06a_1st_Window.cxx' /usr/local/lib/libfltk.a -lXext -lXft -lfontconfig -lpthread -ldl -lm -lX11

但是当我尝试使用如下所示的 MinGW 构建 MS Windows 可执行文件时,发生了错误:

i586-mingw32msvc-g++ -I/usr/local/include -I/usr/local/include/FL/images -I/usr/include/freetype2 -D_LARGEFILE_SOURCE -D_LARGEFILE64_SOURCE -D_FILE_OFFSET_BITS=64 -D_THREAD_SAFE -D_REENTRANT 2016_02_06a_1st_Window.cxx -L/usr/local/lib -lfltk -lXext -lXft -lfontconfig -lpthread -ldl -lm -lX11 -o 2016_02_06a_1st_Window.exe

MinGW的报错是:

Compiling and linking..
/usr/lib/gcc/i586-mingw32msvc/4.2.1-sjlj/../../../../i586-mingw32msvc/bin/ld: cannot find -lXext
collect2: ld returned 1 exit status

我已经安装了各种像这样的 Xext 库:


enter image description here

enter image description here


我的机器上有以下 Xext 库:

user@computer:~$ locate *Xext*
/usr/include/X11/extensions/Xext.h
/usr/lib/i386-linux-gnu/libXext.a
/usr/lib/i386-linux-gnu/libXext.so
/usr/lib/i386-linux-gnu/libXext.so.6
/usr/lib/i386-linux-gnu/libXext.so.6.4.0

我觉得 g++ 知道 Xext 库在哪里,但 MinGW 不知道。任何想法都会有所帮助。

最佳答案

你正在运行一个交叉编译器,主机是 linux,目标是 windows,所以当你链接你的目标二进制文件时,你应该有目标库。在你的情况下,你应该有 libX for windows,而你列出的是 linux 库,这就是你的交叉编译器找不到要链接的库的原因。

关于c++ - g++ 找到 -lXext 但 MinGW 找不到它,错误为 : i586-mingw32msvc/bin/ld: cannot find -lXext,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/35295879/

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