configure:error:找不到java包含文件

时间:2013-06-03 15:28:25

标签: java file include configure mapserver

我正在尝试在我的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

我在其他地方读到这可以通过安装sun-jdk软件包而不是gjc来修复。现在,问题是我目前在我的工作计算机上没有root访问权限。所以我尝试将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

我不确定我是否正确使用该命令。但我的主要问题是如何在没有root访问权限的情况下修复此错误?那可能吗?我是否需要请求root密码才能安装sun-jdk?如果我这样做,我如何更改配置文件将查找所需的包含文件的位置,以便它停止查看gcj文件?

感谢。

1 个答案:

答案 0 :(得分:0)

我遇到了与Macports版本的Mapserver相同的问题。它们仍然是版本6.2.1,这是最后一个不使用CMake的版本。从6.4版开始,Mapserver正在使用CMake。

要解决此问题,您需要编辑configure脚本。搜索字符串"找不到java包含文件"并且只记下在找不到java包含文件时停止执行的行。

这不是一个修复,但只是一个肮脏的解决方法,可以帮助您解决配置过程中的错误。这应该可以为您提供完整的构建。