如何编译安装Bundler

 前几天一直忙录公司招聘的事情,没有更新博客。上一篇博客我们讨论了Bundler的安装和配置,今天我们来讨论一下Bundler的编译方法。笔者主要是在Ubuntu进行下面的编译安装工作,而Windows下如果已经装了Cygywin,整个过程大同小异。

  编译安装Bundler比直接安装它编译好的二进制文件繁琐的多,因为它依赖的库较多。整个过程如下所示:

一、Bundler源码包的获取

1. 到 http://phototour.cs.washington.edu/bundler/下载Bundler的源码包。Windows用户可以直接下载 bundler-v0.4-source.zip;Linux用户可以直接下载 bundler-v0.4-source.tar.gz,或直接在终端运行如下代码获取源码包:

  
  
wget http: // phototour.cs.washington.edu/bundler/distr/bundler-v0.4-source.tar.gz

2. 下载完成后,解压该源码包:

  
  
tar - zxvf bundler - v0. 4 - source.tar.gz

二、GFortran的安装

  Bundler所依赖的库中有些库是用Fortran写成的。为了编译Fortran程序,需要安装GFortran编译器。

  
  
sudo apt - get install gfortran

三、编译 / 安装依赖库

  Bundler所依赖的外部库列表如下:

  • LAPACK    :线性代数计算库
  • BLAS    :基础线性代数子程序,在LAPACK包中有自带,但需进行设置
  • libjpeg     :jpeg库,Ubuntu已自带
  • libz     :通用目的的压缩库

1. LAPACK、BLAS的编译

  LAPACK是一个高性能的线性代数计算库。我已经在Ubuntu下编译成功,不想编译它的读者可以直接下载我编译的结果lapack4Bundler.zip,解压后共3个文件,将它们拷贝到Bundler工程的lib文件夹里即可。如果想体验LAPACK的编译过程,则可以参考下面几步:

  首先下载LAPACK编译包,下载地址为: http://www.netlib.org/lapack/#_strong_lapack_version_3_3_0_strong,目前官方放出的最新版是lapack-3.3.0.tgz

  
  
wget http: // www.netlib.org/lapack/lapack-3.3.0.tgz

  下载完后解压:

  
  
tar - zxvf lapack - 3.3 . 0 .tgz

  在make之前,需要先创建一个make.inc文件,可以直接根据make.inc.example创建:

  
  
cd lapack - 3.3 . 0 cp make.inc.example make.inc

  如果是使用Ubuntu+gfortran,则无须更改make.inc里的内容,否则需要根据系统环境和编译器修改文件里对应的选项。LAPACK依赖BLAS,因此在编译LAPACK前需要提供BLAS包,所幸LAPACK里已经集成了BLAS包,但默认并不编译它。要想编译LAPACK前先编译BLAS,需要修改一下makefile:

  
  
gedit Makefile

  光标定位到第11行并将内容改为:

  
  
lib: blaslib lapacklib tmglib

  保存退出,然后开始make整个工程。

  
  
make

  编译完成后,目录下将生成blas_LINUX.a、lapack_LINUX.a和tmglib_LINUX.a三个文件。如图1所示。

  

                         图1   LAPACK编译结果

  将这三个文件分别更名为: libblas.a,liblapack.a,libtmglib.a并复制到bundler-vX.X-source/lib目录下。

2. zlib的编译安装

   zlib是提供数据压缩用的函式库,由Jean-loup Gailly与Mark Adler所开发,初版0.9版在1995年5月1日发表。zlib使用DEFLATE算法,最初是为libpng函式库所写的,后来普遍为许多软件所使用。此函式库为自由软件,使用zlib授权。截至2007年3月,zlib是包含在Coverity的美国国土安全部赞助者选择继续审查的开源项目。

  zlib的官方主页为: http://www.zlib.net/,目前最新版为:zlib-1.2.5

  
  
wget http: // zlib.net/zlib-1.2.5.tar.gz

  完成后解压:

  
  
tar - zxvf zlib - 1.2 . 5 .tar.gz

  cd进去编译安装:

  
  
cd zlib-1.2.5
. / configure make sudo make install

四、编译安装Bundler

  回到Bundler的工程目录,make进行编译安装。

  
  
make

  完成后在bin目录下就会看到新生成的bundler可执行文件。

五、测试Bundler

  参考上一篇博文,将SIFT文件拷贝到bin目录,然后在终端执行:

  
  
. / RunBundler.sh examples / ET

  完成后,提示运行成功,如图2所示。

                图2  Bundler运行结果

  • 0
    点赞
  • 7
    收藏
    觉得还不错? 一键收藏
  • 1
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值