gnu make - 初学
因为要为Linux平台编译ACE,按照ACE的文档如何编译部分的说明,要求使用gnu make。其原文档说明如下:
Using the Traditional ACE/GNU Configuration
Here's what you need to do to build ACE using GNU Make and ACE's traditional per-platform configuration method:
Install GNU make 3.79.1 or greater on your system (available via http anonymous ftp from ftp.gnu.org in the
pub/gnu/make/ directory). You must use GNU make when using ACE's traditional per-platform configuration method
or ACE won't compile.
用中文意思说:你必须使用GNU make来使用ACE中惯常的分平台(指不同的系统)配置方法,否则的话ACE将不能被编译。
因此,还要下载GNU make。(略感:程序开发的主要部分就是会使用已有的工具或库。)
gnu make:(ftp: http://ftp.gnu.org/gnu/make/)。
一篇简要的介绍GNU make的文章:http://opensourceforu.com/2012/06/gnu-make-in-detail-for-beginners/
有些英文的计算机方面的技术文章,说的挺详细。
用中文大意说:我们每天在使用很多应用程序,却基本上不关心源代码。常常使用 make install 安装程序。大部分程序工程都有make文件。使用make
可以很简单编译出庞大而复杂的多组件程序。后文描述“大而复杂的工程源文件”,大项目可能包含上千行的代码,并包含在不同的源文件中,或许是很多
人写的,这些源文件也许分别在不同的子目录中。又有可能依赖其他组件。。。。。。编译依赖。。局部编译。。。等
而Make 是针这个问题的解决方案。它能够处理依赖关系,又能局部编译,是一个必备工具。每个工程需要一个Makefile文件 -- 也是一个脚本文件,其中描述了项目的结构,名称,源代码文件及其依赖,编译参数,和如何产生目标输出。不管什么时候执行make命令,当前项目目录下的Makefile文件都被读取并解析,并指示如何生成目标文件。Makfile文件包含一系列的规则,宏变量,等。(‘Makefile’ 或者'makefile'这两种写法均可)。
使用GNU Make一般要人工从源码中编译出来。基本步骤是,解压源码文件,参照README文件。
后文都是关于Makefile文件中脚本语句的规则了。
gnu make - 初学的更多相关文章
- (转)完全用GNU/Linux工作 by 王珢
完全用GNU/Linux工作 王珢 (看完这篇博文,非常喜欢王珢的这篇博客,也我坚定了学gnu/linux的决心,并努力去按照国外的计算机思维模式去学习编程提高自己.看完这篇文章令我热血沸腾 ...
- 完全用 GNU/Linux 工作(转)
转自:http://www.chinaunix.net/old_jh/4/16102.html 看到一半,实在太长,但已觉得很好,转来分享一下. 完全用 GNU/Linux 工作 - 摈弃 Windo ...
- Manual | BSD手册| Linux手册 | 数据库手册 | 编程开发手册 | WEB开发手册 | 软件应用手册 | 网络技术手册 | GNU手册
豆豆手册 □ BSD手册 □ Linux手册 □ 数据库手册 □ 编程开发手册 □ WEB开发手册 □ 软件应用手册 □ 网络技术手册 □ GNU手册 在线手册 首 页 BSD手册 ·FreeBS ...
- 在远程登陆的主机上通过命令行源码编译安装 GNU M4、autoconf、automake 等程序
由于实验需要,最近获得了一个实验室服务器的账号,平常主要通过 ssh 进行远程登陆进行实验.一方面,远程登录的机器只提供终端界面,一般只通过命令行进行任务操作:另一方面,由于是多人共享服务器,故而个人 ...
- Linux系统初学-第一课 虚拟机安装CentOS6.5以及Root密码找回
Linux系统初学第一课 虚拟机安装CentOS6.5以及Root密码找回 虚拟机安装CentOS6.5 一.安装虚拟机 1-1.安装虚拟机VMware Station,新建虚拟机,选择典型配置. 1 ...
- 初学Laravel框架与ThinkPHP框架的不同
作为一个PHP菜鸟初学Laravel框架 在学习过程中我发现了其与TP框架的不同点,由于时间问题和认识还不够完善我先写出其中几点,有错误的地方希望各位大牛斧正... 1.渲染模版方式的不同:在Lara ...
- 【译】GNU Radio How to write a block 【如何开发用户模块及编写功能块】
本文讲解如何在GNU Radio中添加用户开发的信号处理模块,译文如有不当之处可参考原文地址:http://gnuradio.microembedded.com/outoftreemodules Ou ...
- 初学嵌入式Linux
初学嵌入式Linux,感觉需要学习的东西太多了.把学习过程中的收获和问题记录在这里,算是一份经验吧. 前面利用开发板带的现成的东西step by step让Linux 2.4.19在开发板上跑 ...
- [转自王垠]完全用GNU/Linux工作,摈弃Windows低效率的工作方式
ZT (a qinghua student's article) 我已经半年没有使用 Windows 的方式工作了.Linux 高效的完成了我所有的工作. GNU/Linux 不是每个人都想用的.如果 ...
随机推荐
- Docker:使用自定义redis.conf运行redis容器(7)
演示环境:win7+docker toolbox 1.自定义配置文件 首先在Windows环境下准备好配置文件redis 然后打开Quickstart终端输入命令: cp -rf ~/Desktop/ ...
- OfficeOpenXml:World、Excel导出导入库
基础库:EPPlus 根据模版:OfficeOpenXml.Entends
- Linq动态查询
public class ExpressionCall { List<Customer> customers = new List<Customer>() { new Cust ...
- 5.Python3程序结构
5.1顺序结构 一条语句一条语句顺序的执行. 5.2选择结构 条件语句是通过一条或多条语句的执行结果(True或者False)来决定执行的代码块. 可以通过下图来简单了解条件语句的执行过程: 5.2. ...
- property装饰器以及多态
property是一种特殊的属性 访问它时执行一段功能然后返回值 class People: def __init__(self, name): self.__name = name @propert ...
- jmeter对自身性能的优化
测试环境 apache-jmeter-2.13 1. 问题描述 单台机器的下JMeter启动较大线程数时可能会出现运行报错的情况,或者在运行一段时间后,JMeter每秒生成的请求数会逐步下降, ...
- MySQL MHA 报错处理
安装环境:CentOS 6.5 MySQL 5.7.22 MHA 0.56 1.找不到mysql 命令 Sat Mar 23 07:17:50 2019 - [info] Connecting to ...
- Gym - 100989H
After the data structures exam, students lined up in the cafeteria to have a drink and chat about ho ...
- canutils上板测试问题记录
ltp-ddt运行can_loopback时出错 pan(1881): Must supply a file collection or a command 原因runtest/ddt/can_loo ...
- UTF-8格式txt文件读取字节前三位问题
今天试着读取一份UTF-8格式的txt文件,内容如下 12345 但是每次读取之后转为String类型,输出字符串长度总是为6,并且第一位打印在控制台后不占任何空间. 经过debug查看字节码后发现, ...