⭐ 欢迎来到虫虫下载站! | 📦 资源下载 📁 资源专辑 ℹ️ 关于我们
⭐ 虫虫下载站

📄 3.htm

📁 makefile文件详解
💻 HTM
字号:
<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN"><html><head><title>20CN网络安全小组--makefile(3) </title><meta http-equiv="Content-Type" content="text/html; charset=gb2312"><meta name="keywords" content="黑客,安全,网络,编程,黑客软件,安全软件,hacker,UNIX,Linux,FreeBSD"><meta name="description" content="黑客,安全,网络,编程,黑客软件,安全软件,hacker,UNIX,Linux,FreeBSD"><STYLE type=text/css>A {  font-size: 12px; color: 004d9c; TEXT-DECORATION: none}A:visited { TEXT-DECORATION: none}A:active {  TEXT-DECORATION: none}A:hover {  color: #0000FF; text-decoration: none}.9p {  font-size: 12px }.10p {  font-size: 10pt}.9pten {  font-size: 9pt; font-family: "verdana, Helvetica, Times New Roman, sans-serif"}.textinfo {  font-size: 10.5pt; font-family: "verdana, Helvetica, Times New Roman, 宋体, sans-serif"; line-height: 21px ;letter-spacing:}.code {  font-size: 10pt; font-family: "Courier New,  sans-serif"}</STYLE></head><body bgcolor="#FFFFFF" leftmargin="0" topmargin="4" marginwidth="0" marginheight="0"><div align="center"><table width="768" border="1" bordercolor="#FFFFFF" class="9p"> <tr> <td bordercolor="ffffff" colspan="2" bgcolor="ffffff" align="right">     <a href="http://www.20cn.net/aboutus.html">关于我们</a>   | <a href="http://www.20cn.net/joinus.html">加入我们</a>   | <a href="http://www.20cn.net/help.html">网站结构</a>   | <a href="http://www.20cn.net/linkus.html">交换连接</a>   | <a href="mailto:webmaster@20cn.com">联系我们</a> </td> </tr></table><table width="768" border="1" height="51" bordercolor="5296ff" class="9p">  <tr>    <td height="43" bordercolor="ffffff" colspan="2" bgcolor="ffffff">      <table width="100%" bgcolor="ffffff" bordercolor="ffffff" cellpadding="0" cellspacing="0" border="0">        <tr>          <td ><img src="http://www.20cn.net/images/logo.jpg"></td>          <td width="%100" height="40" align="center"><img src="http://www.20cn.net/images/banner.gif"></td>        </tr>      </table>    </td>  </tr>  <tr>    <td width="559" height="23" align="center">          | <a href="http://www.20cn.net/ns/html/">最新文档</a>          | <a href="http://www.20cn.net/ns/wz/">技术文摘</a>          | <a href="http://www.20cn.net/ns/ld/">安全漏洞</a>          | <a href="http://www.20cn.net/ns/cn/">菜鸟乐园</a>          | <a href="http://www.20cn.net/ns/hk/">黑客进阶</a>          | <a href="http://www.20cn.net/netdemon/">技术文库</a>          | <a href="http://www.20cn.net/download/" target="_blank">软件下载</a>          | <a href="http://www.20cn.net/club/" target="_blank">技术论坛</a>          |    </td>    <td width="193" bgcolor="adcbef" height="23">      <div align="center">        <script language=JavaScript src="http://www.20cn.net/date.js"></script>      </div>    </td>  </tr></table><!-- End Herder -->  <table width="768" border="1" bordercolor="5296ff">    <tr>      <td colspan="3" bordercolor="#FFFFFF">        <table width="100%" border="0" cellspacing="0" class="9p">          <tr>            <td width="74%"> 您现在的位置 >> <a href="http://www.20cn.net/">返回首页</a></td>            <td width="26%" align="center">		文档发表时间:2002-08-01            </td>        </table>      </td>    </tr>    <tr valign="top">      <td colspan="3" bordercolor="#FFFFFF">    <table width="100%" border="0" cellpadding="0" cellspacing="1" bgcolor="#adcbef" bordercolor="#adcbef">     <tr bgcolor="#F7F7F7" valign="top">      <td class="9p">       <table border="0" cellpadding="0" cellspacing="10" width="100%">        <tr>         <td class="textinfo">          <p>makefile(3)  <span style="font-size: 9pt">(阅览<font color="#FF0000">                <script src="http://www.20cn.net/cgi-bin/ns/count.cgi?id=20020801150855"></script>                </font>次)</span></p>              <p>makefile(3) <br><br> <br>作者:ermiao     发表时间:2002/07/09 09:15am<br> <br>标  题: 关于makefile(3) <br>   1.5 重新编译一个多文件项目 <br>清楚的区别编译和连接是很重要的。编译器使用源码文件来产生某种 形式的目标文件 (object files)。在这个过程中,外部的符号参考并 没有被解释或替换。然后我们使用连接器来连接这些目标文件和一些 标准的程序包再加你指定的程序包,最后连接生 成一个可执行程序。 在这个阶段,一个目标文件中对别的文件中的符号的参考被解释,并 报告不能被解释的参考,一般是以错误信息的形式报告出来。 基本的步骤就应该是,把你的源码文件一个一个的编译成目标文件的格 式,最后把所 有的目标文件加上需要的程序包连接成一个可执行文件。 具体怎么做是由你的编译器 决定的。这里我只给出 gcc (GNU C 编译 器)的有关命令,这些有可能对你的非 gcc 编译器也适用。 <br> gcc 是一个多目标的工具。它在需要的时候呼叫其它的元件(预处理 程序,编译器, <br>组合程序,连接器)。具体的哪些元件被呼叫取决于 输入文件的类型和你传递给它的 开关。 一般来说,如果你只给它C源码文件,它将预处理,编译,组合所有 的文件,然后把 所得的目标文件连接成一个可执行文件(一般生成的 文件被命名为 a.out )。你当然 可以这么做,但这会破坏很多我们 把一个项目分解成多个文件所得到的好处。 如果你给它一个 -c 开关,gcc 只把给它的文件编译成目标文件, 用源码文件的文件 名命名但把其后缀由“.c”或“.cc”变成“.o”。 如果你给它的是一列目标文件, gcc 会把它们连接成可执行文件, 缺省文件名是 a.out 。你可以改变缺省名,用开 -o 后跟你指定 的文件名。因此,当你改变了一个源码文件后,你需要重新编译它: 'gcc -c filename.c' 然后 重新连接你的项目: 'gcc -o exec_filename *.o'。 如果你改变了一个 header 档, 你需要重新编译所有 #include 过 这个档的源码文件,你可以用 'gcc -c file1.c file2.c file3.c' 然后象上边一样连接。 当然这么做是很繁琐的,幸亏我们有些工具使这个步骤变得简单。 本文的第二部分就 是介绍其中的一件工具:GNU Make 工具。 <br><br> <br> <br></p>              <p align="right"><a href="javascript:history.go(-1)" class="textinfo">返回            </a></p>         </td>        </tr>       </table>      </td>     </tr>    </table>   </td>  </tr> </table> <!-- Start Fooder --><p align="center" class="9p">建议您使用<font face="Verdana, Arial, Helvetica, sans-serif">IE</font>浏览器<font color="#FF0000" face="Verdana, Tahoma, Times New Roman, 宋体, MS Sans Serif">800×600</font>以上分辩率浏览以获最佳效果<br><br><font face="Verdana, Arial, Helvetica, sans-serif">20CN</font>网络安全小组版权所有<br><font face="Verdana, Tahoma, Times New Roman, 宋体, MS Sans Serif">Copyright &copy;2000-2003 20CN Network Security Group. All Rights Reserved.</font><br>如有任何问题及建议请写信至<a href="mailto:webmaster@20cn.net"><font color="#000000" face="Verdana, Tahoma, Times New Roman, 宋体, MS Sans Serif">webmaster@20cn.net</font></a></p><p align="center" class="9p"><img src="http://www.20cn.net/images/powerd-4.4bsd.gif" border="0"></p><p align="center" class="9p"><script language="JavaScript">var urodz = new Date("DEC 31, 2000");var now = new Date();var ile = now.getTime() - urodz.getTime();var dni = Math.floor(ile / (1000 * 60 * 60 * 24)) + 1;if (dni > 0)   document.write("建站第 " + dni + " 天")else    document.write("建站第 " + dni + " 天");</script><br></p></div></body></html>

⌨️ 快捷键说明

复制代码 Ctrl + C
搜索代码 Ctrl + F
全屏模式 F11
切换主题 Ctrl + Shift + D
显示快捷键 ?
增大字号 Ctrl + =
减小字号 Ctrl + -