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 ...
随机推荐
- NAVICATE 修改存储过程提示PROCEDURE _Navicat_Temp_Stored_Proc already exists 解决方法
推测是navicate修改存储过程会自动名为_Navicat_Temp_Stored_Proc的存储过程 创建完毕后自动drop 由于某些原因或bug导致最终没有drop,于是修改存储过程失败. 所以 ...
- python中import失败解决的简单办法
例如:import pkg_resources失败 可以print sys.path查看,从其他机器上cp -r过来即可,如下例子: 从另外一个正常的机器上scp过来/usr/ali/lib/pyth ...
- 如何利用PhoneGap制作地图APP
摘要:百度地图API是一套由javascript编写的地图程序接口,按说它应该运行在浏览器上.现在,只要利用PhoneGap,我们就能开发出移动平台上能使用的APP了! --------------- ...
- 【JavaScript】关于javascript原型的深入理解
http://mozilla.com.cn/post/21667/ http://liuzhijun.iteye.com/blog/1157453 http://liuzhijun.iteye.com ...
- [android]fmodex在某些android设备上声音延迟Latency
// The default on windows in bufferlength = 1024 and numbuffers = 4 hr = g_pFmodSystem->setDSPBuf ...
- iPhone重绘机制drawRect
如何使用iPhone进行绘图.重绘操作iPhone的绘图操作是在UIView类的drawRect方法中完成的,所以如果我们要想在一个UIView中绘图,需要写一个扩展UIView 的类,并重写draw ...
- 基于jQuery右侧带缩略图导航的焦点图
今天我们要来分享一款右侧带缩略图导航的jQuery焦点图插件,这款jQuery焦点图插件的特点是右侧有一列缩略图导航列表,并且可以定义任意数量的图片,你可以拖动列表来查看所有的图片,点击缩略图后,即可 ...
- 如何使用nodejs发邮件
昨天就开始想使用nodemailer来实现一个发送邮件的功能,不过发现了很多个坑,网上给的资料也很杂很乱,所以决定写一篇真正能用的来帮助大家减少弯路 首先,我们先来看下代码,如上所示. 步骤: 1.下 ...
- PHP.12-PHP-设计文件上传类
设计文件上传类 [PHP参数详解]{文件上传} ********************** *#构造方法编写 ********************** 此种传参方法规定必须用户必须按响应位置输入 ...
- Socket 之 API函数介绍
1.创建套接字──socket() 应用程序在使用套接字前,首先必须拥有一个套接字,系统调用socket()向应用程序提供创建套接字的手段,其调用格式如下: SOCKET PASCAL FAR soc ...