cocos2dx-2.2.3 lua 工程添加HttpClient.h后无法编译成功的问题。
2014-04-18 23:31
609 查看
今天在学习 cocos2dx tolua++ 时出现了一个问题:在代码中使用了类 CCHttpClient 时, 编译失败,提示的错误是 :
无法解析的外部符号 __imp__curl_slist_append,该符号在函数
问了公司的C++牛人lirong ,他说是因为没有找到实现。我也感觉到很奇怪,因为我新建 cpp工程,在cpp工程中使用 CCHttpClient 是没有问题,也就是说这个库的实现应该是存在的。那到底是什么问题导致它没有找到这个实现呢?
后来在网上搜了一下,找到这篇文章
http://blog.csdn.net/missmecn/article/details/7193181
笔者的错误信息与我的相同,他的解决方法是:
1、给工程添加依赖的库:项目->属性->链接器->输入->附加依赖项,把libcurl.lib ws2_32.lib winmm.lib wldap32.lib添加进去
注意,debug配置用libcurld.lib
2、加入预编译选项:项目->属性->c/c++ ->预处理器->预处理器,把 ;BUILDING_LIBCURL;HTTP_ONLY复制进去(注意不要丢了";")
于是我新建了一个cpp工程,一个lua工程,对比 它们的 项目->属性->链接器->输入->附加依赖项 发现在lua工程中没有添加 libcurl_imp.lib;
把这个lib加上,编译成功。运行没有问题。
无法解析的外部符号 __imp__curl_slist_append,该符号在函数
问了公司的C++牛人lirong ,他说是因为没有找到实现。我也感觉到很奇怪,因为我新建 cpp工程,在cpp工程中使用 CCHttpClient 是没有问题,也就是说这个库的实现应该是存在的。那到底是什么问题导致它没有找到这个实现呢?
后来在网上搜了一下,找到这篇文章
http://blog.csdn.net/missmecn/article/details/7193181
笔者的错误信息与我的相同,他的解决方法是:
1、给工程添加依赖的库:项目->属性->链接器->输入->附加依赖项,把libcurl.lib ws2_32.lib winmm.lib wldap32.lib添加进去
注意,debug配置用libcurld.lib
2、加入预编译选项:项目->属性->c/c++ ->预处理器->预处理器,把 ;BUILDING_LIBCURL;HTTP_ONLY复制进去(注意不要丢了";")
于是我新建了一个cpp工程,一个lua工程,对比 它们的 项目->属性->链接器->输入->附加依赖项 发现在lua工程中没有添加 libcurl_imp.lib;
把这个lib加上,编译成功。运行没有问题。
相关文章推荐
- 解决Android Studio 2.2.3中添加.cpp .h文件在Project->Android无法显示,无法正常编译问题。
- 解决Android Studio 2.2.3中添加.cpp .h文件在Project->Android无法显示,无法正常编译问题。
- 添加文件【COCOS2DX-LUA 脚本开发之十三】解决lua项目编译Android出现get data from file failed、Cocos2dxActivity cannot be 路径等问题
- 【COCOS2DX-LUA 脚本开发之十三】解决lua项目编译Android出现get data from file failed、Cocos2dxActivity cannot be 路径等问题
- Android项目中sdk 23无法使用HttpGet 和HttpClient的问题解决--只需改一行
- svc 报“由于扩展配置问题而无法提供您请求的页面。如果该页面是脚本,请添加处理程序。如果应下载文件,请添加 MIME 映射。“的HTTP 错误 404.3 – Not Found
- HTTP 错误 404.3 - Not Found 由于扩展配置问题而无法提供您请求的页面。如果该页面是脚本,请添加处理程序。如果应下载文件,请添加 MIME 映射。
- WCF HTTP 错误 404.3 - Not Found(由于扩展配置问题而无法提供您请求的页面。如果该页面是脚本,请添加处理程序。如果应下载文件,请添加 MIME 映射。)
- HttpClient get请求在HttpResponse中无法获得Location的问题
- 【COCOS2DX-LUA 脚本开发之十三】解决lua项目编译Android出现get data from file failed、Cocos2dxActivity cannot be 路径等问题 .
- 解决NIOS II工程移动在磁盘上位置后project无法编译问题
- 【COCOS2DX-LUA 脚本开发之十四】解决自定义CPP类通过TOLUA++ BINDING LUACOCOS2D后编译到ANDROID运行黑屏(没有调用自定义CPP类)的问题!
- Eclipse工程出现红叉导致无法编译的问题
- 关于命令行中javac 编译成功,用 java 运行 class 文件出现 “ 找不到或无法加载主类 ” 的问题
- vc++工程中添加lua代码调用-编译lua静态库文件
- ios开发问题:添加库和复制其它工程文件编译错误问题
- WCF HTTP 错误 404.3 - Not Found(由于扩展配置问题而无法提供您请求的页面。如果该页面是脚本,请添加处理程序。如果应下载文件,请添加 MIME 映射。)
- 安装成功的nginx,如何添加未编译安装模块(非覆盖安装http_image_filter_module)
- HTTP 错误 404.3 - Not Found 由于扩展配置问题而无法提供您请求的页面。如果该页面是脚本,请添加处理程序。如果应下载文件,请添加 MIME 映射。
- 对“tolua++导出C++子类后在Lua中无法添加新成员”这一问题的初步分析【转】