Cocos2d-x移植到WindowsPhone8移植问题-libcurl库移植问题
在Cocos2d-x 3.x最新版本中提供了Windows Phone 8平台移植libcurl库所需要的头文件和库文件。但要在Windows Phone 8平台成功移植libcurl库还是很不容易,需要费一些周折,我总结了如下几个步骤:
配置头文件搜索路径
配置链接环境
添加动态链接库
1、配置头文件搜索路径
整个步骤我们可以参考上一节介绍的rapidjson库移植。具体过程是选中HelloCppComponent工程,打开菜单“项目”→ “属性”弹出工程属性对话框,选择“配置属性”→“C++” →“常规”,在右边的“附加包含目录”中添加$(EngineRoot)external\curl\include\wp8。
另外,由于我们要移植的工程同时也需要解析JSON数据,因此也需要配置和移植rapidjson库。
2、配置链接环境
配置链接环境过程又分成两个步骤:配置附加库目录和配置附加依赖项。配置附加库目录是指定要链接的库文件所在目录,而配置附加依赖项是指定要链接的库文件。
我们首先看看配置附加库目录。具体过程是选中HelloCppComponent工程,打开菜单“项目”→ “属性”弹出工程属性对话框,如下图所示,选择“配置属性”→“连接器” →“常规”,在右边的“附加包含目录”中添加$(EngineRoot)external\curl\prebuilt\wp8\$(Platform),注意配置目之间需要用分号分隔开。
提示 在路径中的$(Platform)宏,它代表arm或win32,arm中的文件是为Windows Phone 8设备调试和部署准备,而win32中的文件是为在PC上运行Windows Phone 8模拟器调试准备的。
接下来我们配置附加依赖项。打开工程属性对话框,如下图所示,选择“配置属性”→“连接器” →“输入”,在右边窗口的“附加依赖项”,添加内容libcurl.lib。
3、添加动态链接库
上面的两个步骤配置如果没有配置,直接会导致程序无法编译错误。而添加动态链接库如果没有配置,会引起运行期错误,这种错误更加隐蔽。
这些库文件也是在$(EngineRoot)external\curl\prebuilt\wp8\$(Platform)目录下面,我们根据运行的平台添加它们。具体步骤是,选中HelloCppComponent工程右键菜单选择“添加”→“现有项”,打开添加项目对话框,如下图所示,找到$(EngineRoot)external\curl\prebuilt\wp8\$(Platform)实际的目录,选择文件libcurl.dll、libeay32.dll和ssleay32.dll文件,选择好后点击“添加”按钮进行添加。
添加完成后,我们还需要对这些文件设置属性,如下图所示,选中文件打开属性对话框,将其中的“内容”设置为True,这项设置可以保证文件在编译的时候被复制到运行环境中。请逐一设置这三个动态链接库文件。
如果上述三个步骤成功完成,我们就可以运行测试了。libcurl库的移植有很有代表性,它属于有各个平台的头文件和库文件,而没有源文件情况。凡事这种情况我们都可以照此移植。
Cocos2d-x移植到WindowsPhone8移植问题-libcurl库移植问题的更多相关文章
- Cocos2d-x移植到WindowsPhone8移植问题-libNetwork库移植问题
Cocos2d-x提供了libNetwork库的源代码,而且还提供了libNetwork库的源代码Visual Studio 2012工程文件libNetwork.vcxproj,这样就更方便移植了. ...
- STM32F407移植contiki2.6后使用LWIP库实现tcp client
最近在做智能家居,物联网项目,用到了C下的contiki移植 经过一阵调试,终于在 STM32F407移植contiki2.6后使用LWIP库实现tcp client. 一路艰辛谁人知道....唯有留 ...
- 【课程分享】深入浅出嵌入式linux系统移植开发 (环境搭建、uboot的移植、嵌入式内核的配置与编译)
深入浅出嵌入式linux系统移植开发 (环境搭建.uboot的移植.嵌入式内核的配置与编译) 亲爱的网友,我这里有套课程想和大家分享,假设对这个课程有兴趣的,能够加我的QQ2059055336和我联系 ...
- 【MCU】国民N32固件库移植
目录 前言 移植N32Gxxx系列要点 前言 链接: 李柱明博客 移植AT32库&FreeRTOS教程 由于大部分国产MCU移植固件库.RTOS源码都是差不多的,所以本文不讲细节,如想熟悉移植 ...
- (转)libcurl库使用方法,好长,好详细。
一.ibcurl作为是一个多协议的便于客户端使用的URL传输库,基于C语言,提供C语言的API接口,支持DICT, FILE, FTP, FTPS, Gopher, HTTP, HTTPS, IMAP ...
- Cocos开发中Visual Studio下libcurl库开发环境设置
我们介绍一下win32中Visual Studio下libcurl库开发环境设置.Cocos2d-x引擎其实已经带有为Win32下访问libcurl库,Cocos2d-x 3.x中libcurl库文件 ...
- C++ 用libcurl库进行http通讯网络编程
使用libcurl完成http通讯,很方便而且是线程安全,转载一篇比较好的入门文章 转载自 http://www.cnblogs.com/moodlxs/archive/2012/10/15/2724 ...
- C++ 用libcurl库进行http通讯网络编程(转)
转载:http://www.cnblogs.com/moodlxs/archive/2012/10/15/2724318.html 目录索引: 一.LibCurl基本编程框架 二.一些基本的函数 三. ...
- C++ 用libcurl库进行http通讯网络编程[转]
http://www.cnblogs.com/moodlxs/archive/2012/10/15/2724318.html 目录索引: 一.LibCurl基本编程框架 二.一些基本的函数 三.cur ...
随机推荐
- Gridview全选
1.js代码 <script language="javascript" type="text/javascript"> ...
- [Angular2 Router] Configuring a Home Route and Fallback Route - Learn An Essential Routing Concept
In this tutorial we are going to learn how to configure the Angular 2 router to cover some commonly ...
- 单片机modebus RTU通信实现,採用C语言,可适用于单片机,VC,安卓等
当前使用的是STM32+ucos_ii编写的,能够移植到安卓以及VC .NET等方便移植使用,採用modebus poll測试过. 仅仅须要改动响应的通信接口就可以,方便多串口使用 //modebus ...
- 信号之signal函数
UNIX系统的信号机制最简单的接口是signal函数.signal函数的功能:为指定的信号安装一个新的信号处理函数. #include <signal.h> void (*signal(i ...
- global $GLOBALS区别
<?phpfunction &test(){ static $b=0;//申明一个静态变量 $b=$b+1; echo $b; return $b; }} ...
- python实现二叉树遍历算法
说起二叉树的遍历,大学里讲的是递归算法,大多数人首先想到也是递归算法.但作为一个有理想有追求的程序员.也应该学学非递归算法实现二叉树遍历.二叉树的非递归算法需要用到辅助栈,算法着实巧妙,令人脑洞大开. ...
- python代码查询港澳通行证办理进度
查询港澳通行证办理进度查询的python 3.3代码.利用socket请求相关网站,获得结果后利用正则找出办理进度.其实用urllib代码会更简洁,不过当时在下还不熟悉urllib~ 直接上代码: i ...
- LeetCode15 3Sum
题意: Given an array S of n integers, are there elements a, b, c in S such that a + b + c = 0? Find al ...
- FileListEntityProcessor
一个简单的实体处理程序,可以用于枚举标准文件系统中的文件列表,它不需要使用DataSource.属性如下: fileName:(必填) 用正则表达式来标记文件名 baseDir:(必填) 基础目录,绝 ...
- 自定义PopupWindow弹出框(带有动画)
使用PopupWindow来实现弹出框,并且带有动画效果 首先自定义PopupWindow public class LostPopupWindow extends PopupWindow { pub ...