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

1. 

描述:

  如下图所示,出现链接错误。那么链接问题一般也就两块设置:

(1)包含路径Additional Library Directories

(2)lib库的包含Additional Dependencies

  这两个都检查了,没有问题,还是会出现这样的问题。最后基友帮忙下,换一个思维:重新建一个工程使用这里的lib没有问题,那大概怀疑是设置的问题或者设置导致的问题。

解决:

(1)把lib文件夹下面内容全部删掉

(2)把libuv、libpomelo和jansson工程的General-->Intermediate Directory文件夹改为默认的$(Configuration)\obj\$(ProjectName)\,因为开始调试问题改成了和General-->Output Directory一样的文件夹

(3)重现编译通过

 

原因:

  Intermediate Directory设置和Output Direcory一样的文件夹,导致obj和lib在一个文件导致的。这里出现这个原因是什么不知道是为啥???但是通过把这两个路径设置成不一样的就ok,解决了问题

 *补注:

  看了[1]中的文章,有提到一个是obj有重名,分析了一下自己的情况

(1)libpomelo三个lib工程的Intermediate Directory设置一样记得是没有问题的,虽然比较了三个目录下面有同名的文件,比如thread.obj以及vc110.pdb等

(2)分析一下libpomelo三个工程和cocos2dx那些lib产生的obj有相冲突的地方,

(3)libpomelo的三个工程Output Director设置和cocos2dx的同一个文件夹,没有问题

(4)libpomelo的三个工程的OutputDirectory和Intermediate Directory设置成一样就有问题了,所以问题出在这了。

(4)最后确定了问题:只要libpomelo工程和libuv工程的Intermediate Directory的文件夹不一样就可以了,把libpomelo工程和jansson工程的Intermediate Directory放到和cocos2dx一样都可以。按照参考文章中说的,应该是thread.obj这些导致的

 

参考:

[1]http://blog.csdn.net/noetic_wxb/article/details/8112574

posted @ 2015-01-16 10:38  上山老人  阅读(229)  评论(0编辑  收藏  举报