linux实验三makefile,linux内核编译生成makefile文件实验报告.doc

linux内核编译生成makefile文件实验报告

操作系统实验报告

姓名: 学号:

一、实验题目

1.编译linux内核

2.使用autoconf和automake工具为project工程自动生成Makefile,并测试

3.在内核中添加一个模块

二、实验目的

1.了解一些命令提示符,也里了解一些linux系统的操作。

2.练习使用autoconf和automake工具自动生成Makefile,使同学们了解Makefile的生成原理,熟悉linux编程开发环境

三、实验要求

1使用静态库编译链接swap.c,同时使用动态库编译链接myadd.c。可运行程序生成在src/main目录下。

2要求独立完成,按时提交

四、设计思路和流程图(如:包括主要数据结构及其说明、测试数据的设计及测试结果分析)

1.Makefile的流程图:

2.内核的编译基本操作

1.在ubuntu环境下获取内核源码

2.解压内核源码用命令符:tar xvf linux-3.18.12.tar.xz

3.配置内核特性:make allnoconfig

4.编译内核:make

5.安装内核:make install

6.测试:cat/boot/grub/grub.conf

7.重启系统:sudo reboot,看是否成功的安装上了内核

8.详情及结构见附录

3.生成makefile文件:

1.用老师给的projec里的main.c函数。

2.需要使用automake和autoconf两个工具,所以用命令符:sudo apt-get install autoconf进行安装。?autoscan.log和configure.scan,将configure.Scan改名为configure.ac,同时用gedit打开,打开后文件修改后的如下:

# -*- Autoconf -*-

# Process this file with autoconf to produce a configure script.

AC_PREREQ([2.69])

AC_INIT([FULL-PACKAGE-NAME], [VERSION], [BUG-REPORT-ADDRESS])

AC_CONFIG_SRCDIR([main.c])

AC_CONFIG_HEADERS([config.h])

AM_INIT_AUTOMAKE(main,1.0)

# Checks for programs.

AC_PROG_CC

# Checks for libraries.

# Checks for header files.

# Checks for typedefs, structures, and compiler characteristics.

# Checks for library functions.

AC_OUTPUT(Makefile)

4.新建Makefile文件,如下:

AUTOMAKE_OPTIONS=foreign

bin_PROGRAMS=main

first_SOURCES=main.c

5.运行命令aclocal命令成功之后,在目录下会产生aclocal.m4和autom4te.cache两个文件。6.运行命令autoheader命令成功之后,会在目录下产生config.h.in这个新文件。7.运行命令autoconf命令成功之后,会在目录下产生configure这个新文件。8.运行命令automake --add-missingConfigure.ac:11:installing./compile’

Configure.ac:8:installing ‘.install-sh’

Configure.ac:8:installing ‘./missing’

Makefile.am:installing ‘./decomp’9. 命令成功之后,会在目录下产生depcomp,install-sh和missing这三个新文件和执行下一步的Makefile.in文件。运行命令./configure就可以自动生成Makefile。#include

#include

MODULE_LICENSE("GPL");

int __init hello_init (void)

{

printk("Hello xuxuemei\n");

printk("Hello xuxuemei\n");

printk("Hello xuxuemei\n");

return 0;

}

void __exit hello_exit (void)

{

printk("H

你可能感兴趣的:(linux实验三makefile,linux内核编译生成makefile文件实验报告.doc)