NFC学习笔记二——Libnfc简介与安装

一直想把自己对过的英文文章做一下翻译记录下来,趁着学习NFC,现将libnfc首页的对libnfc介绍和在不同操作系统上对libnfc安装的文章做一下翻译,一方面提高一下自己的英语,另一方面学习一下libnfc。

原文地址:http://nfc-tools.org/index.php?title=Libnfc

公共平台独立的近场通讯(NFC)库

libnfc是GNU公共许可正下发布的第一个免费的底层的NFC开发包和编程API。它对任何人事完全免费和公开的。这个列表显示了libnfc支持的功能。libnfc支持所有的主流操作系统,包括GNU/Linux、Mac OS X和windows。编译环境应该基于POSIX系统内核。libnfc库支持各种NFC硬件库,如dongles、flat
和 OEM设备等。libnfc当前支持ISO/IEC 14443协议A、B,Felica、Jewel/Topaz标签和发起者和接收者的点对点数据交换。

下载

稳定版本

稳定版本可以从此下载

开发版本

通过Git从http://code.google.com/p/libnfc/source/checkout 获取当前版本

git clone https://code.google.com/p/libnfc/

注:如果你想支持所有的libnfc硬件启动,则你还需要libusb库和头文件同时还需要*BSD和GNU/Linux操作系统以及libpcsclite库和头文件

在MaxOS、GNU/Linux、*BSD和部分POSIX系统下面,你可以用下面的命令编译libnfc库:

autoreconf -vis
./configure --enable-doc
make
sudo make install

生成文档则用下面的命令:

make doc

第三方包

Thomas Hood ——Ubuntu

Nobuhiro Iwamatsu、 Ludovic Rousseau——Debian

安装

这个章节将描述每个平台是如何安装和使用libnfc库的。由于一些依赖库(libusb、PSCS-Lite)的使用,每个平台的情况是不一样的。

POSIX 系统

获取编译所需的所有依赖包以及头文件:libsub、pcsc-lite,下载libnfc:

$ wget http://libnfc.googlecode.com/files/libnfc-x.x.x.tar.gz
$ tar -xvzf libnfc-x.x.x.tar.gz

配置和编译:

$ cd libnfc-x.x.x
$ ./configure --prefix=/usr --sysconfdir=/etc
$ make

注:./configure的安装目录前缀也可设置为/usr/local,sysconfidir可设置为$PREFIX/etc作为默认值。如果你想要其他的启动配置,可以使用 --prefix和sysconfdir选项。

你必须要有运行时依赖库:libusb、pcsc-lit(with pscsd)、libccid

插入NFC设备,通过下面命令使用libnfc探测这个设备:

$ libnfc/utils/nfc-scan-device -v

放置一个标签,然后通过下面的命令显示:

$ libnfc/utils/nfc-list

安装libnfc:

$ sudo make install

Debian/Ubuntu

获取所需的所有的依赖库

 $ sudo apt-get install libusb-dev libpcsclite-dev

下载libnfc:

git clone https://code.google.com/p/libnfc/
cd libnfc
git checkout libnfc-1.7.1
git clean -d -f -x
#rm ../libnfc*.deb
git remote|grep -q anonscm||git remote add anonscm git://anonscm.debian.org/collab-maint/libnfc.git
git fetch anonscm
git checkout remotes/anonscm/master debian
git reset
dpkg-buildpackage -uc -us -b

获取所需的运行时依赖库

$ sudo apt-get install libusb-0.1-4 libpcsclite1 libccid pcscd

安装libnfc

$ sudo dpkg -i ../libnfc*.deb

插入NFC设备,放置一个标签,测试安装

$ nfc-list

FreeBSD

由Romain Tartiere提供的libnfc源,在此先对他进行感谢。

安装源

 cd /usr/ports/devel/libnfc/ && make install clean

添加libnfc包

 pkg_add -r libnfc

Gentoo

感谢Mike Auty,libnfc在Gentoo上面有了一个简易安装的方法:

 $ emerge libnfc

Fedora 12+

感谢 Francois kooman,libnfc目前被包括在了Fedora 12+的分发包中。

使用命令号接口

 # yum install libnfc libnfc-devel libnfc-examples

libnfc-devel包含了开发的头文件和库,这些仅仅是编译自己的程序所需的libnfc库。

libnfc-examples包含了一些例子工具比如nfc-list。

使用画图工具

系统->管理员->添加删除程序

搜索libnfc然后选择合适的安装包

Mac OS X

安装依赖包,需要涌动啊 MacPort下载管理 器,下载地址为:http://distfiles.macports.org/MacPorts/

安装MacPorts可以通过这边文章进行安装:http://www.macports.org/install.php

安装pkg-config:

 $ sudo port install pkgconfig

安装glib:

 $ sudo port install glib

安装libusb:

 $ sudo port install libusb

使用最近版本的OS X时,需要确定其是 x86_64的版本

 $ lipo -info /usr/local/lib/libusb.dylib

由于libnfc的MacPort不是实时更新的,所以需要根据手动安装向导使用自动工具的方式进行编译libnfc的编译

官方的MacPort站点: http://www.macports.org/,MacPorts使用和安装的教程:http://guide.macports.org

Windows

Windows的安装复杂一些,将在下篇文章中做翻译。

NFC学习笔记二——Libnfc简介与安装

时间: 2024-09-26 19:42:00

NFC学习笔记二——Libnfc简介与安装的相关文章

JSP学习笔记(二):Tomcat服务器的安装及配置

一.Tomcat的下载及安装. 前往Tomcat官网下载安装包或者免安装压缩包.链接http://tomcat.apache.org/ 这里,我选择的是Tomcat8.0,而不是最新的Tomcat9.0,这是因为Eclipse现在支持的最新的是8.0. 选择下载的是安装文件,下载后为,点击安装. 安装时可以配置HTTP访问的端口,默认的是8080(localhost:8080),在下图这个界面时是可以进行配置的,也可以在安装完后通过配置文件server.xml进行修改. 进行JRE的路径设置,如

Java基础学习笔记二十四 MySQL安装图解

.MYSQL的安装 1.打开下载的mysql安装文件mysql-5.5.27-win32.zip,双击解压缩,运行“setup.exe”. 2.选择安装类型,有“Typical(默认)”.“Complete(完全)”.“Custom(用户自定义)”三个选项,选择“Custom”,按“next”键继续. 3.点选“Browse”,手动指定安装目录. 4.填上安装目录,我的是“F:\Server\MySQL\MySQL Server 5.0”,也建议不要放在与操作系统同一分区,这样可以防止系统备份还

Maven学习笔记(二) :Maven的安装与配置

在Windows上安装Maven:  1.  首先检查JDK安装 通过命令行执行命令:echo %JAVA_HOME%和 java  -version,可以查看当前java的安装目录及java的版本,maven要求JDK的版本必须在1.4以上. 2. 下载Maven 前往maven的下载页面:http://maven.apache.org/download.cgi下载最新或稳定版的maven,如:apache-maven-3.2.3-bin.zip. 3. 安装Maven 将压缩文件解压到你想要

NFC学习笔记——三(在windows操作系统上安装libnfc)

本篇翻译文章: 这篇文章主要是说明如何在windows操作系统上安装.配置和使用libnfc. 一.基本信息 1.操作系统: Windows Vista Home Premium SP 2 2.硬件信息: System: Dell Inspiron 1720 Processor: Intel Core 2 Duo CPU T9300 @ 2.5GHz 2.5GHz System type: 32-bit Operating System 3.所需软件: 在windows操作系统上安装软件需要下列

马哥学习笔记二十五——ISCSI协议,架构及其安装配置

ISCSI监听在tcp/3260端口 iSCSI Target:iscsi-target-utils 客户端认正方式: 1.基于IP 2.基于用户,CHAP tgtadm:命令行工具,模式化命令 --mode 常用模式:target,logicalunit,account target --op new.delete.show.update.bind.unbind logicalunit --op new.delete account --op new.delete.bind.unbind --

2. 蛤蟆Python脚本学习笔记二基本命令畅玩

2. 蛤蟆Python脚本学习笔记二基本命令畅玩 本篇名言:"成功源于发现细节,没有细节就没有机遇,留心细节意味着创造机遇.一件司空见惯的小事或许就可能是打开机遇宝库的钥匙!" 下班回家,咱先来看下一些常用的基本命令. 欢迎转载,转载请标明出处:http://blog.csdn.net/notbaron/article/details/48092873 1.  数字和表达式 看下图1一就能说明很多问题: 加法,整除,浮点除,取模,幂乘方等.是不是很直接也很粗暴. 关于上限,蛤蟆不太清楚

Android学习笔记二

17. 在ContentProvider中定义的getType()方法是定义URI的内容类型. 18. SQLiteDatabase类中的insert/delete/update/query方法其实也挺好用的,我在EquipmentProvider类中做了实现 19. Android专门有个单元测试项目(Android Test Project),在这个项目中,可以新建一个继承AndroidTestCase类的具体测试类来单元测试某个功能.我新建了一个AndroidTestProject项目,在

CCNA 学习笔记(二)--CISCO设备初接触

CCNA 学习笔记(二)--初识CISCO设备 上一章我们认识到网络方面的基础知识了,现在我们正式接触CISCO设备. 1.首先我们先了解一台CISCO设备里的主要组件: ROM(只读存储器):主要保存着开机自检软件.保存路由器启动引导程序. RAM(随机存储器):断电会把数据丢失.可以存储配置文件.>>>相当于PC的内存 NVRAM(非易失存储器):断电不会丢失.用来保存用户配置文件.IP.startup-config.主机名.路由协议等等. FLASH(闪存):主要是保存完整的   

spidering hacks 学习笔记(二)

看过去很乱,学习的记录东西而已,等我读完这本书,就把笔记给整理下!嘿嘿 ? 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54 55 56 57 58 59 60 61 62 63 64 65 66 67 68 69 70 71 72 73 74