学习工具篇 eclipse 中使用autotools plugins

很多时候我们都是在使用IDE来构建自己的小项目,使用IDE,在学习中足够了。

但是渐渐的发现使用IDE已经满足不了自己了,发现自己处于两难的境地。为什么这么说呢?

     首先,最主要的出发点是想要去自己动手构建一个项目。

     其次,去学习如何写makefile吗?

     第三,有没有其他的选择呢?

学习makefile,是根本上出发去学习如何组织构建一个项目,应该是不错的选择,真的不错吗?

当尝试去查找makefile相关资料的时候,看到长长的文档目录和密密麻麻的英文,即使我承认自己的英文水平还不错,

但是头也大了。也有一些不错的中文makefile教程,但是学习起来无异于学习一门新的语言,从时间的角度出发,至少对于

我来说不是个明智的选择。

 

autotools && cmake 应该是不错的选择?

autotools 同 cmake的比较这里就罗嗦了,网上这样子的文章都太多了。不过大多都是关于cmake如何取代autotools,最典型的就是

KDE早就放弃autotools,转投cmake门下。两者各自的优缺点,相信只有自己都亲自尝试一下才会知道。有的时候也不是自己喜欢就

可以的,如果你所在的团队在使用autotools,那你能说你只会cmake吗? 还是根据实际情况,最好是保持和团队一直,允许超越,但是

不允许落下。

 

其实无论是autotools还是cmake,都是一种中间形式的项目组织构建工具。最典型的莫过于cmake圈子中的那句话:cmake即编程。

为什么这样说呢? 如果你说makefile写起来 是shell脚本的话,那么cmake优雅的方式会让你感觉是用语言去创建项目,就这么简单。

 autotools? 我才刚开始,入门的感觉和cmake比较起来,就是不需要写的那么多,(也许是我自己学习的DEMO都是比较小的,还没有

体会到在企业级项目中运用的优缺点.),但是组织所需的文件就比较的分散,不像cmake只需要CMakeLists.txt,而autotools需要按步骤

操作,而且关联性比较强。

 

说了那么多,如果您是新手,那么请自己去查阅资料。如果您是前辈,那么就请批评指正~

 

学语言都是从Hello World程序开始,那么学习autotools,也不能免俗,先从一个简单的Hello World 示例project开始,然后再介绍autotools

plugins 在eclipse中的使用.明白了原理和操作的方法吗,使用第三方开发的工具也就不会迷茫,主要是eclipse autotools plugins在使用的时候

默认的配置是有些问题的,所以需要自己改动一下,后面会介绍的,先来看DEOM:

1. 我在自己的桌面创建了一个自己的工程目录HelloWorld:

cd 桌面
mkdir HelloWorld
touch HelloWorld.c

#include <stdio.h>
#include <stdlib.h>


int main(int args,char ** argv)
{
    puts("Hello World!\n");

     return EXIT_SUCCESS;
}

 2.在当前目录下面执行autoscan.会生成configure.scan和autoscane.log(日志文件)文件 ,然后将configure.scan重命名问configure.in

autoscan

mv configure.scan configure.in

 3.编辑configure.in文件:

4.创建Makefile.am,并编辑文件:

 

5. 创建一些必要的文件,使工程看起来更像样一点:

touch NEWS AUTHORS ChangeLog README

6.生成必要的配置文件:

autoreconf -fvi

 其实有很多是按照一些有序步骤操作的,一般会出现autogen.sh脚本 然后里面的内容是:

aclocal

autoheader

automake --add-missing 

autoconf

7.下面执行configure然后make就可以得到结果. (省略其他的操作)

./configure

make

最后得到了我们想要的可执行文件helloworld.

 

使用autotools组织构建一些简单的小项目的步骤就是这样子的,如果是使用cmake,会更简单,所有的操作只需要编写一个CMakeLists.txt文件.

然后就是一些锦上添花的操作,像是创建NEWS,AUTHORS,ChangeLog,README etc..这些文件.

 

下面看看如何在eclipse中使用autotools plugins.

 

1.首先安装autotools plugins:

 

2.下面按照一般的步骤创建一个工程:(具体的可以参见eclipse的插件帮助文档 Help ->Help Contents)

 3.下面就会发现,尝试去编译这个项目是不能成功的,而终端现实的错误是下面这个样子的:

 4.如果你确定安装了autotools系列的所有工具,那么就请执行先面的操作.

在项目视图中选中HelloWorld项目,然后 Project->Properties->General->Tools Settings Tab

 

可以看出eclipse只是按照名称在组织,而导致前面问题的原因是路径找不到。所以我们需要添加路径:

 做完这些,就可以去build pro && run application了。

 

至于autogen.sh,我在eclipse中看到了相关的配置选项,但是自己还没有琢磨出该如何使用。等日后明白了,再补充吧。

如果你知道,也可以告诉我.

 

 

 
 
 
原文地址:https://www.cnblogs.com/respawn/p/2593030.html