linux下开发,解决cocos2d-x中编译出现的一个小问题, undefined reference to symbol 'pthread_create@@GLIBC_2.2.5&

Posted yxysuanfa

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了linux下开发,解决cocos2d-x中编译出现的一个小问题, undefined reference to symbol 'pthread_create@@GLIBC_2.2.5&相关的知识,希望对你有一定的参考价值。

解决cocos2d-x中编译出现的一个小问题

对于cocos2d-x 2.×中编译中,若头文件里引入了#include "cocos-ext.h",在进行C++编译的时候会遇到例如以下错误:

技术分享

undefined reference to symbol ‘[email protected]@GLIBC_2.2.5‘/lib/x86_64-linux-gnu/libpthread.so.0: error adding symbols: DSO missing from command line

在网上google了好长时间,有人说要改动源代码中的cocos2dx.mk中的一些配置,本人依照那个说的改过之后还是出现老问题,在官网上查到的也是这种回答。貌似改动cocos2dx.mk能够,可是我始终没解决。

附上官方的解决的方法:点击打开链接,例如以下

技术分享

最后在论坛中找到解决的方法,最简单的办法。

在linux下用C++开发cocos2d-x时须要用到makefile文件,直接在proj.linux中能够找到makefile文件。打开文件会看到原始的配置,解决上述编译问题时直接改动$LOG_LINK中的配置

原始连接例如以下:

$(LOG_LINK)$(CXX) $(CXXFLAGS) $(OBJECTS)  -o [email protected] $(SHAREDLIBS) $(STATICLIBS)

改动后的例如以下:

$(LOG_LINK)$(CXX) $(CXXFLAGS) $(OBJECTS) -Wl,--no-as-needed -o [email protected] $(SHAREDLIBS) $(STATICLIBS)

即添加了 -Wl,--no-as-needed,这两个关键点。

再编译即正确通过。

技术分享








以上是关于linux下开发,解决cocos2d-x中编译出现的一个小问题, undefined reference to symbol 'pthread_create@@GLIBC_2.2.5&的主要内容,如果未能解决你的问题,请参考以下文章

使用AndroidStudio开发cocos2d-x时,可能会出现的问题

Linux下gcc编译依赖库可能出现的系列问题以及对应解决方法(以GDAL库为例)

Cocos2d-x 3.0游戏开发之android交叉编译

cocos2d-x 3.15(lua) 在Xcode8.2+下模拟器运行崩溃问题 iOS simulator crash when running cocos2d-x 3.15 lua project

cocos2d-x之android编译环境搭建(第二篇)[版本号:cocos2d-x-3.1.1]

Cocos2d-x手机游戏开发与项目实践具体解释_随书代码