当前位置: 技术问答>linux和unix
请各位Unix高手帮小弟解决下问题,感激不尽啊!
来源: 互联网 发布时间:2015-12-17
本文导语: 小弟最近在Saloris上生成了一个动态库,然后在Sendmail里使用这个库,可是重新编译Sendmail的时候总是报错: ld: fatal: file /usr/local/lib/libnonrepservice.so: unknown file type 在网上查了之后发现是libnonrepservice.so这个文件不是...
小弟最近在Saloris上生成了一个动态库,然后在Sendmail里使用这个库,可是重新编译Sendmail的时候总是报错:
ld: fatal: file /usr/local/lib/libnonrepservice.so: unknown file type
在网上查了之后发现是libnonrepservice.so这个文件不是系统需要的动态库类型文件,就是文件格式不对。小弟觉得是编译动态库时的编译选项不对,下面是我写的makefile:
# $Id: Makefile,v 1.0 06 August 2004
#
CC = g++
CFLAGS = -I/usr/local/ssl/include -I/usr/local/mysql/include/mysql -L/usr/local
/mysql/lib/mysql -L/usr/local/ssl/lib
PROG = libnonrepservice.so
OBJS = AbnormalTransDestin.o ATNonrepudiation.o ATService.o Certificate.o Comman
d.o CRL.o Evidence.o Factory.o ISOPKIM2Auth.o ISOPKIM3Auth.o NonrepService.o Non
repudiationService.o NRPUM.o ServiceState.o SMI.o TS.o TTP.o X509CertExchange.o
$@ :
$(CC) $(CFLAGS) -fPIC -lcrypto -lsocket -lnsl -lmysqlclient -lz -o $@ $%
$(PROG): $(OBJS)
$(CC) -shared-libgcc -Wl -Wall -o $(PROG) $(OBJS) -lc
clean:
rm -f $(OBJS) core
小弟感激不尽啊。。。。。
ld: fatal: file /usr/local/lib/libnonrepservice.so: unknown file type
在网上查了之后发现是libnonrepservice.so这个文件不是系统需要的动态库类型文件,就是文件格式不对。小弟觉得是编译动态库时的编译选项不对,下面是我写的makefile:
# $Id: Makefile,v 1.0 06 August 2004
#
CC = g++
CFLAGS = -I/usr/local/ssl/include -I/usr/local/mysql/include/mysql -L/usr/local
/mysql/lib/mysql -L/usr/local/ssl/lib
PROG = libnonrepservice.so
OBJS = AbnormalTransDestin.o ATNonrepudiation.o ATService.o Certificate.o Comman
d.o CRL.o Evidence.o Factory.o ISOPKIM2Auth.o ISOPKIM3Auth.o NonrepService.o Non
repudiationService.o NRPUM.o ServiceState.o SMI.o TS.o TTP.o X509CertExchange.o
$@ :
$(CC) $(CFLAGS) -fPIC -lcrypto -lsocket -lnsl -lmysqlclient -lz -o $@ $%
$(PROG): $(OBJS)
$(CC) -shared-libgcc -Wl -Wall -o $(PROG) $(OBJS) -lc
clean:
rm -f $(OBJS) core
小弟感激不尽啊。。。。。
|
用file命令看一下libnonrepservice.so,返回什么结果?