来一发Linux体系下多线程程序编译makefile文件
不同版本的Linux命令数量不一样,这里笔者把它们中比较重要的和使用频率最多的命令。在Linux下,编译一个多线程的程序命令为:
gcc-lpthread-ofilefile.c
在Linux下,用交织编译器编译一个在uclinux下运转的多线程程序,makefile文件以下:
CFLAGS=-Wall-Os-Dlinux-D__linux__-Dunix-D__uClinux__-DEMBED
LDFLAGS=-Wl,-elf2flt
LOCAL_LIBS=/usr/local/arm-elf/lib/libpthread.a
CC=arm-elf-gcc
LD=arm-elf-gcc
TARGT=test
OBJ=$(TARGT).o
SRC=$(TARGT).c
all:$(TARGT)
%.o:%.c
$(CC)$(CFLAGS)-c{GetProperty(Content)}lt;-o$@
$(TARGT):$(OBJ)$(LOCAL_LIBS)
$(CC)$(CFLAGS)$(LDFLAGS)-o$@$(OBJ)$(LOCAL_LIBS)$(LDLIBS)
clean:
-rm-f$(EXEC)*.elf*.gdb*.o
</p>
如果你只是想应付一下操作系统的课程,劝你最好别学,或者说不要指望能用的怎么样。 对我们学习操作系统有很大的帮助,加深我们对OS的理解。? 随着Linux应用的扩展,出现了不少Linux社区。有一些非常优秀的社区往往是Linux高手的舞台,如果在探讨高级技巧的论坛张贴非常初级的问题经常会没有结果。 再次,Linux是用C语言编写的,我们有学习C语言的基础,读程序和编写代码方面存在的困难小一点,也是我们能较快掌握的原因之一。? 安装一个新的软件时先看README,再看INSTALL然后看FAQ,最后才动手安装,这样遇到问题就知道为什么。如果Linux说明文档不看,结果出了问题再去论坛来找答案反而浪费时间。 直到学习Linux这门课以后,我才知道,原来我错了。? 虽然大家都比较喜欢漂亮的mm,但是在学 linux 的过程中,还是要多和“男人”接触一下:P 遇到问题的时候,出来看说和上网查之外,就是要多用 linux 下的 man 命令找找帮助。 Linux高手更具有鼓励新手的文化精神。如何在Linux社区获得帮助,需要说明的是你要有周全的思考,准备好你的问题,不要草率的发问。 现在的linux操作系统如redhat,难点,红旗等,都是用这么一个内核,加上其它的用程序(包括X)构成的。
页:
[1]