网址:http://www.cnblogs.com/darkknightzh/p/4867372.html。未经允许,严禁转载。

没怎么用过linux,对于MSYS和MinGW也基本没用过,因而编译Rel_4.1.0库的时候,遇到了不少问题。特此整理能成功的步骤。

按照Rel_4.1.0/INSTALL_WINDOWS.txt的说明:

1.安装MSYS and MinGW

1)下载MSYS和MinGW-get:

- MSYS: http://sourceforge.net/projects/mingw-w64/files/External%20binary%20packages%20%28Win64%20hosted%29/MSYS%20%2832-bit%29/MSYS-20111123.zip/download

- MinGW-get: http://sourceforge.net/projects/mingw/files/Installer/mingw-get/mingw-get-0.5-beta-20120426-1/mingw-get-0.5-mingw32-beta-20120426-1-bin.zip/download

2)下载MinGW对应系统的包:

- MinGW (32-bit): http://sourceforge.net/projects/mingw-w64/files/Toolchains%20targetting%20Win32/Personal%20Builds/megasoft78/basic/mingw-w64-bin_i686-mingw_4.5.2_20110223_megasoft78.7z/download

- MinGW (64-bit): http://sourceforge.net/projects/mingw-w64/files/Multilib%20Toolchains%28Targetting%20Win32%20and%20Win64%29/megasoft78/mingw-w64-bin_x86_64-mingw_4.5.2_20110222_multilib_megasoft78.7z/download

说明:64位的MinGW能编译32位和64位的NBIS二进制文件。

3)将2)中的MinGW安装包解压到”C:\mingw64\” 或者 “C:\mingw32\”

4)将1)中的MSYS安装包解压到”C:\msys\”

5)将1)中的MinGW-get包解压到3)中的MinGW文件夹(”C:\mingw64\”或”C:\mingw32\”)

6)双击4)中文件夹里面的msys.bat,并运行如下命令:

  1. /postinstall /pi.sh

对于提示的问题,键入‘y’,同时提供3)的路径。

7)运行如下命令,最终配置MSYS和MinGW:

  1. mingw-get install mingw32-autotools

说明:此处需要fq。开始运行好多次,都提示失败。最终fq后能成功…哎

2. 编译Rel_4.1.0

1)如上,安装好MSYS和MinGW环境

2)运行如下命令,设置MSYS和MinGW的编译环境:

  1. ./setup.sh <TARGET INSTALLATION DIR> --MSYS [--STDLIBS] [-- | --]

说明:<TARGET INSTALLATION DIR>必须为绝对路径,且必须真实存在,否则会提示无此文件夹。例如:

  1. ./setup.sh C:/SRC/NBIS/Main --MSYS --

注:由于对linux不熟,自己这步怎么也不成功。开始提示:

  1. gcc.exe: am_big_endian.c: No such file or directory
  2.  
  3. gcc.exe: no input files /bin/setup.sh:
  4.  
  5. line : ./am_big_endian: No such file or directory
  6.  
  7. Failed Setup - Cannot determine target machine endianness!

实际上,Rel_4.1.0文件夹里面有am_big_endian.c。即便运行

  1. /Rel_4.1.0/setup.sh C:/msys/Rel410 --MSYS --

依旧提示上面的错误。

之后将Rel_4.1.0里面所有文件拷贝到C:/SRC/NBIS/Main文件夹内,运行下面的 (b) 和 (c) 能成功,但是步骤3)死活不成功,提示找不到文件。

后来,换了一种方式:

(a) 将Rel_4.1.0拷到”C:\msys\”文件夹下(此处不知道linux对Rel_4.1.0这种文件夹如何识别,因而改成了Rel410)

(b) 运行

  1. cd Rel410/

(c) 运行

  1. ./setup.sh C:/msys/Rel410 --MSYS --

之后这步成功。

3)(依旧在Rel410/文件夹内)运行:

  1. make config

之后,运行

  1. make it

4)运行

  1. make install

5)运行

  1. make catalog

之后编译成功。

/////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////

在C:\msys\Rel410\mindtct\bin文件夹下会有mindtct.exe文件,可生成指纹的特征点吧(具体不太清楚这些文件都有什么用处)。将该文件拷贝到C盘根目录,打开cmd,输入mindtct.exe,会有如下提示:

输入mindtct.exe img1gray.jpg img1.xyz,如下:

可以生成一系列的文件(红框中所示):

注意,img1gray.jpg需要是8bit的图像,不能是24bit的,否则会提示:

img1gray.jpg如下图所示:

(原)Windows下编译指纹识别的Rel_4.1.0库的更多相关文章

  1. (转)windows下编译最新的x264

    二:<windows下编译最新的x264> X264更新的比较快,每天都有更新,但算法模块,基本结构是没有多大变化的.x264都是用C语言写的包括C99,但C99语法是在VC中是没法用的( ...

  2. [转] Windows下编译OpenSSL

    简述 OpenSSL是一个开源的第三方库,它实现了SSL(Secure SocketLayer)和TLS(Transport Layer Security)协议,被广泛企业应用所采用.对于一般的开发人 ...

  3. Windows下编译objective-C

    Windows下编译objective-C 2011-08-31 14:32 630人阅读 评论(0) 收藏 举报 windowscocoa工具objective clibraryxcode   目录 ...

  4. 在Windows下编译FFmpeg详细说明

    MinGW:一个可自由使用和自由发布的Windows特定头文件和使用GNC工具集导入库的集合,允许你生成本地的Windows程序而不需要第三方C运行时 MinGW,即 Minimalist GNU F ...

  5. 如何在WINDOWS下编译BOOST C++库 .

    如何在WINDOWS下编译BOOST C++库 cheungmine 2008-6-25   写出来,怕自己以后忘记了,也为初学者参考.使用VC8.0和boost1.35.0.   1)下载boost ...

  6. 在Windows下编译OpenSSL(VS2005和VC6)

    需要说明的是请一定安装openssl-0.9.8a .  openssl-1.0.0我没有编译成功. 如何在Windows下编译OpenSSL (Vs2005使用Vc8的cl编译器)1.安装Activ ...

  7. windows下编译java源文件的编码错误

    import java.util.Arrays;public class ArrayAsAReference{ public static void main(String[] args) { int ...

  8. Windows下编译SDL

    Windows下编译SDL的理由我就不多说了,无论用VS来编译或调试SDL库都是很方便的.而且SDL源代码中也包含了VC工程,你所要做的只是解压VC工程,进行适当的配置,然后编译.调试. 编译SDL大 ...

  9. Windows下编译安装 FFmpeg

    在Linux/Mac下编译 ffmpeg是非常方便的.但要在 Windows下编译 ffmpeg还真要花点时间.以下就是在 Windowns下编译ffmpeg的步骤: 一.安装Cygwin 在wind ...

随机推荐

  1. Java中list<Object>集合去重实例

    一:Java中list去重的方法很多,下面说一下其中一种方法:把list里的对象遍历一遍,用list.contain(),如果不存在就放入到另外一个list集合中: 二:实例 这里需要注意的是:使用c ...

  2. show_space/get_alert_log/get_trace_file

    1.get_alert_log 获取alert文件的路径和名称 set serveroutput on        --设置输出,让sqlplus在屏幕上可以输出.(要加入到login.sql中!) ...

  3. phantomjs初入门

    对DOM操作,而调试过程必不可少,对于那些微乎其微的方法,总显得余力不足.在这里PhantomJS就就行了很好的实现. PhantomJS是一个拥有JavaScript API的无界面WebKit 正 ...

  4. AngularJS中的控制器示例_2

    <!doctype html> <html ng-app="myApp"> <head> <script src="C:\\Us ...

  5. Codeforces 582B Once Again

    http://codeforces.com/contest/582/problem/B 题目大意:给出一个序列,是由一个长度为n的序列复制T次得到的,问最长非下降子序列的长度. 思路:我们建立一个n* ...

  6. UML--建模

    建模公式 这种精华的东西,一定是值得研读和实践的! myself:人,事,物,规则. 人,业务主角.业务工人.参与者.如果应用到教务系统中,就是管理员,主任,老师的关系. 事,业务用例,系统用例. 物 ...

  7. Compiled Language vs Scripting Language

    Referrence: Blog Compiled Languages Example: C, C++, Java Source code needs to be compiled into bits ...

  8. 链表的基本操作(Basic Operations on a Linked List)

    链表可以进行如下操作: 创建新链表 增加新元素 遍历链表 打印链表 下面定义了对应以上操作的基本函数. 创建新链表 新链表创建之后里面并没有任何元素,我们要为数据在内存中分配节点,再将节点插入链表.由 ...

  9. UVa232.Crossword Answers

    题目链接:http://uva.onlinejudge.org/index.php?option=com_onlinejudge&Itemid=8&page=show_problem& ...

  10. hdu 4007 Dave(线性探查+枚举)

    Problem Description Recently, Dave is boring, so he often walks around. He finds that some places ar ...