`
buerkai
  • 浏览: 166407 次
  • 性别: Icon_minigender_1
  • 来自: 成都
社区版块
存档分类
最新评论

cocos2dx添加第三方库注意事项

 
阅读更多
前一段时间,使用cocos2dx 2.0,在使用中文转码的时候,老是加载出问题。

Error 1 error LNK2019: unresolved external symbol _libiconv_close referenced in function "public: int __thiscall HelloWorld::GBKToUTF8(class std::basic_string<char,struct std::char_traits<char>,class std::allocator<char> > &,char const *,char const *)" (?GBKToUTF8@HelloWorld@@QAEHAAV?$basic_string@DU?$char_traits@D@std@@V?$allocator@D@2@@std@@PBD1@Z) F:\cocos2d\cocos2d2\HelloWorld\proj.win32\HelloWorldScene.obj HelloWorld
Error 2 error LNK2019: unresolved external symbol _libiconv referenced in function "public: int __thiscall HelloWorld::GBKToUTF8(class std::basic_string<char,struct std::char_traits<char>,class std::allocator<char> > &,char const *,char const *)" (?GBKToUTF8@HelloWorld@@QAEHAAV?$basic_string@DU?$char_traits@D@std@@V?$allocator@D@2@@std@@PBD1@Z) F:\cocos2d\cocos2d2\HelloWorld\proj.win32\HelloWorldScene.obj HelloWorld
Error 3 error LNK2019: unresolved external symbol _libiconv_open referenced in function "public: int __thiscall HelloWorld::GBKToUTF8(class std::basic_string<char,struct std::char_traits<char>,class std::allocator<char> > &,char const *,char const *)" (?GBKToUTF8@HelloWorld@@QAEHAAV?$basic_string@DU?$char_traits@D@std@@V?$allocator@D@2@@std@@PBD1@Z) F:\cocos2d\cocos2d2\HelloWorld\proj.win32\HelloWorldScene.obj HelloWorld


,原因是在引用第三方库的时候,只写了头文件,#include "platform\third_party\win32\iconv\iconv.h"
只要在头文件附近加入
#pragma comment(lib,"libiconv.lib")

即:
#if (CC_TARGET_PLATFORM == CC_PLATFORM_WIN32)
#include "platform\third_party\win32\iconv\iconv.h"
#pragma comment(lib,"libiconv.lib")
#endif
可解决中文问题,下面附带函数:

int HelloWorld::GBKToUTF8(std::string &gbkStr,const char* toCode,const char* formCode)

{

iconv_t iconvH;  iconvH = iconv_open(formCode,toCode);

if(iconvH == 0) 

{  

return -1;

}

const char* strChar = gbkStr.c_str();

const char** pin = &strChar;

size_t strLength = gbkStr.length();

char* outbuf = (char*)malloc(strLength*4);

char* pBuff = outbuf;

memset(outbuf,0,strLength*4); 

size_t outLength = strLength*4;

if(-1 == iconv(iconvH,pin,&strLength,&outbuf,&outLength))

{

iconv_close(iconvH); 

return -1;

}

gbkStr = pBuff;

iconv_close(iconvH); 

return 0;

}

//-----------------------------------------------------
std::string title = "啊看见电算会计快接啊但是";

#if (CC_TARGET_PLATFORM == CC_PLATFORM_WIN32)
GBKToUTF8(title,"gb2312","utf-8");
#endif

CCLabelTTF* pLabel = CCLabelTTF::create(title.c_str(), "Thonburi", 24);
分享到:
评论

相关推荐

    cocos第三方依赖库

    cocos 2d-x第三方依赖库,支持cocos 2d-x加载第三方依赖的库。

    cocos2dx使用第三方so库

    cocos2dx使用第三方so库 是一分文档, cocos2dx使用第三方so库 是一分文档, cocos2dx使用第三方so库 是一分文档, 重要事情说三遍

    cocos2d入门cocos2d入门

    cocos2d入门 cocos2d入门 cocos2d入门 cocos2d入门 cocos2d入门 cocos2d入门

    Cocos2d-x实战:JS卷——Cocos2d-JS开发

    资源名称:Cocos2d-x实战:JS卷——Cocos2d-JS开发内容简介:本书是介绍Cocos2d-x游戏编程和开发技术书籍,介绍了使用...基础篇包括第2章~第8章,Cocos2d- 资源太大,传百度网盘了,链接在附件中,有需要的同学自取。

    cocos2d-x json字符串与cocos2d::Value转换工具

    该资源主要用于cocos2d-x中Value与json字符串的相互转换,提供从json文件读取为cocos2d::Value,cocos2d::Value写入到文件,cocos2d::Value转换为json字符串,json字符串转换为cocos2d::Value。json字符串转换成cocos...

    Cocos2d添加ZJoystick遥控杆所需源文件和图片

    Cocos2d添加ZJoystick遥控杆所需源文件和图片 cocos2d学习之路四(添加遥控杆)所需资源

    cocos2d-x库

    cocos2d-x库,2.2.3版本的,参考里面的源代码学习吧

    cocos2d-x-2.1.5

    cocos2d-x-2.1.5

    Cocos2D权威指南

    第1章 开始前的准备工作 1 第2章 你的第一款iPhone游戏:垂直射击游戏 38 第3章 Cocos2D核心类 69 第4章 Cocos2D中的动作、特效与动画 152 第5章 Cocos2D中的文本渲染系统 229 共19章

    cocos2d-x游戏代码

    cocos2d-x游戏代码

    cocos2d-x事件类

    在使用cocos2d-x开发游戏的过程中,为了实现逻辑和显示相分离。 在下通宵了一个晚上,写出了该事件类。 谨记,该事件只能用于cocos2d-x中。 事件发送者需要继承EventDispatcher类 事件接收者需要继承EventHandle类...

    cocos2d初级教程-Cocos2d SimpleGame源码

    Ray Wenderlich的《Cocos2d SimpleGame》,被认为是cocos2d的初学者最好的教程,这本书被Cocos2D-X团队从objective-c转化到了c++版,并发布在了github上。在此感谢Ray Wenderlich的慷慨相助。 源代码是在cocos2d-x ...

    cocos2d-x开发自己的编辑器

    《使用cocos2d-x开发各种编辑器》文章里的DEMO源码

    cocos2d-x-3rd-party-libs-src:cocos2d-x的依存关系

    cocos2d-x第三方库 该存储库包含与cocos2d-x捆绑在一起的第三方库(二进制)的源代码。 对于cocos2d-x开发人员和/或想要: 生成特定库的更新版本(例如:将libpng 1.6.2升级到1.6.14) 将cocos2d-x移植到其他平台...

    cocos2d-x游戏实例-纵版射击游戏(cocos2d-x 2.0.4)

    本人提交源码进行了版本移植并修改了一个bug,目前使用VS2008+cocos2d-x,2.0.4版本编译测试过(需要注意的是,我的IDE环境中是将COCOS2d-x的头文件和库文件设置到了VS环境中对所有项目生效,并没有单独对特定的COCOS...

    Cocos2d-x实战 JS卷 Cocos2d-JS开发

    Cocos2d-x实战 JS卷 Cocos2d-JS开发 PDF 电子书完整版本

    Cocos2d-x实战 JS卷

    Cocos2d-x实战

    cocos2d的学习资料

    cocos2d的学习资料,一本比较经典的cocos2d开发书,适合cocos2d/cocos2d-x的入门

    cocos2d-x实战项目

    cocos2d-x实战项目 01.cocos2d-x原理及环境配置.rar 03.cocostudio使用方法及UI控制.rar 04.XML文件读取与骨骼动画.rarcocos2d-x实战项目 01.cocos2d-x原理及环境配置.rar 03.cocostudio使用方法及UI控制.rar 04.XML...

    cocos2d-iphone 2.1 第一部分

    继续输入cd Cocos2d-iPhone-0.99.5(cd Cocos2d-iPhone-0.99.5为解压的cocos2d文件夹名称)进入cocos2d文件夹中。 4。继续输入./install-templates.sh则打开你文件夹下面的install-templates.sh进行cocos2d的安装。...

Global site tag (gtag.js) - Google Analytics