?? software-building-7.html
字號(hào):
<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 3.2 Final//EN">
<HTML>
<HEAD><META HTTP-EQUIV="Content-Type" CONTENT="text/html; charset=gb2312">
<META NAME="GENERATOR" CONTENT="SGML-Tools 1.0.7">
<TITLE>在 Linux 下建立軟體套件: 第二個(gè)例子: Xloadimage</TITLE>
<LINK HREF="Software-Building-8.html" REL=next>
<LINK HREF="Software-Building-6.html" REL=previous>
<LINK HREF="Software-Building.html#toc7" REL=contents>
</HEAD>
<BODY>
<A HREF="Software-Building-8.html">Next</A>
<A HREF="Software-Building-6.html">Previous</A>
<A HREF="Software-Building.html#toc7">Contents</A>
<HR>
<H2><A NAME="s7">7. 第二個(gè)例子: Xloadimage</A></H2>
<P>這個(gè)例子提出較簡單的問題. <B>xloadimage</B>
程式加入到我的圖形工作組似乎是很有用. 我從一本由 Mui 和 Quercia 所著的好書
<A HREF="Software-Building-11.html#refs">X User Tools</A>
所附的 CD 上的原始碼目錄(source directory), 直接復(fù)制 <EM>xloadi41.gz</EM>
檔案下來. 如預(yù)期的, 用 <B>tar xzvf</B> 解開所有檔案. 然而,
<B>make</B> 出現(xiàn)了令人討厭的錯(cuò)誤而且中斷.
<P>
<HR>
<PRE>
gcc -c -O -fstrength-reduce -finline-functions -fforce-mem
-fforce-addr -DSYSV -I/usr/X11R6/include
-DSYSPATHFILE=\"/usr/lib/X11/Xloadimage\" mcidas.c
In file included from /usr/include/stdlib.h:32,
from image.h:23,
from xloadimage.h:15,
from mcidas.c:7:
/usr/lib/gcc-lib/i486-linux/2.6.3/include/stddef.h:215:
conflicting types for `wchar_t'
/usr/X11R6/include/X11/Xlib.h:74: previous declaration of
`wchar_t'
make[1]: *** [mcidas.o] Error 1
make[1]: Leaving directory
`/home/thegrendel/tst/xloadimage.4.1'
make: *** [default] Error 2
</PRE>
<HR>
<P>這錯(cuò)誤訊息含有最根本的線索.
<P>看一下檔案 <EM>image.h</EM> 的23行.
<HR>
<PRE>
#include <stdlib.h>
</PRE>
<HR>
啊哈! 在 <EM>xloadimage</EM>, <CODE>wchar_t</CODE>
原始碼的某處已經(jīng)重復(fù)定義了在標(biāo)準(zhǔn) include 檔案 <CODE>stdlib.h</CODE> 已定義的東西.
首先試試將在 <CODE>image.h</CODE> 的23行標(biāo)注(commenting out)起來,
也許 <CODE>stdlib.h include</CODE> 是不大需要的.
<P>此時(shí), <EM>build</EM> 過程沒有任何重大錯(cuò)誤.
<B>xloadimage</B> 程式現(xiàn)在功能都正常.
<P>
<P>
<P>
<P>
<P>
<HR>
<A HREF="Software-Building-8.html">Next</A>
<A HREF="Software-Building-6.html">Previous</A>
<A HREF="Software-Building.html#toc7">Contents</A>
</BODY>
</HTML>
?? 快捷鍵說明
復(fù)制代碼
Ctrl + C
搜索代碼
Ctrl + F
全屏模式
F11
切換主題
Ctrl + Shift + D
顯示快捷鍵
?
增大字號(hào)
Ctrl + =
減小字號(hào)
Ctrl + -