linux下automake用法(转)
作为Linux
下的程序开发人员,大家一定都遇到过Makefile
,用make
命令来编译自己写的程序确实是很方便。一般情况下,大家都是手工写一个简单Makefile
,如果要想写出一个符合自由软件惯例的Makefile
就不那么容易了。
在本文中,将给大家介绍如何使用 autoconf
和automake
两个工具来帮助我们自动地生成符合自由软件惯例的Makefile
,这样就可以象常见的GNU
程序一样,只要使用“./configure”
,“make”
,“make install”
就可以把程序安装到Linux
系统中去了。这将特别适合想做开放源代码软件的程序开发人员,又或如果你只是自己写些小的Toy
程序,那么这个文章对你也会有很大的帮助。
编译一个简单的源文件main.c,需要自动生成一个makefile,以下是步骤:
第一步:
----------
在/root/project/main目录下创建一个文件main.c,其内容如下:
------------------------------------------------
#include <stdio.h>
int main(int argc, char** argv)
{
printf("Hello, Auto Makefile!\n");
return 0;
}
------------------------------------------------
此时状态如下:
[root@localhost main]# pwd
/root/project/main
[root@localhost main]# ls
main.c
[root@localhost main]#
第二步:
----------
运行 autoscan
, 自动创建两个文件: autoscan.log configure.scan
此时状态如下:
[root@localhost main]# autoscan
[root@localhost main]# ls
autoscan.log configure.scan
main.c
[root@localhost main]#
第三步:
----------
修改configure.scan的文件名为configure.in
查看configure.in
的内容:
------------------------------------------------
# -*- Autoconf -*-
# Process this file with autoconf to produce a configure script.
AC_PREREQ(2.61)
AC_INIT(FULL-PACKAGE-NAME, VERSION, BUG-REPORT-ADDRESS)
AC_CONFIG_SRCDIR([main.c])
AC_CONFIG_HEADER([config.h])
# Checks for programs.
AC_PROG_CC
# Checks for libraries.
# Checks for header files.
# Checks for typedefs, structures, and compiler characteristics.
# Checks for library functions.
AC_OUTPUT
------------------------------------------------
解读以上的文件:
------------------------------------------------
相关文档:
1. HCI层协议概述:
HCI提供一套统一的方法来访问Bluetooth底层。如图所示:
从图上可以看出,Host Controller Interface(HCI) 就是用来沟通Host和Module。Host通常就是PC, Module则是以各种物理连接形式(USB,serial,pc-card等)连接到PC上的bluetooth Dongle。
在Host这一端:application,SDP,L2cap等协议 ......
Service Discovery Protocol(SDP)提供一种能力,让应用程序有方法发现哪种服务可用以及这种服务的特性。
服务发现协议(SDP或Bluetooth SDP)在蓝牙协议栈中对蓝牙环境中的应用程序有特殊的含意,发现哪个服务是可用的和确定这些可用服务的特征。SDP定义了bluetooth client发现可用bluetooth server服务和它们的特征的方法。 ......
一:前言
最近在研究android的sensor driver,主要是E-compass,其中用到了Linux input子系统.在网上也看了很多这方面的资料,感觉还是这篇分析的比较细致透彻,因此转载一下以便自己学习,同时和大家分享!
(这篇博客主要是以键盘驱动为例的,不过讲解的是Linux Input Subsystem,可以仔细的研究一下!)
键盘驱动将检 ......
系统信息
uptime
uptime 给出下列信息的一行显示. 当前时间, 系统运行了多久时间, 当前登陆的用户有多少, 以及前1,5和15分钟系统的平均负载.
联机信息-时间,显示如下
11:27pm up 9 days, 7:12, 3 user, load average: 0.07, 0.12, 0.14
当前系统时间 系统运行时间 当前在线用户数 系统负荷 1分钟前 5 分钟前 15 分钟 ......