“在ubuntu上构建mod_jk时,必须指定一个有效的--with-apxs路径”

时间:2014-07-03 14:10:51

标签: apache tomcat ubuntu load-balancing mod-jk

我正在尝试在ubuntu上为Apache构建mod_jk,但是当我发出:

./configure --with-apxs=/usr/local/apache/bin/apxs 

我收到以下错误:

checking build system type... x86_64-unknown-linux-gnu
checking host system type... x86_64-unknown-linux-gnu
checking target system type... x86_64-unknown-linux-gnu
checking for a BSD-compatible install... /usr/bin/install -c
checking whether build environment is sane... yes
/home/Arbi/Downloads/tomcat-connectors-1.2.40-src/native/scripts/build/unix/missing: Unknown `--is-lightweight' option
Try `/home/Arbi/Downloads/tomcat-connectors-1.2.40-src/native/scripts/build/unix/missing --help' for more information
configure: WARNING: 'missing' script is too old or missing
checking for a thread-safe mkdir -p... /bin/mkdir -p
checking for gawk... gawk
checking whether make sets $(MAKE)... yes
checking whether make supports nested variables... yes
checking for test... /usr/bin/test
checking for grep... /bin/grep
checking for echo... /bin/echo
checking for sed... /bin/sed
checking for cp... /bin/cp
checking for mkdir... /bin/mkdir
need to check for Perl first, apxs depends on it...
checking for perl... /usr/bin/perl
could not find /usr/local/apache/bin/apxs
configure: error: You must specify a valid --with-apxs path

Apache已经安装,目录/usr/local/apache/bin/存在,也可以找到apxs! 知道我为什么会遇到这个错误以及如何构建mod_jk

5 个答案:

答案 0 :(得分:0)

有同样的问题,可以解决。问题是,显然我在构建apache的目录中提供了apxs的路径。调用“ make install”后,make进程会将apache安装在配置过程中提供的目录中(在我的情况下为/ usr / local / apache2,并且apxs复制到“ bin”子目录中)。当我提供/ usr / local / apache2 / bin / apxs时,它突然工作了。 另外,尝试了一百次之后,我开始交换p和x,当然/ usr / local / apache2 / bin / axps在这种情况下不存在,因此您可能还需要注意这一细节; )

答案 1 :(得分:0)

mod jk构建是指为其构建的apache版本。如果httpd是从源代码构建的,则大多数情况下会遇到此错误。这是因为从源进行构建时,apxs文件将包含builddir等的路径。--with-apxs = path会引用这些内容,并抱怨该路径无效。要解决该错误,请将httpd版本移至apxs文件中所述的文件夹。

答案 2 :(得分:0)

我尝试过了。它对我有用。

./configure --with-apxs=/usr/local/apache/bin/apxs

给出以下输出:

checking build system type... x86_64-pc-linux-gnu
checking host system type... x86_64-pc-linux-gnu
checking target system type... x86_64-pc-linux-gnu
checking for a BSD-compatible install... /bin/install -c
checking whether build environment is sane... yes
checking for a thread-safe mkdir -p... /bin/mkdir -p
checking for gawk... gawk
checking whether make sets $(MAKE)... yes
checking whether make supports nested variables... yes
checking for test... /bin/test
checking for grep... /bin/grep
checking for echo... /bin/echo
checking for sed... /bin/sed
checking for cp... /bin/cp
checking for mkdir... /bin/mkdir
need to check for Perl first, apxs depends on it...
checking for perl... /bin/perl
could not find /usr/local/apache/bin/apxs
configure: error: You must specify a valid --with-apxs path

我尝试使用以下命令查找apxs的位置。

[root@ip-10-0-0-20 native]# whereis apxs

apxs: /usr/bin/apxs /usr/share/man/man1/apxs.1.gz

[root@ip-10-0-0-20 native]# ./configure --with-apxs=/usr/bin/apxs
checking build system type... x86_64-pc-linux-gnu

答案 3 :(得分:0)

我有同样的问题,但是我有解决方案。

首先,我不知道为什么系统找不到 apxs 文件。

但是,您也可以使用选项定义Apache目录

  

-with-apche = DIR

示例:

  

./ configure --with-apache = / usr / local / bin / apache

答案 4 :(得分:-1)

我有同样的问题。但解决了。

如果按此顺序安装

  1. apache httpd
  2. perl的
  3. 重写第一行 的/ usr /本地/ Apache / bin中/ apxs的

    #!/replace/with/path/to/perl/interpreter -w

    #!/usr/local/perl -w

    / usr / local / perl是你的perl路径。

    然后重试配置。