GNU Libtool】的更多相关文章

这篇文档向大家介绍 GNU Libtool 的用途及基本使用方法,同时描述如何结合 GNU Autoconf 和 Automake 来使用 Libtool. 3 评论: 吴 小虎, 程序员, 天用唯勤 2010 年 7 月 12 日 内容 介绍 在不同的系统中建立动态链接库的方法有很大的差别,这主要是因为每个系统对动态链接库的看法和实现并不相同,以及编译器对动态链接库支持的选项也不太一样.对于开发人员,如果尝试将使用动态库的软件在这些系统之间移植,需要参考枯涩难懂的系统手册,以及修改相应的 Ma…
Fastbit (WAH)的代码可在链接中下载 安装以及运行命令如下: 解压命令: $ tar -zxvf fastbit-ibis1.3.8.tar.gz 安装命令: $ cd fastbit-ibis1.3.8 $ ./configure $ make 由于安装时Makefile使用了GNU Libtool创建库,生成Libtool的库文件libfastbit.la,这个文件在./src下. 假设当前测试文件名为test.cpp,它在fastbit-ibis1.3.8下,编译运行test.c…
转自http://ruby-china.org/topics/2434 系列文章原载于自己的博客,TOPI.CO (http://topi.co) ,某天不小心就push错啦,懒得从头再来,上传到Ruby-China来,一是方便自己回顾,另外也方便跟我一样的初学者 这些软件包都是在安装CoreSeek4.01时必须的.但后来者也代码升级,CoreSeek安装已经不需要. ###安装m4 wget http://mirrors.kernel.org/gnu/m4/m4-1.4.13.tar.gz…
libtool 创建库的工具 1. 背景 在不同的系统中建立动态链接库的方法有很大的差别,这主要是因为每个系统对动态链接库的用法和实现并不相同,以及编译器对动态链接库支持的选项也不太一样. 对于开发人员,如果尝试将使用动态库的软件在这些系统之间移植,需要参考枯涩难懂的系统手册,以及修改相应的 Makefile,这一工作是乏味的,并且具有一定的难度. 使用 GNU Libtool 可以容易的在不同的系统中建立动态链接库.它通过一个称为 Libtool 库的抽象,隐藏了不同系统之间的差异,给开发人员…
autoconf --version autoconf (GNU Autoconf) 2.59 automake --version automake (GNU automake) 1.9.6 m4 --version GNU M4 1.4.4 libtool --version ltmain.sh (GNU libtool) 1.5.22 如果在上述版本的libtool遇到如下错误: configure.ac:64: error: possibly undefined macro: AC_PR…
测试平台:Center OS 1.设置环境,升级/安装系统基础依赖包:m4.autoconf.automake.libtool #设置路径和中文环境: $ export PATH=/usr/local/bin:$PATH $ export LC_ALL=zh_CN.UTF-8 $ export LANG=zh_CN.UTF-8 #下载安装基础依赖包 $ curl -O -L http://mirrors.kernel.org/gnu/m4/m4-1.4.13.tar.gz $ tar -xzvf…
前言 这是系列文章,它们由<编译可在Android上运行的glib库>及其他4篇文章组成,这4篇文章在“编译依赖库”一节中列出.由于glib库依赖于其他第三方库,所以需要先将依赖的第三方库交叉编译到Android平台上才能成功的编译glib库,系列文章中除<编译可在Android上运行的glib库>外的其他交叉编译文章均是介绍如何对glib依赖库进行交叉编译.以上,所以叫系列文章,因为这些文章完整的介绍了如何编译可在Android上运行的glib库. 文章价值 这些文章的核心价值是…
前面在<大规模互联网应用Redis架构要点>和<Redis官方集群方案 Redis Cluster>两篇文章中分别介绍了多Redis服务器集群的两种方式,它们是基于客户端sharding的Redis Sharding和基于服务端sharding的Redis Cluster. 客户端sharding技术其优势在于服务端的Redis实例彼此独立,相互无关联,每个Redis实例像单服务器一样运行,非常容易线性扩展,系统的灵活性很强.其不足之处在于: 1. 由于sharding处理放到客户…
使用automake快速生成编译的Makefile 1,确保自己装有的软件automake autoconf 2, 1)执行autoscan 并将生成的configure.scan重命名为configure.in 添加一行参数:AM_INIT_AUTOMAKE(hello, 1.0) -- 程序名 版本号 如果AC_CONFIG_FILES([Makefile])存在则不用管,否则AC_OUTPUT(Makefile) --指的是configure 运行后生成的文件名 2)执行aclocal->…
Linux中的动态库和静态库(.a/.la/.so/.o) Linux中的动态库和静态库(.a/.la/.so/.o) C/C++程序编译的过程 .o文件(目标文件) 创建atoi.o 使用atoi.o .a文件(静态库文件) 创建atoi.a 使用atoi.a .so文件(共享库文件) 创建atoi.so 使用atoi.so .la文件(libtool archive) libtool的使用 1. 创建 Libtool 对象文件 2. 创建 Libtool 库 3. 安装 Libtool 库…
搭建环境:Centos x 6.5  64bit (后来:我才知道原来官网上发布的就是64位的,不过这个对我来说是个学习过程,对以后进行其他平台编译的时候有帮助!) 1.安装JDK 我这里用的是64位机,要下载对应的64位的JDK,下载地址:http://www.oracle.com/technetwork/cn/java/javase/downloads/jdk7-downloads-1880260-zhs.html, 选择对应的JDK版本,解压JDK,然后配置环境变量, vi /etc/pr…
一.安装前准备 1.下载所需软件包: apr | http://apache.etoak.com/apr/ apr-util | http://apache.etoak.com/apr/ autoconf | http://ftp.gnu.org/gnu/autoconf/ curl | http://curl.haxx.se/download/ freetype | http://download.savannah.gnu.org/releases/freetype/ httpd | http…
redis集群在启动的时候就自动在多个节点间分好片.同时提供了分片之间的可用性:当一部分redis节点故障或网络中断,集群也能继续工作.但是,当大面积的节点故障或网络中断(比如大部分的主节点都不可用了),集群就不能使用. 所以,从实用性的角度,Redis集群提供以下功能: 自动把数据切分到多个redis节点中 当一部分节点挂了或不可达,集群依然能继续工作 Redis集群的TCP端口 redis集群中的每个节点都需要建立2个tcp连接,监听这2个端口:一个端口称之为“客户端端口”,用于接受客户端指…
mysql从5.5版本开始,不再使用./configure编译,而是使用cmake编译器,具体的cmake编译参数可以参考mysql官网文档(※ 非常重要) http://dev.mysql.com/doc/refman/5.5/en/source-configuration-options.html mysql-5.5.28.tar.gz源码包下载地址: http://down.51cto.com/data/700556 我的mysql目录配置如下: 安装路径:/usr/local/mysql…
这个..那个..后来发现..直接用jumbo就可以安装libevent.不过,学习一些automake的知识还是有好处的. 03机器也安装了. 这几天在阅读libevent源码,发现参考资料是基于libevent-2.1的版本,所以就去官网下载了2.1的版本: http://libevent.org/ (其实是在git下载的:https://github.com/libevent/libevent),版本应该是libevent-2.1.so.5.0.0 下载下来,发现目录里面没有常见的confi…
转:http://my.oschina.net/qihh/blog/66113?fromerr=6ej3CfGJ   无论对于一个初学者还是一个资深的Linux程序员,编写Makefile文件都是一件很麻烦的事:再者,开发人员应该把主要的精力放在程序代码的编写上,而在Makefile文件花费太多的精力显然是不明智的:还有,对于不同的处理器架构,往往编译器不同,环境不同,特别是一些嵌入式系统中的各种程序的编译,于是移植问题也使Makefile文件编写趋于复杂,也显得这个问题很重要.对于这些问题Li…
zedboard上移植OPENCV库 之前做了很多移植OPENCV库的工作,但是需要包含的各种库,需要交叉编译,X264 ,JPGE ,FFMPGE等等 注意:在<嵌入式系统软硬件协同设计实战指南>中13章中,说了需要关闭各种设置开关,根本原因是我们没有相应的库支持,所以我们如果需要在opencv中使用相应的库,那么就必须提前将各种库交叉编译好,放入交叉编译器的目录,我的交叉编译器安装目录/root/CodeSourcery/Sourcery_CodeBench_Lite_for_Xilinx…
因工作需要,要编译Object-C可用的Protocbuf,开始查资料, http://www.cnblogs.com/uniy/archive/2011/12/21/2296405.html 结果执行完 A. 下载Protocol Buffers将下载解压后的文件存放至Applications目录下,进到ProtocolBuffers-2.2.0-Source目录看看会发现 有个src目录.用命令切换至ProtocolBuffers-2.2.0-Source目录下. 下载地址: http://…
以前安装opencart的时候倒是不需要mcrypt 这个库.但是新版本需要了.加上自己的 是mac环境.当时闲麻烦,就一直没装.这次下午就寻思给装上吧! 1.首先你要先安装xcode这个工具.不然没办法编译! xcode这个可以在苹果appstore下载. 2.安装 command line tools   打开xcode .->> Preferences 然后点击command line tools   install  等下再完成安装就行了 也可以按照这个国外高人写的安装 https:/…
linux下文件的类型是不依赖于其后缀名的,但一般来讲:.o,是目标文件,相当于windows中的.obj文件.so 为共享库,是shared object,用于动态连接的,和dll差不多.a为静态库,是好多个.o合在一起,用于静态连接.la为libtool自动生成的一些共享库,vi编辑查看,主要记录了一些配置信息.可以用如下命令查看*.la文件的格式   $file *.la      *.la: ASCII English text所以可以用vi来查看其内容.@@@@@@@@@@@@@@@@…
Automake是用来根据Makefile.am生成Makefile.in的工具 标准Makefile目标 'make all' Build programs, libraries, documentation, etc. (same as 'make'). 'make install' Install what needs to be installed, copying the files from the package's tree to system-wide directories.…
Linux中.a,.la,.o,.so文件的意义和编程实现    Linux下文件的类型是不依赖于其后缀名的,但一般来讲:        .o,是目标文件,相当于windows中的.obj文件        .so 为共享库,是shared object,用于动态连接的,和dll差不多        .a为静态库,是好多个.o合在一起,用于静态连接        .la为libtool自动生成的一些共享库,vi编辑查看,主要记录了一些配置信息.可以用如下命令查看*.la文件的格式   $file…
SysBench是一款开源的.跨平台的.模块化的.多线程的性能测试工具,通过高负载地运行在数据库上,可以执行CPU/内存/线程/IO/数据库等方面的性能测试.用于评估操作系统的性能参数. 1          sysbench简介 Sysbench使得我们无需采用真正的复杂的数据库benchmark而获取系统的性能概况. 目前主要支持的数据库有mysql.oracle.postgresql. 可评估的系统性能参数有: 1.      Cpu性能 2.      内存分配与传输速度测试 3.   …
莱特币ltc在linux下的多种挖矿方案详解 4.0.1 Nvidia显卡Linux驱动Nvidia全部驱动:http://www.nvidia.cn/Download/index.aspx?lang=cnNvidia GeForce®驱动:http://www.geforce.cn/driversNVidia CUDA http://developer.nvidia.com/cuda/cuda-downloads http://developer.nvidia.com/cuda/cuda-to…
转载地址:http://www.mattvsworld.com/blog/2010/02/install-the-latest-autoconf-and-automake-on-mac-os-10-6/ 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 woul…
Makefile好难写 曾经也总结了一篇关于Makefile的文章<make和makefile的简单学习>.但是,总结完以后,发现写Makefile真的是一件非常痛苦的事情,的确非常痛苦.而更痛苦的是当需要将代码移植到别的系统上时,这就够你喝一壶的.再说了,作为程序员的我们,是不是更应该投入更多的精力到业务逻辑的编写与处理中呢,而并不是和Makefile纠结呢. 他们是怎么做到的? 不知道你是否阅读过一些Linux平台上开源的C或者C++项目,当你编译这些项目的时候,只需./configure…
第一步:常用工具安装:正所谓:"工欲善其事,必先利其器".我们常用的工具主要有GNU AutomakeGNU AutoconfGNU m4GNU Libtool1.查看自己系统中是否安装有这些工具终端输入命令:which autoconf2.如果没有装则安装终端输入命令:sudo apt-get install autoconf第二步:自动生成makefile的步骤  该步骤是一成不变的,需要改变的只是文件里的内容1.运行autoscan命令    扫描源代码以搜寻普通的可移植性问题,…
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 o…
1. autoconf-latest.tar.gz http://ftp.gnu.org/gnu/autoconf/ tar xzvf autoconf-latest.tar.gz ./configure --prefix=/home/stars/support/mongo-c/autoconf-2.69/install make && make install 设置PATH环境变量 2. pkg-config-0.29.tar.gz https://www.freedesktop.org…
在FFMPEG的官网上可以找到标准的配置文档...http://ffmpeg.org/trac/ffmpeg/wiki/MacOSXCompilationGuide 在开始前确保安装了XCODE而且也将Components中的CommandLine Tools安装了 1.安装Homebrew. 通过在命令终端执行以下命令行即可 ruby <(curl -fsSkL raw.github.com/mxcl/homebrew/go) HomeBrew的作用有点类似linux的apt-get,可以通过…