安装qmail出错,请各位帮我看看!

由 海中鸯 在 03-11-2004 16:11 发表:

安装qmail出错,请各位帮我看看!

我在make setup check时,最后出现一个错误提示,看了些资料,说可能是在使用glibc 2.3.1或者更迟的库,大家帮我看看,我的OS:slackware9.1

以下是整个过程:

root@lczm:/usr/local/src/qmail-1.03# make setup check

( cat warn-auto.sh; \

echo CC='head -1 conf-cc'; \

echo LD='head -1 conf-ld' \

) > auto-ccld.sh

cat auto-ccld.sh make-load.sh > make-load

chmod 755 make-load

cat auto-ccld.sh find-systype.sh > find-systype

chmod 755 find-systype

./find-systype > systype

( cat warn-auto.sh; ./make-load "cat systype" ) > load

chmod 755 load

cat auto-ccld.sh make-compile.sh > make-compile

chmod 755 make-compile

( cat warn-auto.sh; ./make-compile "cat systype" ) > \

compile

chmod 755 compile

( ( ./compile tryvfork.c && ./load tryvfork ) >/dev/null \

2>&1 \

&& cat fork.h2 || cat fork.h1 ) > fork.h

rm -f tryvfork.o tryvfork

./compile qmail-local.c

qmail-local.c: In function `main':

qmail-local.c:450: warning: return type of main' is not int'

./compile qmail.c

./compile quote.c

./compile now.c

./compile gfrom.c

./compile myctime.c

./compile slurpclose.c

cat auto-ccld.sh make-makelib.sh > make-makelib

chmod 755 make-makelib

( cat warn-auto.sh; ./make-makelib "cat systype" ) > \

makelib

chmod 755 makelib

./compile case_diffb.c

./compile case_diffs.c

./compile case_lowerb.c

./compile case_lowers.c

./compile case_starts.c

./makelib case.a case_diffb.o case_diffs.o case_lowerb.o \

case_lowers.o case_starts.o

./compile getln.c

./compile getln2.c

./makelib getln.a getln.o getln2.o

./compile subgetopt.c

./compile sgetopt.c

./makelib getopt.a subgetopt.o sgetopt.o

./compile sig_alarm.c

( ( ./compile trysgprm.c && ./load trysgprm ) >/dev/null \

2>&1 \

&& echo \#define HASSIGPROCMASK 1 || exit 0 ) > hassgprm.h

rm -f trysgprm.o trysgprm

./compile sig_block.c

( ( ./compile trysgact.c && ./load trysgact ) >/dev/null \

2>&1 \

&& echo \#define HASSIGACTION 1 || exit 0 ) > hassgact.h

rm -f trysgact.o trysgact

./compile sig_catch.c

./compile sig_pause.c

./compile sig_pipe.c

./compile sig_child.c

./compile sig_hup.c

./compile sig_term.c

./compile sig_bug.c

./compile sig_misc.c

./makelib sig.a sig_alarm.o sig_block.o sig_catch.o \

sig_pause.o sig_pipe.o sig_child.o sig_hup.o sig_term.o \

sig_bug.o sig_misc.o

./compile open_append.c

./compile open_excl.c

./compile open_read.c

./compile open_trunc.c

./compile open_write.c

./makelib open.a open_append.o open_excl.o open_read.o \

open_trunc.o open_write.o

./compile seek_cur.c

./compile seek_end.c

./compile seek_set.c

./compile seek_trunc.c

./makelib seek.a seek_cur.o seek_end.o seek_set.o \

seek_trunc.o

( ( ./compile tryflock.c && ./load tryflock ) >/dev/null \

2>&1 \

&& echo \#define HASFLOCK 1 || exit 0 ) > hasflock.h

rm -f tryflock.o tryflock

./compile lock_ex.c

./compile lock_exnb.c

./compile lock_un.c

./makelib lock.a lock_ex.o lock_exnb.o lock_un.o

./compile fd_copy.c

./compile fd_move.c

./makelib fd.a fd_copy.o fd_move.o

( ( ./compile trywaitp.c && ./load trywaitp ) >/dev/null \

2>&1 \

&& echo \#define HASWAITPID 1 || exit 0 ) > haswaitp.h

rm -f trywaitp.o trywaitp

./compile wait_pid.c

./compile wait_nohang.c

./makelib wait.a wait_pid.o wait_nohang.o

./compile env.c

./compile envread.c

./makelib env.a env.o envread.o

./compile stralloc_eady.c

./compile stralloc_pend.c

./compile stralloc_copy.c

./compile stralloc_opys.c

./compile stralloc_opyb.c

./compile stralloc_cat.c

./compile stralloc_cats.c

./compile stralloc_catb.c

./compile stralloc_arts.c

./makelib stralloc.a stralloc_eady.o stralloc_pend.o \

stralloc_copy.o stralloc_opys.o stralloc_opyb.o \

stralloc_cat.o stralloc_cats.o stralloc_catb.o \

stralloc_arts.o

./compile alloc.c

./compile alloc_re.c

./makelib alloc.a alloc.o alloc_re.o

./compile strerr_sys.c

./compile strerr_die.c

./makelib strerr.a strerr_sys.o strerr_die.o

./compile substdio.c

./compile substdi.c

./compile substdo.c

./compile subfderr.c

./compile subfdout.c

./compile subfdouts.c

./compile subfdin.c

./compile subfdins.c

./compile substdio_copy.c

./makelib substdio.a substdio.o substdi.o substdo.o \

subfderr.o subfdout.o subfdouts.o subfdin.o subfdins.o \

substdio_copy.o

./compile error.c

./compile error_str.c

./compile error_temp.c

./makelib error.a error.o error_str.o error_temp.o

./compile str_len.c

./compile str_diff.c

./compile str_diffn.c

./compile str_cpy.c

./compile str_chr.c

./compile str_rchr.c

./compile str_start.c

./compile byte_chr.c

./compile byte_rchr.c

./compile byte_diff.c

./compile byte_copy.c

./compile byte_cr.c

./compile byte_zero.c

./makelib str.a str_len.o str_diff.o str_diffn.o str_cpy.o \

str_chr.o str_rchr.o str_start.o byte_chr.o byte_rchr.o \

byte_diff.o byte_copy.o byte_cr.o byte_zero.o

./compile fmt_str.c

./compile fmt_strn.c

./compile fmt_uint.c

./compile fmt_uint0.c

./compile fmt_ulong.c

./compile scan_ulong.c

./compile scan_8long.c

./makelib fs.a fmt_str.o fmt_strn.o fmt_uint.o fmt_uint0.o \

fmt_ulong.o scan_ulong.o scan_8long.o

./compile datetime.c

./compile datetime_un.c

./makelib datetime.a datetime.o datetime_un.o

./compile auto-str.c

auto-str.c: In function `main':

auto-str.c:17: warning: return type of main' is not int'

./load auto-str substdio.a error.a str.a

substdio.a(substdo.o)(.text+0x47): In function `allwrite':

undefined reference to `errno'

collect2: ld returned 1 exit status

make: *** [auto-str] Error 1

root@lczm:/usr/local/src/qmail-1.03#


人有爱心!


由 海中鸯 在 03-12-2004 08:37 发表:


帮我看分析下呀.


人有爱心!


由 dancingpig 在 03-12-2004 09:52 发表:


substdio.a(substdo.o)(.text+0x47): In function `allwrite':

undefined reference to `errno'

应该是errno没定义吧


由 海中鸯 在 03-12-2004 10:14 发表:


跟glibc版本有关,我的是2.3.1以上的版本,编译时就会报错。请问该如何解决呀?


人有爱心!


由 khj99 在 03-12-2004 18:32 发表:


在error.h文件里面加上:

#include

  1<errno.h>
  2
  3  
  4
  5
  6* * *
  7
  8  
  9_由 Snoopy 在 03-13-2004 16:30 发表:_   
 10  
 11
 12
 13****
 14
 15  
 16  
 17
 18
 19补丁没打,qmail-1.03.errno.patch   
 20  
 21  
 22  
 23其他补丁也给打上吧 
 24
 25__________________   
 26  
 27And then in the evening light, when the bars of freedom fall   
 28  
 29I watch the two of you in the shadows on the wall   
 30  
 31How in the darkness steals some of the choices from my hand   
 32  
 33Then will I begin to under 
 34
 35  
 36
 37
 38* * *
 39
 40  
 41_由 海中鸯 在 03-15-2004 09:03 发表:_   
 42  
 43
 44
 45****
 46
 47  
 48  
 49
 50
 51谢谢各位,已经安装完成。   
 52  
 53但还存在下面一个问题:   
 54  
 55  
 56  
 57我的OS:slackware9.1,   
 58  
 59参考文档里有这么一句话:“注意: 一个Slackware的用户报告x1之前的SV /etc/inittab条目必须被移动, 否则启动后无法运行svscan. ”,对这话的理解,我把握不了,请各位帮我分析一下呀。 
 60
 61__________________   
 62  
 63人有爱心! 
 64
 65  
 66
 67
 68* * *
 69
 70  
 71_由 yueyue_1115 在 06-15-2004 11:30 发表:_   
 72  
 73
 74
 75****
 76
 77  
 78  
 79
 80
 81关于svscan的问题,我在启动qmail时也遇到了,如果有解决办法,发布一下啊,谢谢了 ![](http://linuxsir.zahui.net/html/11/images/smilies/biggrin.gif)
 82
 83__________________   
 84  
 85船过水无痕...... 
 86
 87  
 88
 89
 90* * *
 91
 92  
 93_由 Snoopy 在 06-15-2004 14:19 发表:_   
 94  
 95
 96
 97**回复: 安装qmail出错,请各位帮我看看!**
 98
 99  
100  
101
102
103&gt; quote: 
104&gt; 
105&gt; * * *
106&gt; 
107&gt; _最初由 海中鸯 发表_   
108&gt;    
109&gt;  **我在make setup check时,最后出现一个错误提示,看了些资料,说可能是在使用glibc 2.3.1或者更迟的库,大家帮我看看,我的OS:slackware9.1  
110&gt;    
111&gt;    
112&gt;    
113&gt;  以下是整个过程:   
114&gt;    
115&gt;    
116&gt;    
117&gt;  root@lczm:/usr/local/src/qmail-1.03# make setup check   
118&gt;    
119&gt;  ( cat warn-auto.sh; \   
120&gt;    
121&gt;  echo CC='`head -1 conf-cc`'; \   
122&gt;    
123&gt;  echo LD='`head -1 conf-ld`' \   
124&gt;    
125&gt;  ) &gt; auto-ccld.sh   
126&gt;    
127&gt;  cat auto-ccld.sh make-load.sh &gt; make-load   
128&gt;    
129&gt;  chmod 755 make-load   
130&gt;    
131&gt;  cat auto-ccld.sh find-systype.sh &gt; find-systype   
132&gt;    
133&gt;  chmod 755 find-systype   
134&gt;    
135&gt;  ./find-systype &gt; systype   
136&gt;    
137&gt;  ( cat warn-auto.sh; ./make-load "`cat systype`" ) &gt; load   
138&gt;    
139&gt;  chmod 755 load   
140&gt;    
141&gt;  cat auto-ccld.sh make-compile.sh &gt; make-compile   
142&gt;    
143&gt;  chmod 755 make-compile   
144&gt;    
145&gt;  ( cat warn-auto.sh; ./make-compile "`cat systype`" ) &gt; \   
146&gt;    
147&gt;  compile   
148&gt;    
149&gt;  chmod 755 compile   
150&gt;    
151&gt;  ( ( ./compile tryvfork.c &amp;&amp; ./load tryvfork ) &gt;/dev/null \   
152&gt;    
153&gt;  2&gt;&amp;1 \   
154&gt;    
155&gt;  &amp;&amp; cat fork.h2 || cat fork.h1 ) &gt; fork.h   
156&gt;    
157&gt;  rm -f tryvfork.o tryvfork   
158&gt;    
159&gt;  ./compile qmail-local.c   
160&gt;    
161&gt;  qmail-local.c: In function `main':   
162&gt;    
163&gt;  qmail-local.c:450: warning: return type of `main' is not `int'   
164&gt;    
165&gt;  ./compile qmail.c   
166&gt;    
167&gt;  ./compile quote.c   
168&gt;    
169&gt;  ./compile now.c   
170&gt;    
171&gt;  ./compile gfrom.c   
172&gt;    
173&gt;  ./compile myctime.c   
174&gt;    
175&gt;  ./compile slurpclose.c   
176&gt;    
177&gt;  cat auto-ccld.sh make-makelib.sh &gt; make-makelib   
178&gt;    
179&gt;  chmod 755 make-makelib   
180&gt;    
181&gt;  ( cat warn-auto.sh; ./make-makelib "`cat systype`" ) &gt; \   
182&gt;    
183&gt;  makelib   
184&gt;    
185&gt;  chmod 755 makelib   
186&gt;    
187&gt;  ./compile case_diffb.c   
188&gt;    
189&gt;  ./compile case_diffs.c   
190&gt;    
191&gt;  ./compile case_lowerb.c   
192&gt;    
193&gt;  ./compile case_lowers.c   
194&gt;    
195&gt;  ./compile case_starts.c   
196&gt;    
197&gt;  ./makelib case.a case_diffb.o case_diffs.o case_lowerb.o \   
198&gt;    
199&gt;  case_lowers.o case_starts.o   
200&gt;    
201&gt;  ./compile getln.c   
202&gt;    
203&gt;  ./compile getln2.c   
204&gt;    
205&gt;  ./makelib getln.a getln.o getln2.o   
206&gt;    
207&gt;  ./compile subgetopt.c   
208&gt;    
209&gt;  ./compile sgetopt.c   
210&gt;    
211&gt;  ./makelib getopt.a subgetopt.o sgetopt.o   
212&gt;    
213&gt;  ./compile sig_alarm.c   
214&gt;    
215&gt;  ( ( ./compile trysgprm.c &amp;&amp; ./load trysgprm ) &gt;/dev/null \   
216&gt;    
217&gt;  2&gt;&amp;1 \   
218&gt;    
219&gt;  &amp;&amp; echo \\#define HASSIGPROCMASK 1 || exit 0 ) &gt; hassgprm.h   
220&gt;    
221&gt;  rm -f trysgprm.o trysgprm   
222&gt;    
223&gt;  ./compile sig_block.c   
224&gt;    
225&gt;  ( ( ./compile trysgact.c &amp;&amp; ./load trysgact ) &gt;/dev/null \   
226&gt;    
227&gt;  2&gt;&amp;1 \   
228&gt;    
229&gt;  &amp;&amp; echo \\#define HASSIGACTION 1 || exit 0 ) &gt; hassgact.h   
230&gt;    
231&gt;  rm -f trysgact.o trysgact   
232&gt;    
233&gt;  ./compile sig_catch.c   
234&gt;    
235&gt;  ./compile sig_pause.c   
236&gt;    
237&gt;  ./compile sig_pipe.c   
238&gt;    
239&gt;  ./compile sig_child.c   
240&gt;    
241&gt;  ./compile sig_hup.c   
242&gt;    
243&gt;  ./compile sig_term.c   
244&gt;    
245&gt;  ./compile sig_bug.c   
246&gt;    
247&gt;  ./compile sig_misc.c   
248&gt;    
249&gt;  ./makelib sig.a sig_alarm.o sig_block.o sig_catch.o \   
250&gt;    
251&gt;  sig_pause.o sig_pipe.o sig_child.o sig_hup.o sig_term.o \   
252&gt;    
253&gt;  sig_bug.o sig_misc.o   
254&gt;    
255&gt;  ./compile open_append.c   
256&gt;    
257&gt;  ./compile open_excl.c   
258&gt;    
259&gt;  ./compile open_read.c   
260&gt;    
261&gt;  ./compile open_trunc.c   
262&gt;    
263&gt;  ./compile open_write.c   
264&gt;    
265&gt;  ./makelib open.a open_append.o open_excl.o open_read.o \   
266&gt;    
267&gt;  open_trunc.o open_write.o   
268&gt;    
269&gt;  ./compile seek_cur.c   
270&gt;    
271&gt;  ./compile seek_end.c   
272&gt;    
273&gt;  ./com **</errno.h>
Published At
Categories with 服务器类
Tagged with
comments powered by Disqus