通常在MAC上可以和其他linux机器一样用
autoreconf -vi && cd bin && ../configure && make
但是在需要编译iOS(iPhone, AppleTV, WatchOS)之类的二进制文件时需要有其他的设置
-isysroot /Applications/Xcode.app/Contents/Developer/Platforms/iPhoneSimulator.platform/Developer/SDKs/iPhoneSimulator.sdk \ -mios-simulator-version-min=10.3
这个是iPhone模拟器的设置,编译出来的结果可以给模拟器使用。
在模拟器上又对二进制文件有32位和64位的不同要求。以xcode 8.3.1为例,除iphone 5 要求32位外,其他全部要求64位。
如果分开做的话需要每次将下其中一个参数加入到编译选项中
// intel 32bits? -arch i386 // amd64? -arch x86_64 // powerpc 32bits -arch ppc // powerpc 64bits -arch ppc64
但是其实,mac上有一个叫fat或universal 的二进制格式。
autoconf手册里有提到过可以串在一起直接做成fat/universal格式的。如下
./configure CC="gcc -arch i386 -arch x86_64 -arch ppc -arch ppc64" \ CXX="g++ -arch i386 -arch x86_64 -arch ppc -arch ppc64" \ CPP="gcc -E" CXXCPP="g++ -E"
注意,在xcode 8.3.1上ppc和ppc64不被支持,需要去掉。
最后编译结果会是这样
.libs/libhelloworld.a: Mach-O universal binary with 2 architectures: [i386: current ar archive random library] [x86_64: current ar archive random library] .libs/libhelloworld.a (for architecture i386): current ar archive random library .libs/libhelloworld.a (for architecture x86_64): current ar archive random library
autoconf手册上原文说不能保证所有情况下都成产生fat/universal格式的二进制文件.
相关推荐
Linux的交叉编译安装包。用来不同系统下的开发
autotools_autotools_交叉编译_源码.zip
自己写的autotools工具链:ws作为自动编译工具,只要在写好程序的目录下运行ws便可得到经过autotools处理的可执行文件和安装包,并且会生成在arm板上运行的二进制文件 arm.bin .ws是一个别名,在.bashrc文件中定义,...
利用GNU autotools 制作Unix-like Makefile; CPP静态库编译。
使用 GNU autotools手册
autotools-dev_20100122.1_all 交叉工具链编译是需要。
通过两天的学习,基本掌握了autotools(autoconf/automake)工具的使用。然后把这两天学习用到的资料整理了下,全是干货,能以最快的速度学会用autotools来产生符合GNU标准的小型项目,从而满足自己平时发布开源代码的...
linux下autoTools电子书汇集,做工程时用到的搜集了一些,打包上传,供大家分享 linux下autoTools电子书汇集,做工程时用到的搜集了一些,打包上传,供大家分享
使用autotools系列工具只需要用户简单输入目标文件、依赖文件、文件目录等就可以轻松地生成makefile文件,本文介绍了如何使用autotools工具生成makefile文件
使用autotools工具包中的autoconf, automake, 以及libtool组织的一个包含多个原码目录的helloworld工程。工程比较简单, 就不具体说明了, 供初学autotools的同学参考。 解压原码包之后按序执行./configure, make...
包括了在windows编译的工具:autonconf,automake
自己学习shell脚本后写的autotools工具,只要在当前目录下输入ws就可以在当前目录下生成make脚本。make就可以生成以相关的文件名的可执行文件
以下三个命令来编译和安装你的程序: 1) ./configure 2) make 3) make install
测试包 autotools
使用_GNU_autotools.pdf vAutotools+A+Practioner's+Guide.pdf autobook-1.5.tar
autotools使用说明文档、配套的hello源码操作指南。 linux 下c/c++使用autotools工具自动生成makefile 操作说明。 指令:autoscan、aclocal、autoheader、autoconf、automake 创建:makefile.am等
1.已经编译好的 hadoop2.4.1 x64 用法:将hadoop-2.4.1/lib/native下所有文件删除,然后将包中的文件放入 2.自己安装搜索“编译64位的hadoop 2.4.1”参考:...
Crypto ++ Autotools的目的有三方面: 更好地支持Linux发行版,例如Debain,Fedora和openSUSE 通过对基于GNUmake的配置的代表来补充即将达到其极限的GNUmakefile 利用编译器功能探针在ARM,MIPS和Power8架构上产生...
autotools作为linux开发人员应该不陌生的,它可以说是linux程序release时必备的工具了,可以省很多的麻烦事(至少免去了编写makefile的繁重工作),试试吧。
Autotools.A.Practioner's.Guide.to.GNU.Autoconf.Automake.and.Libtool