编译压缩代码 MFCompress-src-1.01 :对‘***’未定义的引用

Posted marklove

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了编译压缩代码 MFCompress-src-1.01 :对‘***’未定义的引用相关的知识,希望对你有一定的参考价值。

提示

MFCompressD.o:在函数‘main’中:
MFCompressD.c:(.text.startup+0x34a): 警告: the use of `tempnam‘ is dangerous, better use `mkstemp‘
MFCompressD.o:在函数‘DecodeSeqBlock’中:
MFCompressD.c:(.text+0x149):对‘GetInfoPModelIdx’未定义的引用
MFCompressD.c:(.text+0x20c):对‘GetPModelIdx4’未定义的引用
MFCompressD.c:(.text+0x335):对‘GetPModelIdx4’未定义的引用
MFCompressD.c:(.text+0x366):对‘GetPModelIdxAux4’未定义的引用
MFCompressD.c:(.text+0x3dc):对‘GetPModelIdxAux4’未定义的引用
MFCompressD.c:(.text+0x461):对‘GetInfoPModelIdx’未定义的引用
MFCompressD.c:(.text+0x561):对‘GetPModelIdx2’未定义的引用

解决方法 重新编译 

gcc -c -O2 -Wall -D_FILE_OFFSET_BITS=64 -o fcm.o fcm.c -fgnu89-inline

为何这样?

gcc -c -O2 -Wall -D_FILE_OFFSET_BITS=64 -o MFCompressD.o MFCompressD.c

出警告
In file included from MFCompressD.c:40:0:
fcm.h:164:13: warning: inline function ‘GetInfoPModelIdx’ declared but never defined
inline void GetInfoPModelIdx(Symbol *symbolPtr, CModel *cModel);
^~~~~~~~~~~~~~~~
fcm.h:162:13: warning: inline function ‘GetPModelIdxAux4’ declared but never defined
inline void GetPModelIdxAux4(Symbol *symbolPtr, CModel *cModel,
^~~~~~~~~~~~~~~~
fcm.h:160:13: warning: inline function ‘GetPModelIdx4’ declared but never defined
inline void GetPModelIdx4(Symbol *symbolPtr, CModel *cModel,
^~~~~~~~~~~~~
fcm.h:159:13: warning: inline function ‘GetPModelIdx2’ declared but never defined
inline void GetPModelIdx2(Symbol *symbolPtr, CModel *cModel);

gcc编译时遇到“inline function ‘***‘ declared but never defined"问题

在编译时添加选项 “-fgnu89-inline”,重新编译即可。

注意不是在“make”后面添加“-fgnu89-inline”,是在Makefile里在使用gcc编译的地方添加“-fgnu89-inline”。

最后

gcc -o main MFCompressD.o mem.o fasta.o fcm.o io.o bitio.o arith.o arith_aux.o -lm

MFCompressD.o:在函数‘main’中:
MFCompressD.c:(.text.startup+0x34a): 警告: the use of `tempnam‘ is dangerous, better use `mkstemp‘

运行 结果

*@*:~/下载/压缩/MFCompress-src-1.01$ ./main
Usage: MFCompressD [ -o MultiFastaFile ]
[ -v (verbose) ]
[ -V (verbose) ]
[ -t maxProcs (def 2) ]
[ -r recordRange (i:j or i) ]
[ -i (display file info) ]
EncodedFile
*@*:~/下载/压缩/MFCompress-src-1.01$ ^C

 

源码在此

https://files.cnblogs.com/files/marklove/MFCompress-src-1.01.tgz.zip

 






















以上是关于编译压缩代码 MFCompress-src-1.01 :对‘***’未定义的引用的主要内容,如果未能解决你的问题,请参考以下文章

下载源代码编译安装

browserify压缩合并源码反编译

编译压缩代码 MFCompress-src-1.01 :对‘***’未定义的引用

请教关于webpack压缩nodejs代码的问题

golang 打包,交叉编译,压缩

ASP.Net一键自动化更新代码编译合并dll压缩jscss混淆dllzip打包发布到测试环境的bat批处理