这两天想重新学习下ogre,但是在vs2010上编译1.6.5的版本上遇到链接失败的问题,耗了不少时间这里记一下。

主要是一些重定义报错。

>msvcprtd.lib(MSVCP100D.dll) : error LNK2005: "public: class std::basic_ostream<char,struct std::char_traits<char> > & __thiscall std::basic_ostream<char,struct std::char_traits<char> >::operator<<(float)" (??6?$basic_ostream@DU?$char_traits@D@std@@@std@@QAEAAV01@M@Z) 已经在 FreeImaged.lib(half.obj) 中定义。

失败环境:

OgreMain是debug版的dll动态库工程,runtime library选的是"多线程调试 DLL (/MDd)"。FreeImage选择的是对应的3.10.0。并且FreeImageLib工程的runtime library也是"多线程调试 DLL (/MDd)"。

按道理来说是不应该出现链接错误的,因为是lib工程和最终需要的dll工程的配置是一样的。

问题和解决方法:

FreeImageLib工程编译出的lib库有问题,不能只把FreeImageLib的runtime library设置为"多线程调试 DLL (/MDd)",需要把它依赖的所有FreeImage工程的Runtime Library都设置为"多线程调试 DLL (/MDd)"。

FreeImage工程如下:

runtime配置如下:

另外对应版本的ogre和freeimage源代码可以去sourceforge上搜索。

 

Ogre1.6.5 编译链接错误之FreeImage的更多相关文章

  1. 模板函数(template function)出现编译链接错误(link error)之解析

    总的结论:    将template function 或者 template class的完整定义直接放在.h文件中,然后加到要使用这些template function的.cpp文件中. 1. 现 ...

  2. C++常见gcc编译链接错误解决方法

    除非明确说明,本文内容仅针对x86/x86_64的Linux开发环境,有朋友说baidu不到,开个贴记录一下(加粗字体是关键词): 用“-Wl,-Bstatic”指定链接静态库,使用“-Wl,-Bdy ...

  3. 由于C++类库版本不同导致的OpenCV编译链接错误

    太长不看版:GCC4和GCC5使用的C++标准库下,string的名字不一样,导致链接错误. 之前在Ubuntu下使用OpenCV的时候一切正常.后来再次编译的时候,连接器提示有些库函数找不到: ma ...

  4. [问题记录]libpomelo工程调整编译链接错误

    1. 描述: 如下图所示,出现链接错误.那么链接问题一般也就两块设置: (1)包含路径Additional Library Directories (2)lib库的包含Additional Depen ...

  5. C++编译-链接错误集合

    1,无法解析的外部符号,链接错误,原因:没找到某个符号(变量或函数)的定义体,一般是对应函数没实现,或第三方库没有添加到工程设置中 2,重复链接链接错误,一个定义体(实现体)被多个CPPP文件包含,导 ...

  6. VS编译链接时错误(Error Link2005)的解决方法

    近期参与的项目中使用了公司另外一个同事提供的一个静态库文件.该静态库文件集成了CUDA, OpenCL两个库,用于做图形加速计算,提高视频解码拼接速度.但是在编译链接项目时,VS爆出如下错误: 1&g ...

  7. VS编程常见的编译和链接错误

    常见错误1: Error 2 error LNK1120: 1 unresolved externals Error 1 error LNK2019: unresolved external symb ...

  8. 编译Win32动态库工程的两个链接错误的解决

    作者:朱金灿 来源:http://blog.csdn.net/clever101 今天编译一个Win32动态库工程,出现两个链接错误的解决,一个是: main.obj: error LNK2001: ...

  9. 使用NDK r10构建Cocosd-x v3.2时编译和链接错误的解决办法

    如果你使用NDK r10构建Cocos2d-x v3.2,将会遇到所有测试用例编译错误以及Lua测试用例链接错误. 1. 编译错误 错误信息是: 1 2 3 4 5 6 7 8 /Users/ming ...

随机推荐

  1. 使用celery之深入celery配置(转)

    原文:http://www.dongwm.com/archives/shi-yong-celeryzhi-shen-ru-celerypei-zhi/ 前言 celery的官方文档其实相对还是写的很不 ...

  2. windows 无法分析或处理 pass 报错问题汇总

    日光月华 发表于 2015-2-9 22:02:42 https://www.itsk.com/thread-346404-1-1.html 系统封装失败遇到windows 无法分析或处理 pass ...

  3. ASP.NET MVC电子书下载

    欢迎点击图片下载电子书,进行深入的研究.                (  ,)      

  4. java的concurrent用法详解

    我们都知道,在JDK1.5之前,Java中要进行业务并发时,通常需要有程序员独立完成代码实现,当然也有一些开源的框架提供了这些功能,但是这些依然没有JDK自带的功能使用起来方便.而当针对高质量Java ...

  5. python编程技巧2

    模块化 ---- 这是我们程序员梦寐以求的,通过模块化可以避免重复的制造轮子. 同时 模块让你能够有逻辑地组织你的Python代码段. 把相关的代码分配到一个 模块里能让你的代码更好用,更易懂. 模块 ...

  6. [笔记]CSS样式声明顺序

    来自Bootstrap中文网编程规范 相关的属性声明应当归为一组,并按照下面的顺序排列: Positioning Box model Typographic Visual .declaration-o ...

  7. 20150514Linux下rpm包安装错误及解决方案

    (1)用rpm -ivh ***.rpm解压RedHat自带boost出现错误如下: warning: /media/RHEL_6.3 i386 Disc 1/Packages/boost-1.41. ...

  8. 《转》简述c语言的优缺点

    C语言是1972年由美国的Dennis Ritchie设计发明的,到1978年由美国电话电报公司(AT&T)贝尔实验室正式发表了C语言.再到1970到80年代,C语言被广泛应用.这短短的几十年 ...

  9. to my friends-Don't give up so fast

    早上听到大学挺要好的朋友突然说要换行,心情就一股莫名的哀伤,因为当初是三个人一起约定好的,要朝着我们共同的目标而努力奋斗的,这股热情怎能这么轻易地被现实的冷水浇灭.没错,我们是刚出社会的毛头小子,我们 ...

  10. php常用加密算法

    php加密函数: 不可逆的加密函数为:md5().crypt() md5() 用来计算 MD5 哈稀.语法为:string md5(string str); crypt() 将字符串用 UNIX 的标 ...