Gauche > Archives > 2009/12/29

2009/12/29 02:51:44 UTCえんどう
#
http://practical-scheme.net/chaton/gauche/a/2009/12/26#entry-4b357e1e-884ee
#
このパッチを当てたのですが、以下が出ます。
#
gcc -std=gnu99 -DHAVE_CONFIG_H -I. -I../../src -I../../gc/include    -g -O2 -fPIC  -fomit-frame-pointer -march=i686 -DUSE_I686_PREFETCH -c thrlib.c
thrlib.stub:120:1: directives may not be used inside a macro argument
thrlib.stub:119:57: unterminated argument list invoking macro "SCM_INTERNAL_MUTEX_UNLOCK"
thrlib.stub: In function `thrlib_mutex_state':
thrlib.stub:112: warning: implicit declaration of function `SCM_INTERNAL_MUTEX_UNLOCK'
thrlib.stub:112: invalid type argument of `->'
thrlib.stub:112: parse error before ')' token
make[2]: *** [thrlib.o] Error 1
2009/12/29 03:38:01 UTCshiro
#
パッチを当てたあと、thrlib.cは再生成されてますか? そのgccのコマンドラインの前にgenstub走ってます?
2009/12/29 05:57:22 UTCえんどう
#
そうか、make distcleanしたらうまくいきました。make chcekで以下が出るけど。
#
Testing system ...                                               failed.
discrepancies found.  Errors are:
test sys-fdset: expects (0 9 10) => got #<<error> "cannot find file \"gauche/auxsys\" in *load-path* (\"../test\" \"../lib\" \"../libsrc\" \"../src\" \"/home/javaopen_aa.ram.ne.jp/share/gauche/site/lib\" \"/home/javaopen_aa.ram.ne.jp/share/gauche/0.9/lib\")">
test list->sys-fdset: expects (1 3 5 7 9) => got #<<error> "cannot find file \"gauche/auxsys\" in *load-path* (\"../test\" \"../lib\" \"../libsrc\" \"../src\" \"/home/javaopen_aa.ram.ne.jp/share/gauche/site/lib\" \"/home/javaopen_aa.ram.ne.jp/share/gauche/0.9/lib\"
)">
test sys-fdset-copy!: expects (2 4 5) => got #<<error> "cannot find file \"gauche/auxsys\" in *load-path* (\"../test\" \"../lib\" \"../libsrc\" \"../src\" \"/home/javaopen_aa.ram.ne.jp/share/gauche/site/lib\" \"/home/javaopen_aa.ram.ne.jp/share/gauche/0.9/lib\")">
test sys-fdset-clear!: expects () => got #<<error> "cannot find file \"gauche/auxsys\" in *load-path* (\"../test\" \"../lib\" \"../libsrc\" \"../src\" \"/home/javaopen_aa.ram.ne.jp/share/gauche/site/lib\" \"/home/javaopen_aa.ram.ne.jp/share/gauche/0.9/lib\")">
Testing autoload and autoprovide ...                             passed.
Testing rfc ...                                                  gosh: "error": Compile Error: Compile Error: cannot find file "gauche/net" in *load-path* ("../test" "../lib" "../libsrc" "../src" "/home/javaopen_aa.ram.ne.jp/share/gauche/site/lib" "/home/javaopen_a
a.ram.ne.jp/share/gauche/0.9/lib")
"../lib/rfc/ftp.scm":39:(define-module rfc.ftp (use srfi-1)  ...

"../test/rfc.scm":383:(use rfc.ftp)
#
Testing gauche.process ...                                       gosh: "error": cannot find file "gauche/auxsys" in *load-path* ("../test" "../lib" "../libsrc" "../src" "/home/javaopen_aa.ram.ne.jp/share/gauche/site/lib" "/home/javaopen_aa.ram.ne.jp/share/gauche/0.
9/lib")
2009/12/29 05:58:12 UTCshiro
#
あれ、それってauxsysのビルドがこけてる?
2009/12/29 05:59:43 UTCえんどう
#
make[2]: Leaving directory `/home/javaopen_aa.ram.ne.jp/src/Gauche-0.9/ext/srfi'
make[2]: Entering directory `/home/javaopen_aa.ram.ne.jp/src/Gauche-0.9/ext/auxsys'
gcc -std=gnu99 -DHAVE_CONFIG_H -I. -I../../src -I../../gc/include    -g -O2 -fPIC  -fomit-frame-pointer -march=i686 -DUSE_I686_PREFETCH -c auxsys.c
../../src/gosh -ftest genstub auxsyslib.stub
gcc -std=gnu99 -DHAVE_CONFIG_H -I. -I../../src -I../../gc/include    -g -O2 -fPIC  -fomit-frame-pointer -march=i686 -DUSE_I686_PREFETCH -c auxsyslib.c
auxsyslib.c: In function `auxsyslib_sys_getpgid':
auxsyslib.c:444: warning: implicit declaration of function `getpgid'
auxsyslib.c: In function `auxsyslib_sys_times':
auxsyslib.c:546: syntax error at '#' token
auxsyslib.c:546: parse error before "defined"
auxsyslib.c:548:2: #else without #if
auxsyslib.c:555:2: #endif without #if
auxsyslib.c: At top level:
auxsyslib.c:562: storage class specified for parameter `auxsyslib_sys_times__STUB'
auxsyslib.c:562: parameter `auxsyslib_sys_times__STUB' is initialized
auxsyslib.c:577: storage class specified for parameter `auxsyslib_sys_uname__STUB'
auxsyslib.c:577: parameter `auxsyslib_sys_uname__STUB' is initialized
auxsyslib.c:596: storage class specified for parameter `auxsyslib__25sys_gethostname__STUB'
auxsyslib.c:596: parameter `auxsyslib__25sys_gethostname__STUB' is initialized
auxsyslib.c:612: storage class specified for parameter `auxsyslib__25sys_getdomainname__STUB'
auxsyslib.c:612: parameter `auxsyslib__25sys_getdomainname__STUB' is initialized
auxsyslib.c:627: storage class specified for parameter `auxsyslib_sys_environ__STUB'
auxsyslib.c:627: parameter `auxsyslib_sys_environ__STUB' is initialized
auxsyslib.c:661: storage class specified for parameter `auxsyslib_sys_setenv__STUB'
auxsyslib.c:661: parameter `auxsyslib_sys_setenv__STUB' is initialized
auxsyslib.c:679: storage class specified for parameter `auxsyslib_sys_unsetenv__STUB'
auxsyslib.c:679: parameter `auxsyslib_sys_unsetenv__STUB' is initialized
auxsyslib.c:699: storage class specified for parameter `au
#
こんなのが出てました。
2009/12/29 06:56:52 UTCshiro
#
それも同じ原因っぽいんだけど、make distcleanはトップレベルでやったんだよね?
2009/12/29 07:07:34 UTCえんどう
#
そうです
#
いちど全部消してみるか
2009/12/29 07:13:31 UTCshiro
#
#lineを出さないようにした副作用で#ifdefあたりがおかしくなってるかなあ。
2009/12/29 07:19:02 UTCえんどう
#
gcc -std=gnu99 -DHAVE_CONFIG_H -I. -I../../src -I../../gc/include    -g -O2 -fPIC  -fomit-frame-pointer -march=i686 -DUSE_I686_PREFETCH -c auxsys.c
../../src/gosh -ftest genstub auxsyslib.stub
gcc -std=gnu99 -DHAVE_CONFIG_H -I. -I../../src -I../../gc/include    -g -O2 -fPIC  -fomit-frame-pointer -march=i686 -DUSE_I686_PREFETCH -c auxsyslib.c
auxsyslib.c: In function `auxsyslib_sys_getpgid':
auxsyslib.c:444: warning: implicit declaration of function `getpgid'
auxsyslib.c: In function `auxsyslib_sys_times':
auxsyslib.c:546: syntax error at '#' token
auxsyslib.c:546: parse error before "defined"
auxsyslib.c:548:2: #else without #if
auxsyslib.c:555:2: #endif without #if
auxsyslib.c: At top level:
auxsyslib.c:562: storage class specified for parameter `auxsyslib_sys_times__STUB'
auxsyslib.c:562: parameter `auxsyslib_sys_times__STUB' is initialized
auxsyslib.c:577: storage class specified for parameter `auxsyslib_sys_uname__STUB'
auxsyslib.c:577: parameter `auxsyslib_sys_uname__STUB' is initialized
auxsyslib.c:596: storage class specified for parameter `auxsyslib__25sys_gethostname__STUB'
auxsyslib.c:596: parameter `auxsyslib__25sys_gethostname__STUB' is initialized
auxsyslib.c:612: storage class specified for parameter `auxsyslib__25sys_getdomainname__STUB'
auxsyslib.c:612: parameter `auxsyslib__25sys_getdomainname__STUB' is initialized
auxsyslib.c:627: storage class specified for parameter `auxsyslib_sys_environ__STUB'
auxsyslib.c:627: parameter `auxsyslib_sys_environ__STUB' is initialized
auxsyslib.c:661: storage class specified for parameter `auxsyslib_sys_setenv__STUB'
auxsyslib.c:661: parameter `auxsyslib_sys_setenv__STUB' is initialized
auxsyslib.c:679: storage class specified for parameter `auxsyslib_sys_unsetenv__STUB'
auxsyslib.c:679: parameter `auxsyslib_sys_unsetenv__STUB' is initialized
auxsyslib.c:699: storage class specified for parameter `auxsyslib_sys_ctermid__STUB'
auxsyslib.c:699: parameter `auxsyslib_sys_ctermid__STUB' is initialized
auxsyslib.c:713: storage class specified for parameter `auxsyslib_
#
全部消してやり直したけど同じエラー。
2009/12/29 07:21:09 UTCshiro
#
これって一回だけとりあえず通せばいい? それならauxsyslib.cの該当箇所をちょろっと直せば通ると思うけど。
2009/12/29 07:32:35 UTCえんどう
#
ういっす。
2009/12/29 07:42:46 UTCshiro
#
#line消してるから、エラーメッセージに出てる546行目あたりで、多分#ifdefがおかしくなってると思う (行の途中に入ってるとか)。そこをもっともらしく直せば通るんじゃないかな。
2009/12/29 07:49:42 UTCえんどう
#
gcc -std=gnu99 -DHAVE_CONFIG_H -I. -I../../src -I../../gc/include    -g -O2 -fPIC  -fomit-frame-pointer -march=i686 -DUSE_I686_PREFETCH -c netlib.c
netlib.c: In function `netlib_inet_checksum':
netlib.c:3352: syntax error at '#' token
netlib.c:3352: parse error before "WORDS_BIGENDIAN"
netlib.c:3354:2: #else without #if
netlib.c:3356:2: #endif without #if
netlib.c:3357: syntax error at '#' token
netlib.c:3357: parse error before '!' token
netlib.c:3359:2: #endif without #if
netlib.c:3364: confused by earlier errors, bailing out
#
これも同じですね