`
BestUpon
  • 浏览: 291472 次
  • 性别: Icon_minigender_1
  • 来自: 兰州
社区版块
存档分类
最新评论

在mac os 中安装 autoconf and automake

    博客分类:
  • MAC
阅读更多

I noticed today that while Mac OS 10.6 (specifically, 10.6.2) comes with automake and autoconf, the versions are a little bit dated. Normally I wouldn’t care, but I ran into an issue when trying to generate a portable distribution using those tools on my mac, and then configure, compile, and install the result on a linux box. What I discovered is that the version of autoconf and automake on OSX can generate a “configure” file which doesn’t work as expected on linux (at least one with gcc 4.3) — specifically, the step “checking for working mktime…” can hang and eventually return “no”, when that is not the correct result. Apparently you need at least autoconf 2.62 in order to avoid this bug.

I figured as long as I was updating autoconf i’d update automake, m4, and libtool as well. Here’s the quick script (as always, I assume you prefer the installation prefix /usr/local as i do). It’s nothing too fancy, but the sequence of the installs is important:

curl -O http://mirrors.kernel.org/gnu/m4/m4-1.4.13.tar.gz
tar -xzvf m4-1.4.13.tar.gz
cd m4-1.4.13
./configure --prefix=/usr/local
make
sudo make install
cd ..
curl -O http://mirrors.kernel.org/gnu/autoconf/autoconf-2.65.tar.gz
tar -xzvf autoconf-2.65.tar.gz
cd autoconf-2.65
./configure --prefix=/usr/local # ironic, isn't it?
make
sudo make install
cd ..
# here you might want to restart your terminal session, to ensure the new autoconf is picked up and used in the rest of the script
curl -O http://mirrors.kernel.org/gnu/automake/automake-1.11.tar.gz
tar xzvf automake-1.11.tar.gz
cd automake-1.11
./configure --prefix=/usr/local
make
sudo make install
cd ..
curl -O http://mirrors.kernel.org/gnu/libtool/libtool-2.2.6b.tar.gz
tar xzvf libtool-2.2.6b.tar.gz
cd libtool-2.2.6b
./configure --prefix=/usr/local
make
sudo make install
and now, (assuming you have /usr/local in your path), when you use autotools your distribution should be correctly portable (at least in regards to this mktime bug).

分享到:
评论

相关推荐

    automake,autoconf编译大型项目例子

    3. **跨平台兼容性**:automake和autoconf的组合使得项目能在各种操作系统上编译,包括Unix、Linux、Mac OS X甚至Windows(通过MinGW)。 4. **测试集成**:automake支持集成测试框架,如CTest或CTestScript,使得...

    autoconf-2.62

    1. 兼容性:autoconf 2.62支持广泛的系统和编译器,包括Unix-like系统、Linux、FreeBSD、Mac OS X等,甚至对一些较旧的或者非主流的平台也有良好的支持。 2. 自动检测:通过.m4宏库,autoconf可以检测系统中的各种...

    automake-1.12.6.tar.gz

    6. **兼容性**: `automake` 可以在各种 Unix-like 操作系统上运行,包括 Linux、FreeBSD、Mac OS X 等。 在解压 `automake-1.12.6.tar.gz` 后,通常会得到一个名为 `automake-1.12.6` 的目录,其中包括以下内容: ...

    mac 下 ffmpeg 库文件及头文件

    在 Mac OS X 系统下,由于其跨平台的特性,FFmpeg 可以方便地进行编译和使用。本主题主要关注在 Mac 上构建 FFmpeg 库文件及其头文件的过程,这对于开发多媒体应用或进行相关系统集成至关重要。 首先,我们需要了解...

    mac 下安装php7全过程介绍

    在安装nginx过程中,若遇到“mcrypt.h not found”的错误提示,意味着需要先安装mcrypt库。按照错误提示,下载并安装libmcrypt库,然后重新尝试安装nginx。 7. 安装PHP7 最后,安装PHP7。以下是编译安装PHP7的步骤...

    libtool-2.4.6.tar.gz

    - **autoconf和automake**:libtool常与autoconf和automake一起使用,它们共同构成GNU软件构建系统的一部分,简化大型项目的构建过程。 - **pkg-config**:libtool可以配合pkg-config工具,方便地查询库的版本信息...

    openslide-java:Java与OpenSlide的绑定

    建造要求JDK 阿帕奇蚂蚁OpenSlide> = 3.4.0在Linux或Mac OS X上构建 ./configuremakemake install(如果从Git存储库构建,则首先需要安装autoconf,automake,libtool和pkg-config并运行autoreconf -i 。)Windows与...

    Shiranui:Shiranui是一种新的编程语言,支持实时测试驱动的编程

    $ autoreconf$ automake --add-missing$ autoreconf$ ./configure$ make如何在Mac OS上构建我使用Macports安装Boost。 $ export LIBRARY_PATH=$LIBRARY_PATH:/opt/local/lib$ export LD_LIBRARY_PATH=$LD_LIBRARY_...

    monodevelop-build:一步在OS X上构建MonoDevelop

    此存储库的目标是使在全新的OS X安装上构建...安装autoconf和automake 安装Xamarin.Mac和Mono开发套件 克隆mono / monodevelop仓库 配置和构建monodevelop,包括OS X应用程序捆绑包 本身打开主要的MonoDevelop工作区

    coldbrew:Mac OS X的基于AC的软件包管理器

    Autotools是一组用于构建源代码的工具,包括Autoconf、Automake和Libtool等。它们通过生成Makefile.in和configure脚本,使得源代码可以适应不同的编译环境。Autotools通常用于跨平台的开源项目,以确保软件在各种...

    libmodbus:适用于Linux,Mac OS X,FreeBSD,QNX和Windows的Modbus库

    该库是用C语言编写的,旨在在Linux,Mac OS X,FreeBSD和QNX和Windows上运行。安装您只需要安装automake,autoconf,libtool和C编译器(gcc或clang)来编译库,并安装asciidoc和xml来生成文档(可选)。 要安装,只...

    protobuff安装包

    sudo apt-get install autoconf automake libtool curl make g++ unzip ``` 然后,下载protobuf的源代码包`protobuf-3.15.8`并解压: ```bash wget ...

    libtiff.zip

    3. **依赖安装**:确保系统已经安装了必要的依赖,如Xcode开发者工具,它包含了编译所需的GCC或Clang编译器,以及autoconf、automake、libtool等构建工具。 4. **配置**:运行`./configure`脚本,这个脚本会检查...

    CentOS 5.5 挂载Windows NTFS 文件系统.txt

    NTFS-3G是一款开源的NTFS文件系统驱动程序,它不仅提供了对NTFS文件系统的完整读写支持,还具有跨平台兼容性,可以在多种操作系统中使用,包括Linux、Mac OS X和各种Unix系统。 安装NTFS-3G的步骤大致如下: 1. **...

    ijkplayer_ios

    同时,还需要配置好Homebrew(一个包管理器)来安装编译ijkplayer所需的依赖库,如autoconf、automake、libtool等。 四、编译流程 1. 获取源码:从ijkplayer的GitHub仓库下载源码。 2. 配置环境:确保安装了Xcode,...

    php缓存加速器eAccelerator配置详解.doc

    1. 安装 eAccelerator 需要支持的平台,包括 Linux, FreeBSD, OpenBSD, Mac OS X, Solaris, AIX en HP-UX。 2. 系统要求包括 php4 或 php5,autoconf,automake,libtool,m4 等。 3. 安装 eAccelerator 需要下载...

    opencore-amr-js

    opencore-amr-js Javascript中...env.shsudo apt-get install nodejs-legacy安装automake和autoconf工具: sudo apt-get install libtool automake autoconf 在项目源代码树的js目录下运行make 。在Mac OS X下构建安装

    海曼USRP使用说明.pdf

    它可以运行在Windows、Linux和Mac OS上。 对于Linux环境,UHD的安装通常包括以下步骤: 1. **安装依赖库**:首先安装UHD所需的依赖库。 2. **获取源码**:从官方仓库获取UHD的源码。 3. **配置与编译**:配置并...

    libmad库 (源文件+编译(安装)方法)

    - **跨平台**:支持多种操作系统,如Linux、Windows、Mac OS等。 - **API简洁**:提供简洁的C语言接口,方便开发者集成到自己的项目中。 ### 2. 源文件获取 libmad的源代码通常以tar.gz或tbz2格式发布,如你提供的...

Global site tag (gtag.js) - Google Analytics