libuv移植到ios
libuv官网只提供了os x的编译方法,没有IOS的。既然os x和ios的系统内核差不多,
并且编译工具都是xcode,那我们只要重新指定cpu架构,就可以编译出ios版的了。
1.安装python,官网上有os x版的:python.org/download,下载Python 3.x Mac Installer disk image
2.打开image,里边的安装文件是pythom.mpkg,双击是打不开的,要右键--打开方式--安装器。
3.安装后,打开终端,输入python,查看安装是否成功
4. 到libuv官网下载最新的源代码:https://github.com/joyent/libuv
5. 在终端进入libuv,并输入
$ mkdir -p build
$ git clone https://git.chromium.org/external/gyp.git build/gyp
没有git的话,要先安装git
6.$ ./gyp_uv.py -f xcode
生成xcode项目文件uv.xcodeproj。我在这一步出错了,错误来自subprocess.py,
我就改了一下gyp_uv.py的get_compiler_version()函数,简单的返回了编译器的版本信息。
$ xcodebuild -ARCHS="x86_64 i386" -project uv.xcodeproj \
-configuration Release -target All
生成os x 版本的库
7.理论上将-ARCHS改成"armv7 armv7s arm64"就可以生成ios版的了,但为了保险起见,还是打开
uv.xcodeproj,然后修改build setting里Architecture信息:
BaseSDK:Latest IOS
Architecture : armv7,armv7s,arm64
supported platform: IOS
valid architecture: arm64 armv7 armv7s
8.我们先以IOS Device 为目标编译,生成真机版的库,在Debug-iphoneos目录下
再以Simulater为目标编译,生成模拟器版的库,在Debug-iphonesimulater目录下
9为了以后方便使用,我们需要把以上两个库合成一个
lipo -create Debug-iphoneos/libuv.a Debug-iphonesimulator/libuv.a -output libuv.a
大功告成
libuv移植到ios的更多相关文章
- libuv移植到android
编译环境是linux + ndk,你要先添加好NDK路径的环境变量,然后进入libuv目录执行以下两句完成编译. $ source ./android-configure $NDK gyp $ mak ...
- 将mvvmlight 移植到 ios step1
https://github.com/wangrenzhu/SimpleIoc-For-Objective-c simple ios for objective-c 版 基本实现 全部功能 完美实现 ...
- tensorflow移植到ios
1.git clone到本地 git clone https://github.com/tensorflow/tensorflowxcode 2.compile static library 安装xc ...
- Android IOS WebRTC 音视频开发总结(八)-- ios上移植webRTCDemo
这篇文章主要介绍ios webrtcdemo的实现及相关注意事项,转载请说明出处(博客园RTC.Blacker) 前面很多人问webrtc android下有webrtcdemo,ios上怎么找不到, ...
- (翻译)开始iOS 7中自动布局教程(二)
这篇教程的前半部分被翻译出来很久了,我也是通过这个教程学会的IOS自动布局.但是后半部分(即本篇)一直未有翻译,正好最近跳坑翻译,就寻来这篇教程,进行翻译.前半部分已经转载至本博客,后半部分即本篇.学 ...
- 解决protobuf不能直接在IOS上使用,利用protobuf-net在IOS上通讯
---------------------------------------------------------------------------------------------------- ...
- 用c/c++混合编程方式为ios/android实现一个自绘日期选择控件(一)
本文为原创,如有转载,请注明出处:http://www.cnblogs.com/jackybu 前言 章节: 1.需求描述以及c/c++实现日期和月历的基本操作 2.ios实现自绘日期选择控件 3.a ...
- GitHub Android 最火开源项目Top20 GitHub 上的开源项目不胜枚举,越来越多的开源项目正在迁移到GitHub平台上。基于不要重复造轮子的原则,了解当下比较流行的Android与iOS开源项目很是必要。利用这些项目,有时能够让你达到事半功倍的效果。
1. ActionBarSherlock(推荐) ActionBarSherlock应该算得上是GitHub上最火的Android开源项目了,它是一个独立的库,通过一个API和主题,开发者就可以很方便 ...
- 编写ios和android共用的c/c++库时 使用iconv的问题(转)
因为在项目中需要同时维护ios和Android,不同的代码不利于开发的便捷和以后的维护,所以在最近的一个项目中,两种手机应用的通信部分打算使用c/c++库来统一编写,ios调用.a静态库,androi ...
随机推荐
- 关于JavaScript定时器我的一些小理解
因为自己在平时工作中,有些功能需要用到定时器,但是定时器并不像我们表边上看到的那样,所以这周末我看看书查查资料,深入研究了一下JavaScript中的定时器,那么废话不多说,下面进入我们今天的正题. ...
- Beta周王者荣耀交流协会第六次会议
1.立会照片 成员王超,高远博,冉华,王磊,王玉玲,任思佳,袁玥全部到齐. master:袁玥 2. 时间跨度 2017年11月15日 19:00 — 19:10 ,总计10分钟. 3. 地点 一食堂 ...
- 欢迎来怼第二周Scrum会议六(总第十三次)
一.小组信息 队名:欢迎来怼小组成员队长:田继平成员:李圆圆,葛美义,王伟东,姜珊,邵朔,冉华 小组照片 二.开会信息 时间:2017/10/25 17:19~17:35(总计16min).地点:东 ...
- 【软工实践】第四次作业--爬虫结合WordCount
结对同学博客链接 本次作业博客链接 github项目地址 具体分工 我主要负责用python写爬虫部分,他负责C++部分 PSP表格 解题思路 代码的核心思路是利用爬虫,爬取论文网址,之后吧对应信息( ...
- JQuery EasyUI 引用加载分析
easyui是什么,就不介绍了,接触到前端的就算没用过,肯定也应该听说过.其次,本文不是介绍它提供如calendar.tree等这些功能如何使用的,这些官网上介绍都很详细,中文的网上也不少.本文是从e ...
- php自带的filter过滤函数
PHP 过滤器用于对来自非安全来源的数据(比如用户输入)进行验证和过滤. filter_has_var()检查是否存在指定输入类型的变量. filter_id()返回指定过滤器的 ID 号. filt ...
- hdu 6435 CSGO(最大曼哈顿距离)
题目链接 Problem Description You are playing CSGO. There are n Main Weapons and m Secondary Weapons in C ...
- AngularJS中$watch
$watch在digest执行时,如果watch观察的value与上一次执行时不一样时,就会被触发.angularjs内部的watch实现了页面随model的及时更新.$watch 方法在用的时候主要 ...
- [十三]SpringBoot 之 过滤器(Filter)和监听器(Listener)
过滤器(Filter)和 监听器(Listener)的注册方法和 Servlet 一样,不清楚的可以查看下上一篇文章 代码示例 package me.shijunjie.filter; import ...
- Day21-自定义分页
一. 先简单来个示例 1.1 在urls.py中增加1条,user_list from django.conf.urls import url,include from django.contrib ...