查看: 2427|回复: 14

请问少编译了一个插件该怎么补救啊?

[复制链接]

该用户从未签到

发表于 2010-3-12 10:20:41 | 显示全部楼层 |阅读模式
我是写范例程序的时候发现不能显示中文,搜索了一下估计是少了freetype这个插件。

然后我在D:\OSG\OpenSceneGraph-2.8.2\bin\osgplugins-2.8.2这个路径里找了下发现没有名字里带freetype的文件。。。

但是D:\OSG\OpenSceneGraph-2.8.2\src\osgPlugins这个路径里有个freetype文件夹,里面有一个cmakelists.txt ,还有几个.cpp 和 .h的文件。。。

请问怎样单独编译一下这个插件,不需要所有东西都重新编译吧?

该用户从未签到

发表于 2010-3-12 10:46:33 | 显示全部楼层
不需要全编译,只要单独编译该项目文件就可以了

该用户从未签到

 楼主| 发表于 2010-3-12 10:57:27 | 显示全部楼层
但是那个大工程里面没有这个项目啊。。。
什么plugins bmp,plugins png都有,就是没有plugins freetype。。。。

我新建一个工程把那几个文件添加进去也不行,有错误【无法打开包括文件:“ft2build.h”】

该用户从未签到

发表于 2010-3-12 12:14:10 | 显示全部楼层
你找个全的安装包啊~~

该用户从未签到

发表于 2010-3-12 12:32:21 | 显示全部楼层
如果是自己编译OSG源代码的话,请保留每次编译的中间文件(.obj等),这样即使用cmake重新配置了选项,也不会重新编译整个工程,而仅仅是对有变化的部分进行改动而已。此外注意osgdb_freetype库需要第三方工程freetype2的支持,无法打开ft2build.h就是因为没有找到freetype2的原因

该用户从未签到

 楼主| 发表于 2010-3-13 19:04:45 | 显示全部楼层
嗯,谢谢,我是自己编译的,不是下的安装包。 我又重新用cmake配置了一下:

之前FREETYPE_LIBRARY 和FREETYPE_LIBRARY_DEBUG后面是什么什么not found
我手动添加了这么个路径,不知道对没有。。。

再打开那个大工程就有Plugins freetype这一项了,然后用批生成,又出现这样一个错误:

FreeTypeFont3D.obj : error LNK2019: 无法解析的外部符号 _FT_Outline_Get_BBox,该符号在函数 "protected: void __thiscall FreeTypeFont3D::init(void)" ([email=?init@FreeTypeFont3D@@IAEXXZ]?init@FreeTypeFont3D@@IAEXXZ[/email]) 中被引用
D:\OSG\OpenSceneGraph-2.8.2\bin\Release\..\osgPlugins-2.8.2\osgdb_freetype.dll : fatal error LNK1120: 1 个无法解析的外部命令

请问又该怎么办呢?谢谢

该用户从未签到

发表于 2010-3-14 02:13:42 | 显示全部楼层
你用的FreeType版本很低吧,,,3D字体需要你使用2.35以上的版本~~~~~~~

该用户从未签到

 楼主| 发表于 2010-3-15 08:40:39 | 显示全部楼层
这样啊,那重新下载一个再编译就可以了是吧?
qq中转站里的那个版本够么?

该用户从未签到

 楼主| 发表于 2010-3-15 10:49:21 | 显示全部楼层
我下了qq中转站里的那个3rdparty,准备重新编译一下。

然后用cmake配置的时候是这样:
1.jpg

最后两项我手动添加了:
2.jpg

还有两个notfound不知道怎么设置,好像是像array兄说的“需要第三方工程freetype2的支持,无法打开ft2build.h就是因为没有找到freetype2的原因”。。。

这个freetype2找不到怎么办?需要单独下载吗?

该用户从未签到

 楼主| 发表于 2010-3-15 11:07:58 | 显示全部楼层
还有我在http://www.freetype.org/下载了一个freetype2.3.12
但是里面没有lib文件。。。不知道该怎么用……

该用户从未签到

发表于 2010-3-15 12:27:53 | 显示全部楼层
网址没问题,下载了FreeType2的源代码之后,当然是首先编译得到它的库了。FreeType自己带了VS的工程文件,编译起来已经不能再简单了

该用户从未签到

 楼主| 发表于 2010-3-15 15:35:35 | 显示全部楼层
谢谢,“首先编译得到它的库”这步完成了。。。
然后我把freetype219.lib 换成了freetype2312.lib
freetype219_D.lib 换成了freetype2312_D.lib

FREETYPE_INCLUDE_DIR_freetype2
FREETYPE_INCLUDE_DIR_ft2build
这两项应该怎么设置呢?

该用户从未签到

 楼主| 发表于 2010-3-15 15:35:48 | 显示全部楼层
谢谢,“首先编译得到它的库”这步完成了。。。
然后我把freetype219.lib 换成了freetype2312.lib
freetype219_D.lib 换成了freetype2312_D.lib

FREETYPE_INCLUDE_DIR_freetype2
FREETYPE_INCLUDE_DIR_ft2build
这两项应该怎么设置呢?

该用户从未签到

发表于 2010-3-15 17:01:35 | 显示全部楼层
设置路径都是ft2build.h那个文件所在的文件夹

该用户从未签到

 楼主| 发表于 2010-3-15 21:13:24 | 显示全部楼层
成功了~~

谢谢array!
您需要登录后才可以回帖 登录 | 注册

本版积分规则

OSG中国官方论坛-有您OSG在中国才更好

网站简介:osgChina是国内首个三维相关技术开源社区,旨在为国内更多的技术开发人员提供最前沿的技术资讯,为更多的三维从业者提供一个学习、交流的技术平台。

联系我们

  • 工作时间:09:00--18:00
  • 反馈邮箱:1315785073@qq.com
快速回复 返回顶部 返回列表