1

Linux CentOS 5.9 サーバーに MapServer をインストールしようとしていますが、同じエラーが発生し続けます。

checking if --with-java-include-os-name specified... no, autodetected linux
checking for javac... /usr/bin/javac
checking symlink for /usr/bin/javac... /etc/alternatives/javac
checking symlink for /etc/alternatives/javac... /usr/lib/jvm/java-1.4.2-gcj/bin/javac
checking symlink for /usr/lib/jvm/java-1.4.2-gcj/bin/javac... /usr/bin/ecj
configure: error: cannot find java include files

gjcの代わりにsun-jdkパッケージをインストールすることでこれを修正できることをどこかで読みました。問題は、現在、職場のコンピューターにルート アクセス権がないことです。だから私は自分のデスクトップにjdkファイルをダウンロードして、

./configure --with-java-include-os-name=~/Desktop/jdk1.7.0_21

それでも同じエラーが発生しました。

checking if --with-java-include-os-name specified... yes (~/Desktop/jdk1.7.0_21)
checking for javac... /usr/bin/javac
checking symlink for /usr/bin/javac... /etc/alternatives/javac
checking symlink for /etc/alternatives/javac... /usr/lib/jvm/java-1.4.2-gcj/bin/javac
checking symlink for /usr/lib/jvm/java-1.4.2-gcj/bin/javac... /usr/bin/ecj
configure: error: cannot find java include files

そのコマンドを正しく使用しているかどうかはよくわかりません。しかし、私の主な質問は、ルートアクセスなしでこのエラーを修正するにはどうすればよいですか? それは可能ですか?sun-jdk をインストールするには root パスワードを要求する必要がありますか? そして、それを行った場合、configureファイルが必要なインクルードファイルを探す場所を変更して、gcjファイルの検索を停止するにはどうすればよいですか?

ありがとう。

4

1 に答える 1

0

Macports バージョンの Mapserver で同じ問題に直面していました。それらはまだバージョン 6.2.1 にあり、これは CMake を使用しない最後のバージョンの 1 つです。バージョン 6.4 の時点で、Mapserver は CMake を使用しています。

configureこの問題を回避するには、スクリプトを編集する必要があります。「Java インクルード ファイルが見つかりません」という文字列を検索し、Java インクルード ファイルが見つからない場合に実行を停止する行をコメント アウトします。

これは修正ではありませんが、構成プロセスのバグを回避するための汚い回避策です。これにより、完全に機能するビルドが得られるはずです。

于 2014-11-25T09:27:45.230 に答える