automake生成makefile和mpicc链接库
来源:互联网 发布:html json code标签 编辑:程序博客网 时间:2024/05/16 23:38
所必须的软件:autoconf/automake/m4/perl/libtool(其中libtool非必须)。
下面是项目的文件目录关系,主函数main在MPIFileClassify.c中:
终端:
cd MPIFileClassify //项目所在目录
autoscan //生成configure.scan文件
mv configure.scan configure.in //重命名configure.scan文件
vi configure.in //编辑configure.in,修改如下:
说明:AC_INIT(FILE):用来检查源代码所在的路径
AM_INIT_AUTOMAKE(PACKAGE,VERSION):这个宏是必须的,它描述将要生成的软件包的名字及其版本号。当使用make dist命令时,它会生成一个类似PACKAGE-VERSION.tar.gz的软件发行包。
AC_CONFIG_SRCDIR(FILE): 测试源文件,只写其中一个或按其默认
AC_CHECK_PROG(AC_PROG_CC):默认是gcc编译器,由于后面程序是要用mpicc编译器,在这里定义宏检查
AC_OUTPUT(Makefile):要输出Makefile,大小写似乎对后面有影响
回到终端:
aclocal //产生aclocal.m4
autoconf //生成configure文件。在执行./configure命令生成Makefile前,还需要一个文件Makefile.am,手动创建并编辑
vi Makefile.am //修改内容如下:
AUTOMAKE_OPTIONS:在执行automake 时,它会检查目录下是否存在标准GNU 软件包中应具备的各种文件,例如AUTHORS 、ChangeLog 、NEWS 等文件。将其设置成foreign 时,automake 会改用一般软件包的标准来检查。
CC=MPICC:指定使用mpicc编译器
CFLAGS=-L/usr/include/postgresql -lpq:编译使用到的postgresql的链接库(C语言连接postgresql的库,如果缺少)
bin_PROGRAMS:产生的可执行文件的文件名。如果要产生多个可执行文件,那么在各个名字间用空格隔开。
MPIFileClassify_SOURCES:指定产生“MPIFileClassify” 时所需要的源代码。如果用到了多个源文件,用空格符号将它们隔开。
回到终端:
automake --add-missing //如果出现configure.in:LINENUMBER:required file '***.in'文件 not found,运行命令autoheader再automake即可,这是因为AC_CONFIG_HEADERS需要测试文件,在这里我直接把configure.in里的AC_CONFIG_HEADERS宏注释了
./configure //生成Makefile
make //编译
如果有修改configure.in和Makefile.am文件,建议从aclocal命令重新执行一遍。
安装PostgreSQL的C语言连接库:yum install postgresql-devel.xxx
在.c文件中:#include <libpq-fe.h>
参考:http://blog.chinaunix.net/space.php?uid=20799298&do=blog&id=99619
http://conkeyn.iteye.com/blog/337669
https://www.ibm.com/developerworks/cn/linux/l-makefile/
- automake生成makefile和mpicc链接库
- automake 生成动态链接库 - automake&Makefile
- autoconf和automake生成makefile
- Autoconf和Automake生成Makefile
- autoconf 和 automake 生成 Makefile
- automake同时生成静态链接库和动态链接库
- automake同时生成静态链接库和动态链接库
- automake同时生成静态链接库和动态链接库
- automake生成动态链接库
- automake生成静态链接库
- automake生成动态链接库
- automake生成动态链接库
- automake生成静态链接库
- automake生成动态链接库
- automake生成静态链接库
- 例解 autoconf 和 automake 生成 Makefile 文件
- autoconf 和automake生成Makefile文件
- 例解 autoconf 和 automake 生成 Makefile 文件
- javascript 阻止时间冒泡
- 程序员十层楼
- 语音处理方面的会议
- TI DaVinci DM368 running Emdebian
- 程序员最应该读的图书(中译版)
- automake生成makefile和mpicc链接库
- 爱情智慧:恩爱夫妻的养成宝典
- 大数运算--除法
- android “Debug certificate expired”&&""Your project contains error(s), please fix it before running
- 如何设置圆角的EditText
- zoj-1025 Wooden Sticks有关贪心和动态规划
- 数据库开发遇到的问题及解决方案(个人日志、持续更新)
- Android Spinner的使用
- C语言 将二叉树转化为数组