QQ登录

只需一步,快速开始

 找回密码
 注册

QQ登录

只需一步,快速开始

查看: 2387|回复: 0

[分享]Fedora 7 x86_64下解决安装wine时opengl32的编译问题

[复制链接]
发表于 2007-10-7 14:38:40 | 显示全部楼层 |阅读模式
在Fedora 7 x86_64下安装wine-0.9.46,当编译opengl32时出错,如下所示:

wgl.o: In function `wglUseFontOutlines_common':
/home/wg/wine-0.9.46/dlls/opengl32/wgl.c:389: undefined reference to `gluNewTess'
/home/wg/wine-0.9.46/dlls/opengl32/wgl.c:392: undefined reference to `gluTessCallback'
/home/wg/wine-0.9.46/dlls/opengl32/wgl.c:393: undefined reference to `gluTessCallback'
/home/wg/wine-0.9.46/dlls/opengl32/wgl.c:394: undefined reference to `gluTessCallback'
/home/wg/wine-0.9.46/dlls/opengl32/wgl.c:498: undefined reference to `gluTessEndContour'
/home/wg/wine-0.9.46/dlls/opengl32/wgl.c:510: undefined reference to `gluTessEndPolygon'
/home/wg/wine-0.9.46/dlls/opengl32/wgl.c:452: undefined reference to `gluTessBeginPolygon'
/home/wg/wine-0.9.46/dlls/opengl32/wgl.c:459: undefined reference to `gluTessBeginContour'
/home/wg/wine-0.9.46/dlls/opengl32/wgl.c:462: undefined reference to `gluTessVertex'
/home/wg/wine-0.9.46/dlls/opengl32/wgl.c:476: undefined reference to `gluTessVertex'
/home/wg/wine-0.9.46/dlls/opengl32/wgl.c:505: undefined reference to `gluTessEndContour'
/home/wg/wine-0.9.46/dlls/opengl32/wgl.c:520: undefined reference to `gluDeleteTess'
/home/wg/wine-0.9.46/dlls/opengl32/wgl.c:489: undefined reference to `gluTessVertex'
/home/wg/wine-0.9.46/dlls/opengl32/wgl.c:492: undefined reference to `gluTessVertex'
collect2: ld 返回 1
winegcc: gcc failed.
make[2]: *** [opengl32.dll.so] 错误 2
make[2]: Leaving directory `/tmp/wine-0.9.46/dlls/opengl32'
make[1]: *** [opengl32] 错误 2
make[1]: Leaving directory `/tmp/wine-0.9.46/dlls'
make: *** [dlls] 错误 2


在网上找了很多资料,终于找到一篇外国的相关的资料,如下所示:
以下将引用原文内容:
Compile issue with current git under Fedora7
Arthur Coombes arthur at softlyspoken.org.uk
Sat Jul 21 08:17:20 CDT 2007

     * Previous message: Comments on winefontcfg tool?
     * Next message: wine's argv[0] and current directory
     * Messages sorted by: [ date ] [ thread ] [ subject ] [ author ]

When building from git on a fully patched Fedora 7 install my compile
stops building opengl32.dll.so complaining of lots of undefined
reference's to glu strings. Adding -lglu32 to the compile command
manually allows the file to compile and I can complete the install. It
then seems to work fine (I only really run Steam/CS:S regularly).

I'm not too good with code but I'd guess a configure issue. I've
included files you might find relevant

Arthur Coombes

"Theology is never any help; it is searching in a dark cellar at
midnight for a black cat that isn't there."
Robert A. Heinlein.
-------------- next part --------------
A non-text attachment was scrubbed...
Name: config.log.bz2
Type: application/x-bzip
Size: 29752 bytes
Desc: not available
Url : http://www.winehq.org/pipermail/ ... config.log-0001.bin
-------------- next part --------------
A non-text attachment was scrubbed...
Name: config.status.bz2
Type: application/x-bzip
Size: 14890 bytes
Desc: not available
Url : http://www.winehq.org/pipermail/ ... fig.status-0001.bin

     * Previous message: Comments on winefontcfg tool?
     * Next message: wine's argv[0] and current directory
     * Messages sorted by: [ date ] [ thread ] [ subject ] [ author ]

More information about the wine-devel mailing list


后来发现正如前文所言,只要添加“-l glu32”就可以使opengl32编译通过。
具体做法是:(再说明一下,我的系统是Fedora 7 x86_64)
     先把wine-0.9.46.tar.bz2解压到某个目录,然后进入该目录,再运行以下命令:
./configure
make depend
     然后进入到wine-0.9.46/dlls/opengl32,打开Makefile文件,修改第9行为以下内容:
EXTRALIBS =  -L/usr/lib64  -lSM -lICE -lXxf86vm -lXext -lX11  -lGL -l glu32
其实就是添加“-l glu32”,记得保存。
     接着返回到wine-0.9.46目录下,执行以下命令:
make
make install

     我现在还在编译,等安装好了再看看运行效果。对于这个问题,好像在Fedora 7 i386版本里没有出现,可能是在32位系统下glu32是默认的参数,而64位的系统就不是不是这个参数,或者没有这个参数。
    希望这篇文章能够帮助大家。

[ 本帖最后由 祭师α 于 2007-10-11 12:41 编辑 ]
您需要登录后才可以回帖 登录 | 注册

本版积分规则

GMT+8, 2024-11-2 00:38 , Processed in 0.036151 second(s), 16 queries .

© 2021 Powered by Discuz! X3.5.

快速回复 返回顶部 返回列表