易截截图软件、单文件、免安装、纯绿色、仅160KB

在linux下生成可执行文件和库文件


l        

Linux
下编写普通可执行文件的命令:
gcc –o
目标文件名

源文件名(列表)
如果工程包含多个
.c

.h
那么在源文件名列表中只列出所有的
.c
文件
例:工程文件夹里有
des.c 
hash.c 
main.c 
des.h 
hash .h
要将他们编译成
EncApp
可执行文件,则使用下面的命令
   
gcc 
–o 
EncApp 
des.c 
hash.c 
main.c
l        

Linux
下编写调用动态库或静态库的可执行文件的命令:
gcc –o
目标文件名

源文件名(列表)库文件名(列表)
如果工程包含多个
.c

.h
那么在源文件名列表中只列出所有的
.c
文件和库文件
例:工程文件夹里有
main.c 
enc.so
要将他们编译成
EncApp
可执行文件,则使用下面的命令
gcc 
–o 
EncAp 
main.c 
enc.so
注意:
.so
文件必须事先复制到
/usr/lib
目录下

l        
生成静态库需要的命令
生成静态库
.a
必须先生成
目标文件
.o
然后再生成静态库
.a
生成目标文件的命令格式为:
gcc 
–c 
–o 
目标文件名
.o  
源文件名
.c
(列表)
生成静态库的命令格式为:
ar 
–r 
静态库文件名
.a  
目标文件名
.o
l        
生成动态库需要的命令
生成动态库
.so
必须先生成
目标文件
.o
然后再生成动态库
.so
生成目标文件的命令格式为:
gcc 
–fpic 
–c 
–o
目标文件名
.o 
源文件名
.c
(列表)
生成动态库的命令格式为:
gcc 
–shared 
–o 
动态库文件名
.so 
目标文件名
.o
l   
备注:在编译可执行文件,各种目标文件和库文件的时候,用到的
.h
文件必须在编译文件夹下,如果没有这些头文件,编译器将报错。


相关文档:

Red Hat Linux忘记root密码的解决办法

前几天把系统的root密码给忘了,不知道怎么解决,到网上搜了个解决办法,与大家共享。
 
在出现系统选择界面时,在Red Hat Linux的选项上按“e”键,然后会出现三个选项,在第二项类似“ kernel /vmlinuz-2.4.20-8 ro root=LABEL=/”上按“e”键进行编辑,在“ro”或者&l ......

怎么在Linux中添加新的系统调用

      系统调用是应用程式和操作系统内核之间的功能接口。其主要目的是使得用户
能使用操作系统提供的有关设备管理、输入/输入系统、文件系统和进程控制、
通信及存储管理等方面的功能,而不必了解系统程式的内部结构和有关硬件细
节,从而起到减轻用户负担和保护系统及提高资源利用率的作用。 ......

Linux字符设备驱动程序开发

Linux下的设备驱动程序被组织为一组完成不同任务的函数的集合,通过这些函数使得Windows的设备操作犹如文件一般。在应用程序看来,硬件设备只是一个设备文件,应用程序可以象操作普通文件一样对硬件设备进行操作,如open ()、close ()、read ()、write () 等。
Linux主要将设备分为二类:字符设备和块设备。字符设备是指设 ......

Linux Kernel中list解读


标签:
it
分类:
linux_kernel
作者:Sam (甄峰) sam_code@hotmail.com
Sam之前看2.4
kernel时,常看到List.也仔细看了一下,但现在长期没有看kernel,没有写程序,已经忘记了很多。今天又看一看并记录下来。
Linux
Kernel中,常常需要使用双向链表。在~/include/linux/list.h中,就定义了双向链表和常用的func ......
© 2009 ej38.com All Rights Reserved. 关于E健网联系我们 | 站点地图 | 赣ICP备09004571号