nachos的makefile文件

2023-11-05 15:50
文章标签 makefile nachos

本文主要是介绍nachos的makefile文件,希望对大家解决编程问题提供一定的参考价值,需要的开发者们随着小编来一起学习吧!

 1.code/下子目录中的 Makefile 文件

在终端下进入相应目录,利用 make 或 make all 命令,可依据该目录下的Makefile 文件生成包含相应功能的 Nachos 可执行程序。

Makefile 文件的内容主要包括下述两条语句

2.code/下子目录的Makefile.local文件

该文件主要是对一些编译、链接及运行时所使用的宏进行定义。

(1)CCFILES:指定在该目录下生成Nachos 时所涉及到的C++源文件;

(2)INCPATH:指明所涉及的C++源程序中的头文件(.h 文件)所在的路径,以

便利用g++进行编译链接时通过这路径查找这些头文件。

(3)DEFINES:传递个 g++的一些标号或者宏。

如图,thread目录下makefile.local文件

3.code/目录下的Makefile.dep文件

Makefile.dep 文件根据安装Nachos 时所使用的操作系统环境,定义一些相应的宏,供g++使用。

Makefile.dep 中,首先利用语句uname = $(shell uname)获取安装Nachos 所使用的操作系统平台。

然后利用语句 ifeq ($(uname),xxxx)根据所使用的平台定义相应的宏,为g++所使用,,这些宏主要包括:HOST, arch, CPP, CPPFLAGS, GCCDIR,LDFLAGS 以及 ASFLAGS。

在 Makefile.dep 文件的最后几行,给出了 makefile.common 所使用的几个宏(g++使用):

4.code/目录下的 Makefile.commom 文件

Makefile.common 文件定义了编译链接生成一个完整的 Nachos 可执行文件所需要的所有规则。

这篇关于nachos的makefile文件的文章就介绍到这儿,希望我们推荐的文章对编程师们有所帮助!



http://www.chinasem.cn/article/350888

相关文章

Makefile简明使用教程

文章目录 规则makefile文件的基本语法:加在命令前的特殊符号:.PHONY伪目标: Makefilev1 直观写法v2 加上中间过程v3 伪目标v4 变量 make 选项-f-n-C Make 是一种流行的构建工具,常用于将源代码转换成可执行文件或者其他形式的输出文件(如库文件、文档等)。Make 可以自动化地执行编译、链接等一系列操作。 规则 makefile文件

Kernel 中MakeFile 使用if条件编译

有时需要通过if  else来选择编译哪个驱动,单纯的obj-$(CONFIG_)就不是很方便,下面提供两种参考案例: 案例一: 来源:drivers/char/tpm/Makefileifdef CONFIG_ACPItpm-y += tpm_eventlog.o tpm_acpi.oelseifdef CONFIG_TCG_IBMVTPMtpm-y += tpm_eventlog.o

Makefile问答之02 预处理器与宏

GCC Makefile中,怎样设定预处理器名称 在 GCC 的 Makefile 中,预处理器(preprocessor)的名称通常是 cpp(C PreProcessor),但在实际的 Makefile 中,我们一般是通过 gcc 命令来调用预处理器,而不是直接调用 cpp。不过,你可以通过设置 CPP 变量来显式指定预处理器名称和选项。以下是如何在 Makefile 中进行设置和使用的

如何在linux下写makefile

Windows下用集成开发环境(IDE)开发程序时不会涉及到编译、链接的步骤,集成开发环境已经把这些工作给你集成好了,你要做的就是根据语言的语法来编写代码。所以Windows下开发程序对makefile会有点生疏。         makefile的作用也是把你编写好之后的源文件进行编译与链接,只是它这个过程需要你自己去指定编译与链接的文件。 makefile的基本格式如下: tar

Makefile函数

定义$(函数名 参数)  或  ${函数名 参数} 例如: $(wildcard PATTERN) wildcard函数作用是列出所有PATTERN的文件 ,这里该参数可以是用通配符 例如*.c,就代表列出所有以.c结尾的文件。 $(patsubst <pattern>,<replacement>,<next>) patsubst函数作用是查找next中的单词,是否满足pattern的模式

记录下Makefile

把Makefile记录下,以后别忘了。 #CC = aarch64-linux-gnu-gcc#AS = aarch64-linux-gnu-as#AR = aarch64-linux-gnu-arCC = gccAS = asAR = arPROGRAMS =mainCUR_DIR = $(shell pwd)SRCS = $(CUR_DIR)/srcINCS = $(CUR_D

Linux工程管理文件Makefile命令与变量-基础篇

1.Makefile命令 在一个规则中,除了目标和目标依赖外,还有一个重要的部分:命令。 命令一般由shell命令(echo、ls)和编译器的一些工具(gcc、ld、ar、objcopy等)组成,使用tab键缩进。 .PHONY: cleana.out: hello.c echo "start compiling..." gcc -o a.out hello.c echo

Linux Makefile.txt 分析

linux 2.6.x Makefile  linux-2.6.x makefile   linux-2.6.20.6/Documentation/kbuild/makefiles.txt   一、             概述   linux的makefile有五个部分:   Makefile:顶层Makefile .config:内核配置文件 a

构建大师:深入理解Linux下的Make和Makefile

引言 在软件开发的世界里,构建过程是一项繁琐而重要的任务。无论是简单的脚本还是复杂的软件项目,都需要一种方式来自动化编译、链接以及测试等过程。在Linux环境下,Make工具和它的配置文件——Makefile,成为了许多开发者构建项目的首选。本文旨在深入探讨Make和Makefile的工作原理,以及如何编写高效且易于维护的Makefile文件。 目录 Make简介Makefile基础 M