ノンセクションの1 このページをアンテナに追加 RSSフィード Twitter

2011-05-04

2011年05月03日のツイート 00:14 2011年05月03日のツイートを含むブックマーク 2011年05月03日のツイートのブックマークコメント

[][][][]Installing perl-5.12.3 failed. 14:30 Installing perl-5.12.3 failed.を含むブックマーク Installing perl-5.12.3 failed.のブックマークコメント

perlbrew install perl-5.12.3
Attempting to load conf from ~/perl5/perlbrew/Conf.pm
Fetching perl-5.12.3 as ~/perl5/perlbrew/dists/perl-5.12.3.tar.gz
Installing perl-5.12.3 into ~/perl5/perlbrew/perls/perl-5.12.3
This could take a while. You can run the following command on another shell to track the status:

  tail -f ~/perl5/perlbrew/build.log

(cd ~/perl5/perlbrew/build; tar xzf ~/perl5/perlbrew/dists/perl-5.12.3.tar.gz;cd ~/perl5/perlbrew/build/perl-5.12.3;rm -f config.sh Policy.sh;patchperl;sh Configure -de '-Dprefix=~/perl5/perlbrew/perls/perl-5.12.3';make ;make test_harness && make install) >> '~/perl5/perlbrew/build.log' 2>&1
Installing perl-5.12.3 failed. See ~/perl5/perlbrew/build.log to see why.
If you want to force install the distribution, try:

  perlbrew --force install perl

ふーむ。


less ~/perl5/perlbrew/build.log
          CCCMD =  cc -DPERL_CORE -c -fno-strict-aliasing -pipe -fstack-protector -I/usr/l
ocal/include -D_LARGEFILE_SOURCE -D_FILE_OFFSET_BITS=64  -std=c89 -O2 -Wall -ansi -W -Wext
ra -Wdeclaration-after-statement -Wendif-labels -Wc++-compat
cc -fstack-protector -L/usr/local/lib -o miniperl \
              gv.o toke.o perly.o pad.o regcomp.o dump.o util.o mg.o reentr.o mro.o hv.o a
v.o run.o pp_hot.o sv.o pp.o scope.o pp_ctl.o pp_sys.o doop.o doio.o regexec.o utf8.o tain
t.o deb.o universal.o globals.o perlio.o perlapi.o numeric.o mathoms.o locale.o pp_pack.o
pp_sort.o   \
            miniperlmain.o opmini.o perlmini.o
pp.o: In function `Perl_pp_pow':
pp.c:(.text+0x2c93): undefined reference to `pow'
pp.o: In function `Perl_pp_modulo':
pp.c:(.text+0x3736): undefined reference to `floor'
pp.c:(.text+0x3759): undefined reference to `floor'
pp.c:(.text+0x3a55): undefined reference to `fmod'
pp.o: In function `Perl_pp_atan2':
pp.c:(.text+0x7fb0): undefined reference to `atan2'
pp.o: In function `Perl_pp_sin':
pp.c:(.text+0x80fb): undefined reference to `sin'
pp.o: In function `Perl_pp_int':
pp.c:(.text+0x856c): undefined reference to `floor'
pp.c:(.text+0x8594): undefined reference to `ceil'
pp.o:(.rodata+0x1c4): undefined reference to `cos'
pp.o:(.rodata+0x1c8): undefined reference to `sin'
pp.o:(.rodata+0x1cc): undefined reference to `sin'
pp.o:(.rodata+0x1d0): undefined reference to `exp'
pp.o:(.rodata+0x1d4): undefined reference to `log'
pp.o:(.rodata+0x1d8): undefined reference to `sqrt'
pp_sys.o: In function `S_gmtime64_r.clone.0':
pp_sys.c:(.text+0x173): undefined reference to `ceil'
pp_sys.c:(.text+0x1c6): undefined reference to `ceil'
pp_sys.c:(.text+0x219): undefined reference to `ceil'
pp_sys.c:(.text+0x2db): undefined reference to `floor'
pp_sys.c:(.text+0x4aa): undefined reference to `ceil'
pp_sys.c:(.text+0x5a2): undefined reference to `floor'
pp_sys.c:(.text+0x5fa): undefined reference to `floor'
pp_sys.c:(.text+0x612): undefined reference to `floor'
pp_sys.c:(.text+0x73b): undefined reference to `fmod'
pp_sys.c:(.text+0x76d): undefined reference to `fmod'
pp_sys.c:(.text+0x796): undefined reference to `fmod'
pp_sys.c:(.text+0x7bf): undefined reference to `fmod'
pp_sys.o: In function `Perl_pp_gmtime':
pp_sys.c:(.text+0xc602): undefined reference to `floor'
pp_pack.o: In function `S_pack_rec':
pp_pack.c:(.text+0x61fa): undefined reference to `floor'
pp_pack.c:(.text+0x621b): undefined reference to `floor'
pp_pack.c:(.text+0x623a): undefined reference to `floor'
collect2: ld returned 1 exit status
make: *** [miniperl] エラー 1
cc -fstack-protector -L/usr/local/lib -o miniperl \
              gv.o toke.o perly.o pad.o regcomp.o dump.o util.o mg.o reentr.o mro.o hv.o a
v.o run.o pp_hot.o sv.o pp.o scope.o pp_ctl.o pp_sys.o doop.o doio.o regexec.o utf8.o tain
t.o deb.o universal.o globals.o perlio.o perlapi.o numeric.o mathoms.o locale.o pp_pack.o
pp_sort.o   \
            miniperlmain.o opmini.o perlmini.o
pp.o: In function `Perl_pp_pow':
pp.c:(.text+0x2c93): undefined reference to `pow'
pp.o: In function `Perl_pp_modulo':
pp.c:(.text+0x3736): undefined reference to `floor'
pp.c:(.text+0x3759): undefined reference to `floor'
pp.c:(.text+0x3a55): undefined reference to `fmod'
pp.o: In function `Perl_pp_atan2':
pp.c:(.text+0x7fb0): undefined reference to `atan2'
pp.o: In function `Perl_pp_sin':
pp.c:(.text+0x80fb): undefined reference to `sin'
pp.o: In function `Perl_pp_int':
pp.c:(.text+0x856c): undefined reference to `floor'
pp.c:(.text+0x8594): undefined reference to `ceil'
pp.o:(.rodata+0x1c4): undefined reference to `cos'
pp.o:(.rodata+0x1c8): undefined reference to `sin'
pp.o:(.rodata+0x1cc): undefined reference to `sin'
pp.o:(.rodata+0x1d0): undefined reference to `exp'
pp.o:(.rodata+0x1d4): undefined reference to `log'
pp.o:(.rodata+0x1d8): undefined reference to `sqrt'
pp_sys.o: In function `S_gmtime64_r.clone.0':
pp_sys.c:(.text+0x173): undefined reference to `ceil'
pp_sys.c:(.text+0x1c6): undefined reference to `ceil'
pp_sys.c:(.text+0x219): undefined reference to `ceil'
pp_sys.c:(.text+0x2db): undefined reference to `floor'
pp_sys.c:(.text+0x4aa): undefined reference to `ceil'
pp_sys.c:(.text+0x5a2): undefined reference to `floor'
pp_sys.c:(.text+0x5fa): undefined reference to `floor'
pp_sys.c:(.text+0x612): undefined reference to `floor'
pp_sys.c:(.text+0x73b): undefined reference to `fmod'
pp_sys.c:(.text+0x76d): undefined reference to `fmod'
pp_sys.c:(.text+0x796): undefined reference to `fmod'
pp_sys.c:(.text+0x7bf): undefined reference to `fmod'
pp_sys.o: In function `Perl_pp_gmtime':
pp_sys.c:(.text+0xc602): undefined reference to `floor'
pp_pack.o: In function `S_pack_rec':
pp_pack.c:(.text+0x61fa): undefined reference to `floor'
pp_pack.c:(.text+0x621b): undefined reference to `floor'
pp_pack.c:(.text+0x623a): undefined reference to `floor'
collect2: ld returned 1 exit status
make: *** [miniperl] エラー 1
make install.perl install.man STRIPFLAGS= DESTDIR=""
make[1]: ディレクトリ `/home/mitsutos/perl5/perlbrew/build/perl-5.12.3' に入ります
cc -fstack-protector -L/usr/local/lib -o miniperl \
              gv.o toke.o perly.o pad.o regcomp.o dump.o util.o mg.o reentr.o mro.o hv.o av.o run.o pp_hot.o sv.o pp.o scope.o pp_ctl.o pp_sys.o doop.o doio.o regexec.o utf8.o taint.o deb.o universal.o globals.o perlio.o perlapi.o numeric.o mathoms.o locale.o pp_pack.o pp_sort.o   \
            miniperlmain.o opmini.o perlmini.o
pp.o: In function `Perl_pp_pow':
pp.c:(.text+0x2c93): undefined reference to `pow'
pp.o: In function `Perl_pp_modulo':
pp.c:(.text+0x3736): undefined reference to `floor'
pp.c:(.text+0x3759): undefined reference to `floor'
pp.c:(.text+0x3a55): undefined reference to `fmod'
pp.o: In function `Perl_pp_atan2':
pp.c:(.text+0x7fb0): undefined reference to `atan2'
pp.o: In function `Perl_pp_sin':
pp.c:(.text+0x80fb): undefined reference to `sin'
pp.o: In function `Perl_pp_int':
pp.c:(.text+0x856c): undefined reference to `floor'
pp.c:(.text+0x8594): undefined reference to `ceil'
pp.o:(.rodata+0x1c4): undefined reference to `cos'
pp.o:(.rodata+0x1c8): undefined reference to `sin'
pp.o:(.rodata+0x1cc): undefined reference to `sin'
pp.o:(.rodata+0x1d0): undefined reference to `exp'
pp.o:(.rodata+0x1d4): undefined reference to `log'
pp.o:(.rodata+0x1d8): undefined reference to `sqrt'
pp_sys.o: In function `S_gmtime64_r.clone.0':
pp_sys.c:(.text+0x173): undefined reference to `ceil'
pp_sys.c:(.text+0x1c6): undefined reference to `ceil'
pp_sys.c:(.text+0x219): undefined reference to `ceil'
pp_sys.c:(.text+0x2db): undefined reference to `floor'
pp_sys.c:(.text+0x4aa): undefined reference to `ceil'
pp_sys.c:(.text+0x5a2): undefined reference to `floor'
pp_sys.c:(.text+0x5fa): undefined reference to `floor'
pp_sys.c:(.text+0x612): undefined reference to `floor'
pp_sys.c:(.text+0x73b): undefined reference to `fmod'
pp_sys.c:(.text+0x76d): undefined reference to `fmod'
pp_sys.c:(.text+0x796): undefined reference to `fmod'
pp_sys.c:(.text+0x7bf): undefined reference to `fmod'
pp_sys.o: In function `Perl_pp_gmtime':
pp_sys.c:(.text+0xc602): undefined reference to `floor'
pp_pack.o: In function `S_pack_rec':
pp_pack.c:(.text+0x61fa): undefined reference to `floor'
pp_pack.c:(.text+0x621b): undefined reference to `floor'
pp_pack.c:(.text+0x623a): undefined reference to `floor'
collect2: ld returned 1 exit status
make[1]: *** [miniperl] エラー 1
make[1]: ディレクトリ `/home/mitsutos/perl5/perlbrew/build/perl-5.12.3' から出ます
make: *** [install] エラー 2

libmathをリンクするのを忘れている?

config.sh編集

libs=' '

libs=' -lm -lrt '

に変更。しかし、config.shって直に編集していいものか確信が持てない。

一応perlは生成された、テストは成功するかな?

make test 結果

make test
****
Failed 33 tests out of 1653, 98.00% okay.
        ../cpan/Encode/t/Aliases.t
        ../cpan/Encode/t/CJKT.t
        ../cpan/Encode/t/Encode.t
        ../cpan/Encode/t/Unicode.t
        ../cpan/Encode/t/at-cn.t
        ../cpan/Encode/t/at-tw.t
        ../cpan/Encode/t/enc_data.t
        ../cpan/Encode/t/enc_eucjp.t
        ../cpan/Encode/t/enc_module.t
        ../cpan/Encode/t/encoding.t
        ../cpan/Encode/t/guess.t
        ../cpan/Encode/t/jis7-fallback.t
        ../cpan/Encode/t/jperl.t
        ../cpan/Encode/t/mime-header.t
        ../cpan/Encode/t/mime-name.t
        ../cpan/Encode/t/mime_header_iso2022jp.t
        ../cpan/Encode/t/perlio.t
        ../cpan/ExtUtils-ParseXS/t/more.t
        ../cpan/Pod-Simple/t/corpus.t
        ../ext/DynaLoader/t/DynaLoader.t
        ../ext/PerlIO-encoding/t/encoding.t
        ../lib/DBM_Filter/t/encode.t
        ../lib/ExtUtils/t/Embed.t
        ../lib/warnings.t
        io/layers.t
        op/taint.t
        uni/chomp.t
        uni/chr.t
        uni/greek.t
        uni/latin2.t
        uni/tr_7jis.t
        uni/tr_eucjp.t
        uni/tr_sjis.t
### Since not all tests were successful, you may want to run some of
### them individually and examine any diagnostic messages they produce.
### See the INSTALL document's section on "make test".
### You have a good chance to get more information by running
###   ./perl harness
### in the 't' directory since most (>=80%) of the tests succeeded.
u=15.18  s=5.00  cu=972.79  cs=94.44  scripts=1653  tests=346053
make: *** [test] エラー 1

文字コード周りでテストが失敗しているっぽいのは悔しいなぁ。

参考

perlbrew - D-6 [相変わらず根無し]

http://cpansearch.perl.org/src/GUGOD/App-perlbrew-0.19/README

man clock_gettime(2)

LOCK_GETRES(2)                Linux Programmer's Manual                CLOCK_GETRES(2)

NAME
       clock_getres, clock_gettime, clock_settime - clock and time functions

SYNOPSIS
       #include <time.h>

       int clock_getres(clockid_t clk_id, struct timespec *res);

       int clock_gettime(clockid_t clk_id, struct timespec *tp);

       int clock_settime(clockid_t clk_id, const struct timespec *tp);

       Link with -lrt.    ←これ

perldoc INSTALL(1)

       Missing functions and Undefined symbols
           If the build of miniperl fails with a long list of missing functions or
           undefined symbols, check the libs variable in the config.sh file.  It should
           look something like

                   libs='-lsocket -lnsl -ldl -lm -lc'

           The exact libraries will vary from system to system, but you typically need
           to include at least the math library -lm.  Normally, Configure will suggest
           the correct defaults.  If the libs variable is empty, you need to start all
           over again.  Run

                   make distclean

           and start from the very beginning.  This time, unless you are sure of what
           you are doing, accept the default list of libraries suggested by Configure.

           If the libs variable looks correct, you might have the "nm extraction"
           problem discussed above.

           If you stil have missing routines or undefined symbols, you probably need to
           add some library or other, or you need to undefine some feature that
           Configure thought was there but is defective or incomplete.  If you used a
           hint file, see if it has any relevant advice.  You can also look through
           through config.h for likely suspects.

tokuhiromtokuhirom 2011/05/04 23:29 環境はなんですか?

ItisangoItisango 2011/05/05 06:53 Xubuntu 11.04
2.6.38-8-generic #42-Ubuntu SMP Mon Apr 11 03:31:50 UTC 2011
です。