免费注册 查看新帖 |

Chinaunix

  平台 论坛 博客 文库
最近访问板块 发新帖
查看: 3297 | 回复: 0
打印 上一主题 下一主题

[Mail] libcyrus.a: could not read symbols: Bad value [复制链接]

论坛徽章:
0
跳转到指定楼层
1 [收藏(0)] [报告]
发表于 2009-01-08 14:47 |只看该作者 |倒序浏览
Fedora 10 x86_64
cyrus-imapd-2.3.13
./configure --prefix=/usr/local/imapd --with-mysql=/usr/local/mysql --with-sasl=/usr/local/sasl

错误如下:
gcc -L/usr/local/mysql/lib/mysql  -Wl,-rpath,/usr/local/mysql/lib/mysql   -o \
         tls_prune tls_prune.o tls.o cli_fatal.o mutex_fake.o libimap.a ../lib/libcyrus.a ../lib/libcyrus_min.a  -L/usr/local/sasl/lib  -Wl,-rpath,/usr/local/sasl/lib -lsasl2  -lgssapi_krb5 -lkrb5 -lk5crypto -lcom_err -lkrb5support -lssl -lcrypto   -lfl  -lresolv   -ldb-4.5 -lmysqlclient -lpcre -lpcreposix   -lcom_err
make[1]: Leaving directory `/usr/src/cyrus-imapd-2.3.13/imap'
### Making all in /usr/src/cyrus-imapd-2.3.13/imtest
make[1]: Entering directory `/usr/src/cyrus-imapd-2.3.13/imtest'
gcc -c -I.. -I./../lib    -I/usr/local/mysql/include/mysql  -I/usr/local/sasl/include -DHAVE_CONFIG_H  -g -O2 imtest.c
imtest.c: In function ?.io_dump_cb?.
imtest.c:634: warning: cast from pointer to integer of different size
imtest.c:640: warning: cast from pointer to integer of different size
gcc -L/usr/local/mysql/lib/mysql  -Wl,-rpath,/usr/local/mysql/lib/mysql  -o imtest imtest.o ../lib/libcyrus.a ../lib/libcyrus_min.a  -L/usr/local/sasl/lib  -Wl,-rpath,/usr/local/sasl/lib -lsasl2  -lgssapi_krb5 -lkrb5 -lk5crypto -lcom_err -lkrb5support -lssl -lcrypto   -lfl  -lresolv   -ldb-4.5 -lmysqlclient -lpcre -lpcreposix  
make[1]: Leaving directory `/usr/src/cyrus-imapd-2.3.13/imtest'
### Making all in /usr/src/cyrus-imapd-2.3.13/perl
make[1]: Entering directory `/usr/src/cyrus-imapd-2.3.13/perl'
### Making all in /usr/src/cyrus-imapd-2.3.13/perl/imap
Checking if your kit is complete...
Looks good
Unrecognized argument in LIBS ignored: '-Wl,-rpath,/usr/local/sasl/lib'
Writing Makefile for Cyrus::IMAP
make[2]: Entering directory `/usr/src/cyrus-imapd-2.3.13/perl/imap'
cp IMAP/Admin.pm blib/lib/Cyrus/IMAP/Admin.pm
cp IMAP.pm blib/lib/Cyrus/IMAP.pm
cp IMAP/Shell.pm blib/lib/Cyrus/IMAP/Shell.pm
cp IMAP/IMSP.pm blib/lib/Cyrus/IMAP/IMSP.pm
/usr/bin/perl /usr/lib/perl5/5.10.0/ExtUtils/xsubpp  -typemap /usr/lib/perl5/5.10.0/ExtUtils/typemap -typemap typemap  IMAP.xs > IMAP.xsc && mv IMAP.xsc IMAP.c
gcc -std=gnu99 -c  -I../../lib -I../.. -I../../com_err/et -I/usr/local/sasl/include  -D_REENTRANT -D_GNU_SOURCE -DDEBUGGING -fno-strict-aliasing -pipe -I/usr/local/include -D_LARGEFILE_SOURCE -D_FILE_OFFSET_BITS=64 -I/usr/include/gdbm -O2 -g -pipe -Wall -Wp,-D_FORTIFY_SOURCE=2 -fexceptions -fstack-protector --param=ssp-buffer-size=4 -m64 -mtune=generic -DPERL_USE_SAFE_PUTENV   -DVERSION=\"1.00\" -DXS_VERSION=\"1.00\" -fPIC "-I/usr/lib64/perl5/5.10.0/x86_64-linux-thread-multi/CORE"  -DPERL_POLLUTE IMAP.c
IMAP.c: In function ?.S_Cyrus__IMAP_new?.
IMAP.c:353: warning: unused variable ?.ETVAL?
IMAP.c: In function ?.S_Cyrus__IMAP_flags?.
IMAP.c:552: warning: unused variable ?.arg?
IMAP.c: In function ?.S_Cyrus__IMAP__authenticate?.
IMAP.c:659: warning: unused variable ?.ETVAL?
IMAP.c: In function ?.S_Cyrus__IMAP__starttls?.
IMAP.c:751: warning: unused variable ?.ETVAL?
Running Mkbootstrap for Cyrus::IMAP ()
chmod 644 IMAP.bs
rm -f blib/arch/auto/Cyrus/IMAP/IMAP.so
gcc -std=gnu99  -shared -O2 -g -pipe -Wall -Wp,-D_FORTIFY_SOURCE=2 -fexceptions -fstack-protector --param=ssp-buffer-size=4 -m64 -mtune=generic -DPERL_USE_SAFE_PUTENV IMAP.o  -o blib/arch/auto/Cyrus/IMAP/IMAP.so ../../lib/libcyrus.a ../../lib/libcyrus_min.a        \
           -ldb-4.5 -L/usr/local/sasl/lib -lsasl2 -lssl -lcrypto          \
          
/usr/bin/ld: ../../lib/libcyrus.a(imclient.o): relocation R_X86_64_32S against `a local symbol' can not be used when making a shared object; recompile with -fPIC
../../lib/libcyrus.a: could not read symbols: Bad value
collect2: ld returned 1 exit status
make[2]: *** [blib/arch/auto/Cyrus/IMAP/IMAP.so] Error 1
make[2]: Leaving directory `/usr/src/cyrus-imapd-2.3.13/perl/imap'
make[1]: *** [all] Error 1
make[1]: Leaving directory `/usr/src/cyrus-imapd-2.3.13/perl'
make: *** [all] Error 1



google了好多结果,其中一个是:
CFLAGS="-g -O2 -fPIC" ./configure …………

这样解决有是根本解决办法吗?还是这个版本的软件在64位系统上有问题呢?

[ 本帖最后由 zyyzly 于 2009-1-8 14:49 编辑 ]
您需要登录后才可以回帖 登录 | 注册

本版积分规则 发表回复

  

北京盛拓优讯信息技术有限公司. 版权所有 京ICP备16024965号-6 北京市公安局海淀分局网监中心备案编号:11010802020122 niuxiaotong@pcpop.com 17352615567
未成年举报专区
中国互联网协会会员  联系我们:huangweiwei@itpub.net
感谢所有关心和支持过ChinaUnix的朋友们 转载本站内容请注明原作者名及出处

清除 Cookies - ChinaUnix - Archiver - WAP - TOP