[root@study ~]#
gcc
-
o hello hello.c
-
Wall
#
加入
-
Wall
之后,程序的
编译会变
的
½为严½
一
点
,所以警告
讯
息也
会显
示出
来
!
比½重要的大概就是这一些。
另外,我们通常称
-Wall
或者
-O
这些非必要的参数为旗标
(FLAGS)
,
因为我们使用的是
C
程序语言,所以有时候也会简称这些旗标为
CFLAGS
,
这些变量偶尔会被使
用的喔!尤其是在后头会½绍的
make
相关的用法时,更是重要的很吶!
^_^
21.3
用
make
½行宏编译
在本章一开始我们提到过
make
的功能是可以简化编译过程里面所下达的指令,同时还具有很多很
方便的功能!那么底下咱们就来试看看使用
make
简化下达编译指令的流程吧!
21.3.1
为什么要用
make
先来想象一个案例,假设我的执行档里面包含了四个原始码文件,分别是
main.c haha.c sin_value.c
cos_value.c
这四个文件,这四个文件的目的是:
.
main.c
:主要的目的是让用户输入½度数据与呼½其他三支子程序;
.
haha.c
:输出一堆有的没有的讯息而已;
.
sin_value.c
:计算使用者输入的½度
(360) sin
数值;
.
cos_value.c
:计算使用者输入的½度
(360) cos
数值。
这四个文件你可以到
http://linux.vbird.org/linux_basic/0520source/main.tgz
来下载。由于这四个文件里
面包含了相关性,并且还用到数学函式在里面,所以如果你想要让这个程序可以跑,
那么就需要这
样编译:
# 1.
先
½
行目
标
文件的
编译
,最
终会
有四
个
*.o
的
档
名出
现
:
[root@study ~]#
gcc
-
c main.c
[root@study ~]#
gcc
-
c haha.c
[root@study ~]#
gcc
-
c sin_value.c
[root@study ~]#
gcc
-
c cos_value.c
# 2.
再
½
行
连½
成
为执
行
档
,并加入
libm
的
数学
函式,以
产
生
main
执
行
档
:
[root@study ~]#
gcc
-
o main main.o haha.o sin_value.o cos_value.o
-
lm
# 3.
本程序的
执
行
½
果,必
须输
入姓名、
360
度½的½度值
来计
算:
[root@study ~]#
./main
Please input your name:
VBird
<==
这
里先
输
入名字
Please enter the degree angle (ex> 90):
30
<==
输
入以
360
度½
为
主的½度
Hi, Dear VBird, nice to meet you.
<==
这
三行
为输
出的
½
果喔!
The Sin is: 0.50
The Cos is: 0.87