|
VC6对于STL支持不好,VS2003太大(更不说VS2005、2008了)。MINGW下编译OSG可以对上述两者进行折衷,而且MINGW(我用DEVCPP)可以做成绿色的,很方便,也很小。
经过很长的一段时间的折腾,终于搞定,拿出来与有此想法但还在苦苦挣扎的人分享。
其实与VC编译OSG差不多,有一些要注意的地方而已。
首先下载安装devcpp,这个网上不难找到,我的版本是4.9.9.2(做成了绿色的了)
下载3rdParty_Win32binaries_2005_05_10.zip(而且要到http://www.osgchina.org/projects ... cn/Dependencies.php下载各个压缩包,并得到相应的dll文件,如freetype6.dll、jpeg62.dllzlib1.dll等)
下载cmake-2.4.7-win32-x86.zip
下载OpenSceneGraph-2.3.7.zip
下载pexports(http://www.emmestech.com/softwar ... nload_pexports.html)
通过如下命令得到各个dll的相对应的.a文件(g++所用到的库文件格式)
如:
pexports zlib1.dll > zlib1.def
dlltool -k -d zlib1.def -l libzlib1.a
(注意,文件名一定要是lib*.a)
解压3rdParty,将上面的dll文件及对应的.a文件copy到子目录lib下。
运行cmake进行配置(选MINGW),显示高级配置选项,各个LIBRARY选项后面修改为对应的 .a文件(原来是相应的.lib文件)。(最好选择编译Example,并且不编译MFC_Example)
配置好后,运行命令提示符,进入相应的目录下(就是配置的目标目录),键入命令make就可以了(然后是比较漫长的等待)。
我的对于2.0和2.2版本都正常通过,对于2.3.7只有最后viewGLUT没有通过,不影响啦。
祝大家好运。
(参见第2贴及第5贴补全如下:
对于glut32.dll对应的.a文件通过如下的方法生成:
将3rdParty中的glut32.lib通过如下命令生成相应的.a文件
reimp -d glut32.lib glut32.def
dlltool -k -d glut32.def -l libglut32.a
用生成的libglut32.a可以解决osgviewerGLUT.exe不能生成的问题。
)
同时将dll及相应的.a文件作为附件送上,省的大家麻烦了。
[ 本帖最后由 wontor 于 2008-4-13 16:00 编辑 ] |
-
-
lib.rar
1.61 MB, 下载次数: 248, 下载积分: 威望 1
|