`
shrek
  • 浏览: 73989 次
  • 性别: Icon_minigender_1
  • 来自: 杭州
最近访客 更多访客>>
qja
社区版块
存档分类
最新评论

使用 auto tools 来管理gnu 项目 ,基础

    博客分类:
  • GNU
阅读更多
输入: configure.ac和Makefile.am
输出: Makefile

目录结构,每个目录下需要有一个Makefile.am,在顶级目录有一个configure.ac

helloworld_cc
    configure.ac
    Makefile.am
    src
        Makefile.am
        simple.cc

configure.ac内容
 代码
 
  1. AC_INIT(src/simple.cc)  
  2. AM_INIT_AUTOMAKE(myapp,0.1)  
  3. AC_CONFIG_HEADER(config.h)  
  4. AC_PROG_CC  
  5. AC_PROG_CXX  
  6.   
  7. pkg_modules="gtkmm-2.4 >= 2.8.0"  
  8. PKG_CHECK_MODULES(PACKAGE, [$pkg_modules])  
  9. AC_SUBST(PACKAGE_CFLAGS)  
  10. AC_SUBST(PACKAGE_LIBS)  
  11.   
  12. AC_OUTPUT(Makefile src/Makefile )  


Makefile.am内容
代码
  1. SUBDIRS = src  


src/Makefile.am 内容
代码
 
  1. INCLUDES = @PACKAGE_CFLAGS@  
  2.   
  3. bin_PROGRAMS = hello  
  4. hello_SOURCES = simple.cc  
  5.   
  6. hello_LDADD = @PACKAGE_LIBS@   




接下来:
1: "autoheader" 产生config.h.in
2: "aclocal"  产生aclocal.m4
3: "autoconf" 从configure.ac 生成  configure 脚本
4: "automake" 从Makefile.am 生成 Makefile.in ( 此处可能
            需要 automake --add-missing,并 touch NEWS ChangeLog README等 )
5: "./configure" 从Makefile.in 产生 Makefile
6: "make"   
分享到:
评论

相关推荐

    Unlocker-x64(auto-unlocker v1.1.3)

    使用方法:下载解压,结束VM相关进程,右键管理员运行即可 auto-unlocker v1.1.3 Options: --install (default) installs the patch --uninstall uninstalls the patch (only if a backup folder is found) --...

    Dev-Cpp 5.5.3 MinGW 4.7.2 Setup

    6. **Project Management**: IDE 提供了项目管理功能,用户可以创建、保存和管理多个项目,每个项目可以包含多个源文件。这样,复杂的软件工程也可以在Dev-Cpp中得到有效组织。 7. **兼容性与移植性**: 由于Dev-Cpp...

    mysql最新英文教程

    getarg许可证,GLib许可证,GNU通用公共许可证版本2.0,GNU较通用公共许可证版本2.1,GNULibtool许可证,GNU Readline许可证,Google Controlling Master Thread I/O Rate Patch许可证,Google Perftools (TCMalloc ...

    LabVIEW Development Tools (LDT)-开源

    5. `Create_project_brief_documentation.txt`:这个文件可能是关于如何使用“创建项目”功能的简要说明文档,包含了步骤指导和注意事项,对于初学者来说非常有帮助。 6. `LGPL_readme 1st.txt`:这个可能是附加的...

    新版Android开发教程.rar

    ----------------------------------- Android 编程基础 1 封面----------------------------------- Android 编程基础 2 开放手机联盟 --Open --Open --Open --Open Handset Handset Handset Handset Alliance ...

    clink_0.4.7_setup.exe

    The same line editing as Bash (from GNU’s Readline library). History persistence between sessions. Context sensitive completion; Executables (and aliases). Directory commands. Environment variables ...

    Linux命令详解精品手册大全

    掌握这些命令对于 Linux 用户来说至关重要,它们不仅能够帮助用户高效地管理和配置系统,还能够解决许多日常使用中遇到的问题。深入学习每个命令的功能和使用方法,将极大地提升你在 Linux 环境下的工作效率和技能...

    erlang环境配置借鉴.pdf

    (setq load-path (cons "C:/progra~1/erl5.8.2/lib/tools-2.6.6.2/emacs" load-path)) (setq erlang-root-dir "C:/progra~1/erl5.8.2/") (setq exec-path (cons "C:/progra~1/erl5.8.2/bin" exec-path)) (require '...

    db2数据库安装教程

    CLASSPATH=$JAVA_HOME/lib/dt.jar:$JAVA_HOME/lib/tools.jar:$DB2_HOME/java/db2java.zip:$DB2_HOME/java/db2jcc.jar:$DB2_HOME/java/sqlj.zip:$DB2_HOME/java/db2jcc ``` 以上步骤详细介绍了在Linux环境下安装...

    GMT.jl:Julia的通用映射工具库包装

    这个库是基于广受欢迎的GNU Mapping Tools (GMT) 库的接口,使得在Julia环境中进行地图制作和地球科学数据分析变得更加便捷。 **核心功能与特性** 1. **地图绘制**:GMT.jl支持创建各种地图投影,如等角圆柱投影、...

    lichee_20170502_1607_全志R16的linux系统编译需要改动的文件_使用parrotv1.1的内核_没有外层目录.7z

    drwxrwxr-x 7 rootroot rootroot 4096 12月 2 15:52 tools/ rootroot@cm-System-Product-Name:/home/wwt/linux_r16/lichee$ ./build.sh config Welcome to mkscript setup progress All available chips: 0. sun8...

    glew-2.1.0.tgz

    _Note: may need to make **auto** folder_ #### Using cmake *CMake 2.8.12 or higher is required.* ##### Install build tools Debian/Ubuntu/Mint: `$ sudo apt-get install build-essential libXmu-dev ...

    python3.6.5参考手册 chm

    Python参考手册,官方正式版参考手册,chm版。以下摘取部分内容:Navigation index modules | next | Python » 3.6.5 Documentation » Python Documentation contents What’s New in Python ...

    uboott移植实验手册及技术文档

    4、交叉编译器 arm-softfloat-linux-gnu-gcc-3.4.5 【实验步骤】 一、建立自己的平台类型 (1)解压文件 #tar jxvf u-boot-1.3.1.tar.bz2 (2)进入 U-Boot源码目录 #cd u-boot-1.3.1 (3)创建自己的开发板...

    linux全志R16的linux系统编译的资料_20170502_1655.7z

    (编译请使用编译android的lichee的选项编译生成的.config文件,不然直接编译会报错!!!!) rootroot@cm-System-Product-Name:/home/wwt/linux_r16$ tar zxvf lichee_parrotv1.1_20161202.tar.gz rootroot@cm-...

    2009 达内Unix学习笔记

    ftp工具 192.168.0.202 tools-toolss 老师测评网址 http://172.16.0.198:8080/poll/ 各个 shell 可互相切换 ksh:$ sh:$ csh:guangzhou% bash:bash-3.00$ 一、注意事项 命令和参数之间必需用空格隔开,参数和...

Global site tag (gtag.js) - Google Analytics