Linux开发引导

Posted 我是老邱

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了Linux开发引导相关的知识,希望对你有一定的参考价值。

1、应用程序目录

/bin      用于存放启动系统时用到的程序

/usr/bin     用于存放用户使用的标准程序

/usr/local/bin  用于存放软件安装的程序

/sbin:/usr/sbin  用于存放系统管理程序(root)

 

系统为某个特定的主机或本地网络添加的程序通常可在目录/usr/local/bin或opt中找到。

系统级应用程序,放在/usr/local目录中。开发用和个人的应用程序,放在home目录中某个文件夹。

还可以在PATH变量中添加。

 

2、头文件目录

对于C语言来说,头文件几乎总是位于/usr/include目录及其子目录中。

依赖于特定Linux版本的头文件通常可在目录/usr/include/sys和/usr/include/linux中找到。

对于其他编程系统有各自的头文件,如GNU C++的/usr/include/c++目录。

还可以用-I标志来包含保存在子目录或非标准位置中的头文件。

如:gcc -I/usr/openwin/include fred.c

 

3、库文件

标准库文件一般存放在/lib和/usr/lib目录中。

由于历史遗留问题,链接器只搜索标准C语言库

除了把库文件放在标准目录中,库文件还必须遵循特定的命名规范并且需要在命令中明确指定

命名规范:库文件总是以lib开头,随后指明什么库,最后给出库文件类型,如lib**.a或lib**.so

命令明确指定:可通过给出完整的库文件路径或用-l标志,如:

gcc -o fred fred.c /usr/lib/libm.a

gcc -o fred fred.c -lm(-lm标志的另一个好处是如果有共享库,编译器自动选择共享库)

 

4、创建一个静态库

(1)先创建源文件,并编译为目标文件

(2)用ar创建归档文件

 ar crv libfoo.a bill.o fred.o

(3)为函数库生成内容表

ranlib libfoo.a

(4)使用静态库

gcc -o program program.c libfoo.a

gcc -o program program.c  -L. -lfoo

 

以上是关于Linux开发引导的主要内容,如果未能解决你的问题,请参考以下文章

linux引导流程

免费下载全套最新2.Linux系统管理视频教程+教学资料+学习课件+源代码+软件开发工具

引导 linux 内核和独立应用程序有啥区别?

Linux安装与引导----预习笔记

[Linux] PHP程序员玩转Linux系列-nginx初学者引导

嵌入式linux开发uboot移植——uboot项目简介