KAWA です。 # 長いです。 On Sat, 18 Jan 2003 19:15:36 +0900 katou <s-kato@xxxxxxxxxxxxxxxx> wrote: > Vine Linux 2.5 FTP版 を利用しています。 > gcj を利用しようと思い > > apt-get install gcc-java > > でインストールをしたのですが、実行すると > > gcj: libgcj.spec: そのようなファイルやディレクトリはありません > > と言うエラーがでます。 java を使ったことはないのですが、gcc-3.2.1.tar.bz2 を展開/コンパイル/ インストールして使っています。いつか java を使うこともあろうかと思い、 configure で、`--enable-languages=c,c++,f77,java' と指定しています。 # c は指定しなくてもよいらしい。 Vine 2.1.5、2.5、2.6 を使っているのですが、Vine 2.6 では次のようになり ます。( 加藤さんがお使いの 2.5 はいま手元にありません。関係ないと思いま すが ) ----- $ locate libgcj /usr/opt/gcc-3.2.1/lib/gcc-lib ← 長いので改行 /i686-pc-linux-gnu/3.2.1/include/gcj/libgcj-config.h /usr/opt/gcc-3.2.1/lib/libgcj.so.3 /usr/opt/gcc-3.2.1/lib/libgcj.so.3.0.0 /usr/opt/gcc-3.2.1/lib/libgcj.so /usr/opt/gcc-3.2.1/lib/security/libgcj.security /usr/opt/gcc-3.2.1/lib/libgcj.la /usr/opt/gcc-3.2.1/lib/libgcj.a /usr/opt/gcc-3.2.1/lib/libgcj.spec /usr/opt/gcc-3.2.1/share/java/libgcj-3.2.1.jar ----- .so や .a に加えて libgcj.spec も存在します。その内容は ----- # # This spec file is read by gcj when linking. # It is used to specify the standard libraries we need in order # to link with libgcj. # %rename lib liborig *lib: -lgcj -lm -lpthread -ldl %(libgcc) %(liborig) *jc1: -fhash-synchronization ← 長いので改行 -fno-use-divide-subroutine -fuse-boehm-gc -fnon-ca ll-exceptions -fkeep-inline-functions ----- となっていて、リンクオプションなどを指定しているようです。 > と言うパッケージがあるのですが、VinePlusには > > gcc-java-2.95.3-2vl22.i386.rpm > > しかありません。libgcjが無いようです。 ためしに、gcc-java-2.95.3-2vl22 をとってきてインストールしてみました。 ついでに、どこからか hello.java を拾って gcc-java-2.95.3 で コンパイルしてみました。 ----- $ LANG=C $ /usr/bin/gcj hello.java gcj: libgcj.spec: No such file or directory ----- となりますね。加藤さんが体験された通り、コンパイル以前の問題です。 gcc-2.95.3.tar.bz2 や、Vine の gcc-2.95.3 系の src.rpmをインスト ールしてできた tar.bz2/gz を `--eneble-languages=java'、 `--prefix=無害なディレクトリ' としてインストールしたうえで試して みても同じでしょうか? gcc-3.2.1 の gcj ではこのようになりません。どこからか取ってきた hello.java が悪いのか私が悪いのか知りませんが、とにかく「hello.java の ここがいけないよ」といったエラーメッセージが出ているので、gcc の java フロントエンドは`正常に'動作しているのでしょう。( 自信なし ) > aptからのインストールはあきらめて、tarボールからインストール > しなければいけませんか? それともやはりなにかを、私が見落とし > ているのでしょうか。 同じような経験をしている人は多いようです。上のエラーメッセージ gcj: libgcj.spec: No such file or directory を google の検索欄にコピーして検索すればヒントが見つかると思います。 > もの知らぬ私にアドバイスよろしくお願いします。 参考になるかどうか。コンパイラのインストールは慎重にしてください。問題 が解決されるといいですね。 -- KAWA