MAC OS下编译apple跨平台的libevent库 (可延申到其它第三库)

apple下的跨平台是指不同设备上的苹果系统以及同一系统在不同cpu体系的不同版本。

前面一篇介绍如何用ndk编译android跨平台的第三库,那样的方法却不能应用在apple上。

网上可以找到这么一个脚本,其主要过程和功能如下图:

脚本主要依靠了xcrun -sdk命令来搜索出平台关联的编译程序和SDK目录位置。不像ndk的目录结构,苹果的目录结构不清晰有些又不统一,xcrun就是这个咨客,问它就是了。

只要将脚本中相应的容器修改就可以应用到其它第三库的编译中去。

接下来就编译过程中的怪问题。

我编译libevent库目的是用在移动设备上,然而怪事就发生了。在darwin版本中可以使用kqueue,但移动系统版本就不能使用kqueue只能用poll。原因是configugre中有两项对kqueue的检测居然会有一项不能通过,其元凶却是无关的头文件stdlib.h。因为在configure中有对--host为darwin的处理,在检测项目之前stdlib.h己经被包含,所以在检测项目的代码段中没有对stdlib.h的包含。问题就是configure没有对--host为苹果其它系统定制相关的处理,好了进入检测项目时,函数引用不允许隐式声明,也就是没有头文件的声明,导致了检测项目的失败。只要在configure中相应的地方加上对stdlib.h的包含,搞定,全部版本的libevent都可以使用kqueue。

时间: 2025-01-02 17:58:57

MAC OS下编译apple跨平台的libevent库 (可延申到其它第三库)的相关文章

在mac os下编译android -相关文章

1. Mac OS X下编译Android源码 http://blog.csdn.net/bulreed/article/details/22783467 2.MAC OS 编译 Android源代码 http://blog.sina.com.cn/s/blog_768cfa5901011zod.html 3. Setting Up A Build Environment on OS X 10.9 Mavericks http://blog.csdn.net/michaelpp/article/

在 Mac OS 上编译 FFmpeg

本文转自:在 Mac OS 上编译 FFmpeg | www.samirchen.com 安装 Xcode 和 Command Line Tools 从 App Store 上安装 Xcode,并确保在 Xcode 的 Preferences -> Downloads -> Components 下安装好 Command Line Tools. 当然你也可以从 https://developer.apple.com/ 下载 Xcode 和 Command Line Tools. 安装 brew

Mac OS 下 Visual studio code初体验

Mac OS 下 Visual studio code初体验 随着微软开源策略的一步步推进,终于等到了跨平台的Visual Studio Code.作为一名使用MacBook 的.NET程序猿,不得不说是一种福音.(尝试过使用Xamarin/Eclipse/IDEA在Mac下编辑.net源代码,用起来都不是特别的爽.) 一下就在mac系统上搭建开发环境的过程简单的整理一下. 依赖的环境 mono 4.0.1 dnvm/dnx https://github.com/aspnet/home nodj

Mac OS下SVN的使用:服务的和客户端

在Windows环境中,我们一般使用TortoiseSVN来搭建svn环境.在Mac环境下,由于Mac自带了svn的服务器端和客户端功能,所以我们可以在不装任何第三方软件的前提下使用svn功能,不过还需做一下简单的配置. 我们首先来看下,如何在Mac环境下搭建svn服务器端环境. 一.创建代码仓库,用来存储客户端所上传的代码 我先在/User/apple目录下新建一个svn目录,以后可以在svn目录下创建多个仓库目录 打开终端,创建一个mycode仓库,输入指令:svnadmin create

转一篇Mac OS下不产生.DS_Store 隐藏文件

> 找程式砍 .DS_Store 很烦,直接让它不要出现吧 其实这问题困扰我很久了,每个目录裡面都会跑出一个 .DS_Store 的档案,我通常都是用 find /path/to -name 『.DS_Store』 -delete 来砍,不过砍了又会自动再生:显然这问题不是只有困扰我而已,都已经有程式专门在解决类似的状况.不过现在这问题得到了『终极的解决办法』,有一篇文章提到了说要怎样关掉这个功能:只要在命令列下这个指令然后重开机就可以啦 打开终端 -  (shift + command + N

在MAC OS 下配置python + Flask ,并支持pyCharm编辑器

原创咯- flask是一个micro framework ,伸缩性很强.可以部署到openshift 的PAAS里.这个框架上手非常快.喜欢的可以试试. 若实在MAC里,python已经默认安装了.10.9的系统安装的是2.7.5的版本.所以我们这里就不详细介绍python的安装啦 1. 首先安装  vurtualenv 这是一个虚拟环境,virtualenv 允许多个版本的 Python 同时存在,对应不同的项目. 它实际上并没有安装独立的 Python 副本,但是它确实提供了一种巧妙的方式来

mac os 下搭建android开发环境

mac os 下搭建android开发环境 周银辉 mac os 下搭建android环境比较方便, 如下几个步骤: 1,安装jdk 先搞清楚自己是否已经安装,在命令行下:java -version,如何有版本信息输出,则已经安装了,比如我的 192% java -version java version "1.8.0_05" Java(TM) SE Runtime Environment (build 1.8.0_05-b13) Java HotSpot(TM) 64-Bit Ser

mac os下部署laravel项目笔记

最近在mac os下部署一个laravel项目,一直都听说mac上配置php+apache+mysql很简单,但是对于不熟悉的我还是遇到了不少的麻烦.一开始装了MAMP,以为和windows上的集成环境一样简单,结果还是遇到了很多问题.最后还是用了brew. brew的安装: ruby -e "$(curl -fsSL https://raw.githubusercontent.com/Homebrew/install/master/install)" 大家可以上官网看更多的资料:ht

MAC OS下免费下载YouTube

YouTube上有很多不错的视频,你感兴趣的视频除了可以加入自己播放列表之外,还可以将其下载到本地收藏起来.推荐这款软件“Xilisoft Download YouTube Video for Mac”.可以免费下载YouTube视频,支持多种分辨率. 官网地址: http://www.xilisoft.com/download-youtube-video-mac.html 百度网盘: http://pan.baidu.com/s/1kT40Xpl 原创文章,转载请注明: 转载自 http://