jiangtao9999 发表于 2009-6-16 21:23:53

编译 krb5 出这个问题怎么解决?


(cd ../../lib && ln -s ../util/support/libkrb5support.a .)
gcc -fPIC -DSHARED   -I../../include -I./../../include -I. -I. -DKRB5_DEPRECATED=1 -DKRB5_PRIVATE=1 -I/usr/include/et -O2 -g -pipe -mabi=64 -I/usr/include/et -fPIC -pthread -c threads.c -o threads.so.o && mv -f threads.so.o threads.so
In file included from threads.c:34:
../../include/k5-platform.h:378:3: error: #error "Don't know how to do unload-time finalization for this configuration."
threads.c:37: warning: data definition has no type or storage class
threads.c:37: warning: parameter names (without types) in function declaration
make: *** Error 1
make: Leaving directory `/usr/src/redhat/BUILD/krb5-1.5/src/util/support'
make: *** Error 1
make: Leaving directory `/usr/src/redhat/BUILD/krb5-1.5/src/util'
make: *** Error 1

sejishikong 发表于 2009-6-17 09:27:54

交叉编译的时候出现的?
为什么要交叉krb5啊。
给gcc 加上lpthread试试。

jiangtao9999 发表于 2009-6-17 11:29:23

我一直是本地编译……

sejishikong 发表于 2009-6-17 13:07:58

本地编译应该不出现这个才对。
具体的解决办法我也不太清楚了,不过交叉的时候有时候会出现这个。降级试试。

jiangtao9999 发表于 2009-6-17 14:08:40

:shock:

jiangtao9999 发表于 2009-6-21 19:39:55

diff -Nur krb5-1.5.ori/src/config/libobj.in krb5-1.5/src/config/libobj.in
--- krb5-1.5.ori/src/config/libobj.in   2009-06-21 18:48:36.000000000 +0800
+++ krb5-1.5/src/config/libobj.in       2009-06-21 18:49:31.000000000 +0800
@@ -9,7 +9,7 @@

.SUFFIXES: .c .so .po
.c.so:
-       $(CC) $(PICFLAGS) -DSHARED $(ALL_CFLAGS) -c $< -o $*.so.o && $(MV) $*.so.o $*.so
+       $(CC) $(PICFLAGS) $(ALL_CFLAGS) -c $< -o $*.so.o && $(MV) $*.so.o $*.so
.c.po:
      $(CC) $(PROFFLAGS) $(ALL_CFLAGS) -c $< -o $*.po.o && $(MV) $*.po.o $*.po

他非要用 shared 方式编译,但问题是这个 header 里面写最后一步才检测是不是 shared ,前面两个不知道为什么全都不满足。只好去搞定第三个条件了。
页: [1]
查看完整版本: 编译 krb5 出这个问题怎么解决?