From: "xtkoba (Tee KOBAYASHI)" Date: 2021-10-23T06:03:28+00:00 Subject: [ruby-dev:51103] [Ruby master Bug#18263] "make install" crashed when Ruby3.0.2 clean install. (in japanese) Issue #18263 has been updated by xtkoba (Tee KOBAYASHI). From `LOG.make`: ``` compiling ../.././ext/psych/yaml/api.c ../.././ext/psych/yaml/api.c: 関数 ‘yaml_strdup’ 内: ../.././ext/psych/yaml/api.c:66:27: 警告: implicit declaration of function ‘strdup’; did you mean ‘cmp’? [-Wimplicit-function-declaration] return (yaml_char_t *)strdup((char *)str); ^~~~~~ strcmp ../.././ext/psych/yaml/api.c:66:12: 警告: 異なるサイズの整数からポインタへのキャストです [-Wint-to-pointer-cast] return (yaml_char_t *)strdup((char *)str); ^ ``` The compiler assumes that `strdup(3)` is implicitly declared as `int strdup();`, which is of course not correct and should be instead as follows: ```c char *strdup(const char *s); ``` I have no idea as to why `strdup(3)` is not declared here. For instance, on my GNU/Linux environment it is declared in `` which is included (indirectly) in `ext/psych/yaml/api.c`. A workaround would be to add the correct declaration in `ext/psych/yaml/api.c`. ---------------------------------------- Bug #18263: "make install" crashed when Ruby3.0.2 clean install. (in japanese) https://bugs.ruby-lang.org/issues/18263#change-94264 * Author: tksotn (TAKASHI OOTANI) * Status: Open * Priority: Normal * ruby -v: ruby 3.0.2p107 (2021-07-07 revision 0db68f0233) [x86_64-linux] * Backport: 2.6: UNKNOWN, 2.7: UNKNOWN, 3.0: UNKNOWN ---------------------------------------- 本日 gem update を行った後、gem コマンドが異常終了するようになってしまいました。 /usr/local/lib/ruby/gems/3.0.0/gems/psych-4.0.2/lib/psych.rb:455: [BUG] Segmentation fault at 0xffffffff9ade4120 ruby 3.0.2p107 (2021-07-07 revision 0db68f0233) [x86_64-linux] OSは、CentOS Linux release 8.4.2105 です。 gem update自体は正常に終了しました。その直後の gem clean でこけています。 gem だけでもこけます。OS再起動後にも同様。 昨日までは異常なく、昨日今日に dnf install や update でインストール・更新した OSパッケージはログを見る限りないです。 念のため、PATHからインストール先の/usr/local/binを外した状態で、 tar.gzから新規ディレクトリを--prefix指定してconfigureして まっさらな環境にインストールしてみようとしましたが、 make install の時点で同じエラーになります。 ということは、gem updateは原因では無いという事になるかと思います。 上記の、configure、make、make test、make check (これは以前からこける)、 make installと、dnf list のリストを添付します。 よろしくお願いします。 本日のgem update対象: fileutils-1.6.0/ io-wait-0.2.0/ net-http-0.2.0/ net-protocol-0.1.2/ optparse-0.2.0/ ostruct-0.5.0/ pp-0.2.1/ prettyprint-0.1.1/ readline-ext-0.1.3/ rinda-0.1.1/ securerandom-0.1.1/ stringio-3.0.1/ uri-0.11.0/ net-ftp-0.1.2/ minitest-5.14.2/ power_assert-1.2.0/ rake-13.0.3/ ---Files-------------------------------- LOG.tar.gz (243 KB) -- https://bugs.ruby-lang.org/