由 海中鸯 在 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时也遇到了,如果有解决办法,发布一下啊,谢谢了 
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> quote:
104>
105> * * *
106>
107> _最初由 海中鸯 发表_
108>
109> **我在make setup check时,最后出现一个错误提示,看了些资料,说可能是在使用glibc 2.3.1或者更迟的库,大家帮我看看,我的OS:slackware9.1
110>
111>
112>
113> 以下是整个过程:
114>
115>
116>
117> root@lczm:/usr/local/src/qmail-1.03# make setup check
118>
119> ( cat warn-auto.sh; \
120>
121> echo CC='`head -1 conf-cc`'; \
122>
123> echo LD='`head -1 conf-ld`' \
124>
125> ) > auto-ccld.sh
126>
127> cat auto-ccld.sh make-load.sh > make-load
128>
129> chmod 755 make-load
130>
131> cat auto-ccld.sh find-systype.sh > find-systype
132>
133> chmod 755 find-systype
134>
135> ./find-systype > systype
136>
137> ( cat warn-auto.sh; ./make-load "`cat systype`" ) > load
138>
139> chmod 755 load
140>
141> cat auto-ccld.sh make-compile.sh > make-compile
142>
143> chmod 755 make-compile
144>
145> ( cat warn-auto.sh; ./make-compile "`cat systype`" ) > \
146>
147> compile
148>
149> chmod 755 compile
150>
151> ( ( ./compile tryvfork.c && ./load tryvfork ) >/dev/null \
152>
153> 2>&1 \
154>
155> && cat fork.h2 || cat fork.h1 ) > fork.h
156>
157> rm -f tryvfork.o tryvfork
158>
159> ./compile qmail-local.c
160>
161> qmail-local.c: In function `main':
162>
163> qmail-local.c:450: warning: return type of `main' is not `int'
164>
165> ./compile qmail.c
166>
167> ./compile quote.c
168>
169> ./compile now.c
170>
171> ./compile gfrom.c
172>
173> ./compile myctime.c
174>
175> ./compile slurpclose.c
176>
177> cat auto-ccld.sh make-makelib.sh > make-makelib
178>
179> chmod 755 make-makelib
180>
181> ( cat warn-auto.sh; ./make-makelib "`cat systype`" ) > \
182>
183> makelib
184>
185> chmod 755 makelib
186>
187> ./compile case_diffb.c
188>
189> ./compile case_diffs.c
190>
191> ./compile case_lowerb.c
192>
193> ./compile case_lowers.c
194>
195> ./compile case_starts.c
196>
197> ./makelib case.a case_diffb.o case_diffs.o case_lowerb.o \
198>
199> case_lowers.o case_starts.o
200>
201> ./compile getln.c
202>
203> ./compile getln2.c
204>
205> ./makelib getln.a getln.o getln2.o
206>
207> ./compile subgetopt.c
208>
209> ./compile sgetopt.c
210>
211> ./makelib getopt.a subgetopt.o sgetopt.o
212>
213> ./compile sig_alarm.c
214>
215> ( ( ./compile trysgprm.c && ./load trysgprm ) >/dev/null \
216>
217> 2>&1 \
218>
219> && echo \\#define HASSIGPROCMASK 1 || exit 0 ) > hassgprm.h
220>
221> rm -f trysgprm.o trysgprm
222>
223> ./compile sig_block.c
224>
225> ( ( ./compile trysgact.c && ./load trysgact ) >/dev/null \
226>
227> 2>&1 \
228>
229> && echo \\#define HASSIGACTION 1 || exit 0 ) > hassgact.h
230>
231> rm -f trysgact.o trysgact
232>
233> ./compile sig_catch.c
234>
235> ./compile sig_pause.c
236>
237> ./compile sig_pipe.c
238>
239> ./compile sig_child.c
240>
241> ./compile sig_hup.c
242>
243> ./compile sig_term.c
244>
245> ./compile sig_bug.c
246>
247> ./compile sig_misc.c
248>
249> ./makelib sig.a sig_alarm.o sig_block.o sig_catch.o \
250>
251> sig_pause.o sig_pipe.o sig_child.o sig_hup.o sig_term.o \
252>
253> sig_bug.o sig_misc.o
254>
255> ./compile open_append.c
256>
257> ./compile open_excl.c
258>
259> ./compile open_read.c
260>
261> ./compile open_trunc.c
262>
263> ./compile open_write.c
264>
265> ./makelib open.a open_append.o open_excl.o open_read.o \
266>
267> open_trunc.o open_write.o
268>
269> ./compile seek_cur.c
270>
271> ./compile seek_end.c
272>
273> ./com **</errno.h>