在Ubuntu-18.04上编译和安装Spro 5.0

时间:2018-11-27 10:52:51

标签: gcc ubuntu-18.04

我在编译Spro 5.0(在这里:https://github.com/giuliopaci/SPro)时遇到问题。在./configure之后,我收到以下警告:

ubuntu@ubuntu:~/Documents/spro-5.0$ ./configure
checking for a BSD-compatible install... /usr/bin/install -c
checking whether build environment is sane... yes
/home/ubuntu/Documents/spro-5.0/auxdir/missing: Unknown `--run' option
Try `/home/ubuntu/Documents/spro-5.0/auxdir/missing --help' for more information
configure: WARNING: `missing' script is too old or missing

警告类似于此答案(https://github.com/giuliopaci/SPro)。我找不到答案中提到的代码行,但确实在Makefile.am(第43页)和Makefile.in(第213页)中找到了“ -lm”和“ -lspro”。因此,我更改了两行,以使“ -lspro”在“ -lm”之前。 但是,在输入make时,此操作为我提供以下信息:

ubuntu@ubuntu:~/Documents/spro-5.0$ make
make  all-recursive
make[1]: Entering directory '/home/ubuntu/Documents/spro-5.0'
Making all in doc
make[2]: Entering directory '/home/ubuntu/Documents/spro-5.0/doc'
make[2]: Nothing to be done for 'all'.
make[2]: Leaving directory '/home/ubuntu/Documents/spro-5.0/doc'
Making all in auxdir
make[2]: Entering directory '/home/ubuntu/Documents/spro-5.0/auxdir'
make[2]: Nothing to be done for 'all'.
make[2]: Leaving directory '/home/ubuntu/Documents/spro-5.0/auxdir'
Making all in test
make[2]: Entering directory '/home/ubuntu/Documents/spro-5.0/test'
Making all in ref
make[3]: Entering directory '/home/ubuntu/Documents/spro-5.0/test/ref'
make[3]: Nothing to be done for 'all'.
make[3]: Leaving directory '/home/ubuntu/Documents/spro-5.0/test/ref'
Making all in dat
make[3]: Entering directory '/home/ubuntu/Documents/spro-5.0/test/dat'
make[3]: Nothing to be done for 'all'.
make[3]: Leaving directory '/home/ubuntu/Documents/spro-5.0/test/dat'
make[3]: Entering directory '/home/ubuntu/Documents/spro-5.0/test'
make[3]: Nothing to be done for 'all-am'.
make[3]: Leaving directory '/home/ubuntu/Documents/spro-5.0/test'
make[2]: Leaving directory '/home/ubuntu/Documents/spro-5.0/test'
make[2]: Entering directory '/home/ubuntu/Documents/spro-5.0'
if gcc -DHAVE_CONFIG_H -I. -I. -I.     -g -O2 -MT sig.o -MD -MP -MF ".deps/sig.Tpo" -c -o sig.o sig.c; \
then mv -f ".deps/sig.Tpo" ".deps/sig.Po"; else rm -f ".deps/sig.Tpo"; exit 1; fi
if gcc -DHAVE_CONFIG_H -I. -I. -I.     -g -O2 -MT spf.o -MD -MP -MF ".deps/spf.Tpo" -c -o spf.o spf.c; \
then mv -f ".deps/spf.Tpo" ".deps/spf.Po"; else rm -f ".deps/spf.Tpo"; exit 1; fi
if gcc -DHAVE_CONFIG_H -I. -I. -I.     -g -O2 -MT header.o -MD -MP -MF ".deps/header.Tpo" -c -o header.o header.c; \
then mv -f ".deps/header.Tpo" ".deps/header.Po"; else rm -f ".deps/header.Tpo"; exit 1; fi
if gcc -DHAVE_CONFIG_H -I. -I. -I.     -g -O2 -MT misc.o -MD -MP -MF ".deps/misc.Tpo" -c -o misc.o misc.c; \
then mv -f ".deps/misc.Tpo" ".deps/misc.Po"; else rm -f ".deps/misc.Tpo"; exit 1; fi
if gcc -DHAVE_CONFIG_H -I. -I. -I.     -g -O2 -MT lpc.o -MD -MP -MF ".deps/lpc.Tpo" -c -o lpc.o lpc.c; \
then mv -f ".deps/lpc.Tpo" ".deps/lpc.Po"; else rm -f ".deps/lpc.Tpo"; exit 1; fi
if gcc -DHAVE_CONFIG_H -I. -I. -I.     -g -O2 -MT convert.o -MD -MP -MF ".deps/convert.Tpo" -c -o convert.o convert.c; \
then mv -f ".deps/convert.Tpo" ".deps/convert.Po"; else rm -f ".deps/convert.Tpo"; exit 1; fi
if gcc -DHAVE_CONFIG_H -I. -I. -I.     -g -O2 -MT fft.o -MD -MP -MF ".deps/fft.Tpo" -c -o fft.o fft.c; \
then mv -f ".deps/fft.Tpo" ".deps/fft.Po"; else rm -f ".deps/fft.Tpo"; exit 1; fi
rm -f libspro.a
ar cru libspro.a sig.o spf.o header.o misc.o lpc.o convert.o fft.o 
ar: `u' modifier ignored since `D' is the default (see `U')
ranlib libspro.a
if gcc -DHAVE_CONFIG_H -I. -I. -I.     -g -O2 -MT scopy.o -MD -MP -MF ".deps/scopy.Tpo" -c -o scopy.o scopy.c; \
then mv -f ".deps/scopy.Tpo" ".deps/scopy.Po"; else rm -f ".deps/scopy.Tpo"; exit 1; fi
if gcc -DHAVE_CONFIG_H -I. -I. -I.     -g -O2 -MT gggetopt.o -MD -MP -MF ".deps/gggetopt.Tpo" -c -o gggetopt.o gggetopt.c; \
then mv -f ".deps/gggetopt.Tpo" ".deps/gggetopt.Po"; else rm -f ".deps/gggetopt.Tpo"; exit 1; fi
gggetopt.c: In function ‘_getopt_long’:
gggetopt.c:442:12: warning: implicit declaration of function ‘strcmp’ [-Wimplicit-function-declaration]
       if ( strcmp(optarg, "--") == 0 ) {
            ^~~~~~
gcc  -g -O2   -o scopy  scopy.o gggetopt.o -lspro -L. -lm  
if gcc -DHAVE_CONFIG_H -I. -I. -I.     -g -O2 -MT slpc.o -MD -MP -MF ".deps/slpc.Tpo" -c -o slpc.o slpc.c; \
then mv -f ".deps/slpc.Tpo" ".deps/slpc.Po"; else rm -f ".deps/slpc.Tpo"; exit 1; fi
gcc  -g -O2   -o slpc  slpc.o gggetopt.o -lspro -L. -lm  
if gcc -DHAVE_CONFIG_H -I. -I. -I.     -g -O2 -MT slpcep.o -MD -MP -MF ".deps/slpcep.Tpo" -c -o slpcep.o slpcep.c; \
then mv -f ".deps/slpcep.Tpo" ".deps/slpcep.Po"; else rm -f ".deps/slpcep.Tpo"; exit 1; fi
gcc  -g -O2   -o slpcep  slpcep.o gggetopt.o -lspro -L. -lm  
if gcc -DHAVE_CONFIG_H -I. -I. -I.     -g -O2 -MT sfbank.o -MD -MP -MF ".deps/sfbank.Tpo" -c -o sfbank.o sfbank.c; \
then mv -f ".deps/sfbank.Tpo" ".deps/sfbank.Po"; else rm -f ".deps/sfbank.Tpo"; exit 1; fi
gcc  -g -O2   -o sfbank  sfbank.o gggetopt.o -lspro -L. -lm  
if gcc -DHAVE_CONFIG_H -I. -I. -I.     -g -O2 -MT sfbcep.o -MD -MP -MF ".deps/sfbcep.Tpo" -c -o sfbcep.o sfbcep.c; \
then mv -f ".deps/sfbcep.Tpo" ".deps/sfbcep.Po"; else rm -f ".deps/sfbcep.Tpo"; exit 1; fi
gcc  -g -O2   -o sfbcep  sfbcep.o gggetopt.o -lspro -L. -lm  
if gcc -DHAVE_CONFIG_H -I. -I. -I.     -g -O2 -MT splp.o -MD -MP -MF ".deps/splp.Tpo" -c -o splp.o splp.c; \
then mv -f ".deps/splp.Tpo" ".deps/splp.Po"; else rm -f ".deps/splp.Tpo"; exit 1; fi
gcc  -g -O2   -o splp  splp.o gggetopt.o -lspro -L. -lm  
if gcc -DHAVE_CONFIG_H -I. -I. -I.     -g -O2 -MT scompare.o -MD -MP -MF ".deps/scompare.Tpo" -c -o scompare.o scompare.c; \
then mv -f ".deps/scompare.Tpo" ".deps/scompare.Po"; else rm -f ".deps/scompare.Tpo"; exit 1; fi
gcc  -g -O2   -o scompare  scompare.o gggetopt.o -lspro -L. -lm  
make[2]: Leaving directory '/home/ubuntu/Documents/spro-5.0'
make[1]: Leaving directory '/home/ubuntu/Documents/spro-5.0'

我想念什么吗? 我可能应该提到,首先我当然要尝试'./configure;。 make”,而无需对makefile进行任何更改。但是,这也给了我一些错误。

Makefile:353: recipe for target 'scopy' failed
make[2]: *** [scopy] Error 1
make[2]: Leaving directory '/home/ubuntu/Documents/spro-5.0'
Makefile:432: recipe for target 'all-recursive' failed
make[1]: *** [all-recursive] Error 1
make[1]: Leaving directory '/home/ubuntu/Documents/spro-5.0'
Makefile:236: recipe for target 'all' failed
make: *** [all] Error 2

我的gcc版本是7.3.0,如果有话要说,我将在Ubuntu 18.04上以持久模式运行。

0 个答案:

没有答案