游戏开发论坛

 找回密码
 立即注册
搜索
查看: 8488|回复: 3

OGRE编译问题【FreeImage无法解析的外部符号】

[复制链接]

21

主题

124

帖子

176

积分

注册会员

Rank: 2

积分
176
发表于 2008-1-15 00:44:00 | 显示全部楼层 |阅读模式
编译OGRE 的时候遇到下面的问题,不知怎么处理。请大家帮忙看看。
另:我的FreeImage库路径也是设置对了的。

以下是错误提示:

正在链接...
   正在创建库 ..\..\lib/OgreMain_d.lib 和对象 ..\..\lib/OgreMain_d.exp
LINK : warning LNK4098: 默认库“MSVCRTD”与其他库的使用冲突;使用 /NODEFAULTLIB:library
OgreFreeImageCodec.obj : error LNK2019: 无法解析的外部符号 _FreeImage_GetFormatFromFIF ,该符号在函数 "void __cdecl Ogre::FreeImageErrorHandler(enum FREE_IMAGE_FORMAT,char const *)" (?FreeImageErrorHandler@Ogre@@YAXW4FREE_IMAGE_FORMAT@@PBD@Z) 中被引用
OgreFreeImageCodec.obj : error LNK2019: 无法解析的外部符号 _FreeImage_SetOutputMessage ,该符号在函数 "public: static void __cdecl Ogre::FreeImageCodec::startup(void)" (?startup@FreeImageCodec@Ogre@@SAXXZ) 中被引用
OgreFreeImageCodec.obj : error LNK2019: 无法解析的外部符号 _FreeImage_GetFIFExtensionList ,该符号在函数 "public: static void __cdecl Ogre::FreeImageCodec::startup(void)" (?startup@FreeImageCodec@Ogre@@SAXXZ) 中被引用
OgreFreeImageCodec.obj : error LNK2019: 无法解析的外部符号 _FreeImage_GetFIFCount ,该符号在函数 "public: static void __cdecl Ogre::FreeImageCodec::startup(void)" (?startup@FreeImageCodec@Ogre@@SAXXZ) 中被引用
OgreFreeImageCodec.obj : error LNK2019: 无法解析的外部符号 _FreeImage_GetCopyrightMessage ,该符号在函数 "public: static void __cdecl Ogre::FreeImageCodec::startup(void)" (?startup@FreeImageCodec@Ogre@@SAXXZ) 中被引用
OgreFreeImageCodec.obj : error LNK2019: 无法解析的外部符号 _FreeImage_GetVersion ,该符号在函数 "public: static void __cdecl Ogre::FreeImageCodec::startup(void)" (?startup@FreeImageCodec@Ogre@@SAXXZ) 中被引用
OgreFreeImageCodec.obj : error LNK2019: 无法解析的外部符号 _FreeImage_Initialise ,该符号在函数 "public: static void __cdecl Ogre::FreeImageCodec::startup(void)" (?startup@FreeImageCodec@Ogre@@SAXXZ) 中被引用
OgreFreeImageCodec.obj : error LNK2019: 无法解析的外部符号 _FreeImage_DeInitialise ,该符号在函数 "public: static void __cdecl Ogre::FreeImageCodec::shutdown(void)" (?shutdown@FreeImageCodec@Ogre@@SAXXZ) 中被引用
OgreFreeImageCodec.obj : error LNK2019: 无法解析的外部符号 _FreeImage_GetBits ,该符号在函数 "private: struct FIBITMAP * __thiscall Ogre::FreeImageCodec::encode(class Ogre::SharedPtr<class Ogre::MemoryDataStream> &,class Ogre::SharedPtr<class Ogre::Codec::CodecData> &)const " (?encode@FreeImageCodec@Ogre@@ABEPAUFIBITMAP@@AAV?$SharedPtr@VMemoryDataStream@Ogre@@@2@AAV?$SharedPtr@VCodecData@Codec@Ogre@@@2@@Z) 中被引用
OgreFreeImageCodec.obj : error LNK2019: 无法解析的外部符号 _FreeImage_GetPitch ,该符号在函数 "private: struct FIBITMAP * __thiscall Ogre::FreeImageCodec::encode(class Ogre::SharedPtr<class Ogre::MemoryDataStream> &,class Ogre::SharedPtr<class Ogre::Codec::CodecData> &)const " (?encode@FreeImageCodec@Ogre@@ABEPAUFIBITMAP@@AAV?$SharedPtr@VMemoryDataStream@Ogre@@@2@AAV?$SharedPtr@VCodecData@Codec@Ogre@@@2@@Z) 中被引用
OgreFreeImageCodec.obj : error LNK2019: 无法解析的外部符号 _FreeImage_Unload ,该符号在函数 "private: struct FIBITMAP * __thiscall Ogre::FreeImageCodec::encode(class Ogre::SharedPtr<class Ogre::MemoryDataStream> &,class Ogre::SharedPtr<class Ogre::Codec::CodecData> &)const " (?encode@FreeImageCodec@Ogre@@ABEPAUFIBITMAP@@AAV?$SharedPtr@VMemoryDataStream@Ogre@@@2@AAV?$SharedPtr@VCodecData@Codec@Ogre@@@2@@Z) 中被引用
OgreFreeImageCodec.obj : error LNK2019: 无法解析的外部符号 _FreeImage_ConvertToGreyscale ,该符号在函数 "private: struct FIBITMAP * __thiscall Ogre::FreeImageCodec::encode(class Ogre::SharedPtr<class Ogre::MemoryDataStream> &,class Ogre::SharedPtr<class Ogre::Codec::CodecData> &)const " (?encode@FreeImageCodec@Ogre@@ABEPAUFIBITMAP@@AAV?$SharedPtr@VMemoryDataStream@Ogre@@@2@AAV?$SharedPtr@VCodecData@Codec@Ogre@@@2@@Z) 中被引用
OgreFreeImageCodec.obj : error LNK2019: 无法解析的外部符号 _FreeImage_AllocateT ,该符号在函数 "private: struct FIBITMAP * __thiscall Ogre::FreeImageCodec::encode(class Ogre::SharedPtr<class Ogre::MemoryDataStream> &,class Ogre::SharedPtr<class Ogre::Codec::CodecData> &)const " (?encode@FreeImageCodec@Ogre@@ABEPAUFIBITMAP@@AAV?$SharedPtr@VMemoryDataStream@Ogre@@@2@AAV?$SharedPtr@VCodecData@Codec@Ogre@@@2@@Z) 中被引用
OgreFreeImageCodec.obj : error LNK2019: 无法解析的外部符号 _FreeImage_CloseMemory ,该符号在函数 "public: virtual class Ogre::SharedPtr<class Ogre:ataStream> __thiscall Ogre::FreeImageCodec::code(class Ogre::SharedPtr<class Ogre::MemoryDataStream> &,class Ogre::SharedPtr<class Ogre::Codec::CodecData> &)const " (?code@FreeImageCodec@Ogre@@UBE?AV?$SharedPtr@VDataStream@Ogre@@@2@AAV?$SharedPtr@VMemoryDataStream@Ogre@@@2@AAV?$SharedPtr@VCodecData@Codec@Ogre@@@2@@Z) 中被引用
OgreFreeImageCodec.obj : error LNK2019: 无法解析的外部符号 _FreeImage_AcquireMemory ,该符号在函数 "public: virtual class Ogre::SharedPtr<class Ogre::DataStream> __thiscall Ogre::FreeImageCodec::code(class Ogre::SharedPtr<class Ogre::MemoryDataStream> &,class Ogre::SharedPtr<class Ogre::Codec::CodecData> &)const " (?code@FreeImageCodec@Ogre@@UBE?AV?$SharedPtr@VDataStream@Ogre@@@2@AAV?$SharedPtr@VMemoryDataStream@Ogre@@@2@AAV?$SharedPtr@VCodecData@Codec@Ogre@@@2@@Z) 中被引用
OgreFreeImageCodec.obj : error LNK2019: 无法解析的外部符号 _FreeImage_SaveToMemory ,该符号在函数 "public: virtual class Ogre::SharedPtr<class Ogre::DataStream> __thiscall Ogre::FreeImageCodec::code(class Ogre::SharedPtr<class Ogre::MemoryDataStream> &,class Ogre::SharedPtr<class Ogre::Codec::CodecData> &)const " (?code@FreeImageCodec@Ogre@@UBE?AV?$SharedPtr@VDataStream@Ogre@@@2@AAV?$SharedPtr@VMemoryDataStream@Ogre@@@2@AAV?$SharedPtr@VCodecData@Codec@Ogre@@@2@@Z) 中被引用
OgreFreeImageCodec.obj : error LNK2019: 无法解析的外部符号 _FreeImage_OpenMemory ,该符号在函数 "public: virtual class Ogre::SharedPtr<class Ogre::DataStream> __thiscall Ogre::FreeImageCodec::code(class Ogre::SharedPtr<class Ogre::MemoryDataStream> &,class Ogre::SharedPtr<class Ogre::Codec::CodecData> &)const " (?code@FreeImageCodec@Ogre@@UBE?AV?$SharedPtr@VDataStream@Ogre@@@2@AAV?$SharedPtr@VMemoryDataStream@Ogre@@@2@AAV?$SharedPtr@VCodecData@Codec@Ogre@@@2@@Z) 中被引用
OgreFreeImageCodec.obj : error LNK2019: 无法解析的外部符号 _FreeImage_Save ,该符号在函数 "public: virtual void __thiscall Ogre::FreeImageCodec::codeToFile(class Ogre::SharedPtr<class Ogre::MemoryDataStream> &,class std::basic_string<char,struct std::char_traits<char>,class std::allocator<char> > const &,class Ogre::SharedPtr<class Ogre::Codec::CodecData> &)const " (?codeToFile@FreeImageCodec@Ogre@@UBEXAAV?$SharedPtr@VMemoryDataStream@Ogre@@@2@ABV?$basic_string@DU?$char_traits@D@std@@V?$allocator@D@2@@std@@AAV?$SharedPtr@VCodecData@Codec@Ogre@@@2@@Z) 中被引用
OgreFreeImageCodec.obj : error LNK2019: 无法解析的外部符号 _FreeImage_GetGreenMask ,该符号在函数 "public: virtual struct std::pair<class Ogre::SharedPtr<class Ogre::MemoryDataStream>,class Ogre::SharedPtr<class Ogre::Codec::CodecData> > __thiscall Ogre::FreeImageCodec::decode(class Ogre::SharedPtr<class Ogre::DataStream> &)const " (?decode@FreeImageCodec@Ogre@@UBE?AU?$pair@V?$SharedPtr@VMemoryDataStream@Ogre@@@Ogre@@V?$SharedPtr@VCodecData@Codec@Ogre@@@2@@std@@AAV?$SharedPtr@VDataStream@Ogre@@@2@@Z) 中被引用
OgreFreeImageCodec.obj : error LNK2019: 无法解析的外部符号 _FreeImage_ConvertTo24Bits ,该符号在函数 "public: virtual struct std::pair<class Ogre::SharedPtr<class Ogre::MemoryDataStream>,class Ogre::SharedPtr<class Ogre::Codec::CodecData> > __thiscall Ogre::FreeImageCodec::decode(class Ogre::SharedPtr<class Ogre::DataStream> &)const " (?decode@FreeImageCodec@Ogre@@UBE?AU?$pair@V?$SharedPtr@VMemoryDataStream@Ogre@@@Ogre@@V?$SharedPtr@VCodecData@Codec@Ogre@@@2@@std@@AAV?$SharedPtr@VDataStream@Ogre@@@2@@Z) 中被引用
OgreFreeImageCodec.obj : error LNK2019: 无法解析的外部符号 _FreeImage_GetBPP ,该符号在函数 "public: virtual struct std::pair<class Ogre::SharedPtr<class Ogre::MemoryDataStream>,class Ogre::SharedPtr<class Ogre::Codec::CodecData> > __thiscall Ogre::FreeImageCodec::decode(class Ogre::SharedPtr<class Ogre::DataStream> &)const " (?decode@FreeImageCodec@Ogre@@UBE?AU?$pair@V?$SharedPtr@VMemoryDataStream@Ogre@@@Ogre@@V?$SharedPtr@VCodecData@Codec@Ogre@@@2@@std@@AAV?$SharedPtr@VDataStream@Ogre@@@2@@Z) 中被引用
OgreFreeImageCodec.obj : error LNK2019: 无法解析的外部符号 _FreeImage_GetColorType ,该符号在函数 "public: virtual struct std::pair<class Ogre::SharedPtr<class Ogre::MemoryDataStream>,class Ogre::SharedPtr<class Ogre::Codec::CodecData> > __thiscall Ogre::FreeImageCodec::decode(class Ogre::SharedPtr<class Ogre::DataStream> &)const " (?decode@FreeImageCodec@Ogre@@UBE?AU?$pair@V?$SharedPtr@VMemoryDataStream@Ogre@@@Ogre@@V?$SharedPtr@VCodecData@Codec@Ogre@@@2@@std@@AAV?$SharedPtr@VDataStream@Ogre@@@2@@Z) 中被引用
OgreFreeImageCodec.obj : error LNK2019: 无法解析的外部符号 _FreeImage_GetImageType ,该符号在函数 "public: virtual struct std::pair<class Ogre::SharedPtr<class Ogre::MemoryDataStream>,class Ogre::SharedPtr<class Ogre::Codec::CodecData> > __thiscall Ogre::FreeImageCodec::decode(class Ogre::SharedPtr<class Ogre::DataStream> &)const " (?decode@FreeImageCodec@Ogre@@UBE?AU?$pair@V?$SharedPtr@VMemoryDataStream@Ogre@@@Ogre@@V?$SharedPtr@VCodecData@Codec@Ogre@@@2@@std@@AAV?$SharedPtr@VDataStream@Ogre@@@2@@Z) 中被引用
OgreFreeImageCodec.obj : error LNK2019: 无法解析的外部符号 _FreeImage_GetHeight ,该符号在函数 "public: virtual struct std::pair<class Ogre::SharedPtr<class Ogre::MemoryDataStream>,class Ogre::SharedPtr<class Ogre::Codec::CodecData> > __thiscall Ogre::FreeImageCodec::decode(class Ogre::SharedPtr<class Ogre::DataStream> &)const " (?decode@FreeImageCodec@Ogre@@UBE?AU?$pair@V?$SharedPtr@VMemoryDataStream@Ogre@@@Ogre@@V?$SharedPtr@VCodecData@Codec@Ogre@@@2@@std@@AAV?$SharedPtr@VDataStream@Ogre@@@2@@Z) 中被引用
OgreFreeImageCodec.obj : error LNK2019: 无法解析的外部符号 _FreeImage_GetWidth ,该符号在函数 "public: virtual struct std::pair<class Ogre::SharedPtr<class Ogre::MemoryDataStream>,class Ogre::SharedPtr<class Ogre::Codec::CodecData> > __thiscall Ogre::FreeImageCodec::decode(class Ogre::SharedPtr<class Ogre::DataStream> &)const " (?decode@FreeImageCodec@Ogre@@UBE?AU?$pair@V?$SharedPtr@VMemoryDataStream@Ogre@@@Ogre@@V?$SharedPtr@VCodecData@Codec@Ogre@@@2@@std@@AAV?$SharedPtr@VDataStream@Ogre@@@2@@Z) 中被引用
OgreFreeImageCodec.obj : error LNK2019: 无法解析的外部符号 _FreeImage_LoadFromMemory ,该符号在函数 "public: virtual struct std::pair<class Ogre::SharedPtr<class Ogre::MemoryDataStream>,class Ogre::SharedPtr<class Ogre::Codec::CodecData> > __thiscall Ogre::FreeImageCodec::decode(class Ogre::SharedPtr<class Ogre::DataStream> &)const " (?decode@FreeImageCodec@Ogre@@UBE?AU?$pair@V?$SharedPtr@VMemoryDataStream@Ogre@@@Ogre@@V?$SharedPtr@VCodecData@Codec@Ogre@@@2@@std@@AAV?$SharedPtr@VDataStream@Ogre@@@2@@Z) 中被引用

14

主题

345

帖子

376

积分

中级会员

Rank: 3Rank: 3

积分
376
QQ
发表于 2008-1-15 19:46:00 | 显示全部楼层

Re:OGRE编译问题【FreeImage无法解析的外部符号】

需要下载dependens

21

主题

124

帖子

176

积分

注册会员

Rank: 2

积分
176
 楼主| 发表于 2008-1-16 00:11:00 | 显示全部楼层

Re: OGRE编译问题【FreeImage无法解析的外部符号】

楼上的朋友说的是附加依赖项吗?
但是我下载了的.........
不只问题出在哪里???

我的附加依赖项:
sf_200811601054.jpg

0

主题

8

帖子

10

积分

新手上路

Rank: 1

积分
10
发表于 2010-5-21 01:12:00 | 显示全部楼层

Re:OGRE编译问题【FreeImage无法解析的外部符号】

https://www.ogre3d.org/forums/viewtopic.php?f=2&t=55496&p=390527#p390527
修改FreeImage/Makefile.mingw,看看给DLLTOOLFLAGS加"-A"能否解决问题:
DLLTOOLFLAGS = --add-stdcall-underscore -A
您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

作品发布|文章投稿|广告合作|关于本站|游戏开发论坛 ( 闽ICP备17032699号-3 )

GMT+8, 2025-6-9 13:29

Powered by Discuz! X3.4

Copyright © 2001-2021, Tencent Cloud.

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