You are viewing a plain text version of this content. The canonical link for it is here.
Posted to dev@tomcat.apache.org by bu...@apache.org on 2013/10/25 20:25:40 UTC
[Bug 55706] New: broken apr version check in native v1.1.29 build;
fails detect of installed v2.0.0
https://issues.apache.org/bugzilla/show_bug.cgi?id=55706
Bug ID: 55706
Summary: broken apr version check in native v1.1.29 build;
fails detect of installed v2.0.0
Product: Tomcat Native
Version: 1.1.29
Hardware: All
OS: Linux
Status: NEW
Severity: normal
Priority: P2
Component: Library
Assignee: dev@tomcat.apache.org
Reporter: rand@sent.com
I'm building Tomcat 7.0.47.0 from src on
uname -a
Linux rand3.int 3.7.10-1.16-desktop #1 SMP PREEMPT Fri May 31 20:21:23
UTC 2013 (97c14ba) x86_64 x86_64 x86_64 GNU/Linux
Once built,
service tomcat7-custom version
jsvc (Apache Commons Daemon) 1.0.15-dev
Copyright (c) 1999-2011 Apache Software Foundation.
java version "1.7.0_15"
OpenJDK Runtime Environment (build 1.7.0_15-b20)
OpenJDK 64-Bit Server VM (build 23.7-b01, mixed mode)
commons daemon version "1.0.15-dev"
commons daemon process (id: 23245, parent: 23244)
Server version: Apache Tomcat/7.0.47
Server built: Oct 25 2013 10:07:09
Server number: 7.0.47.0
OS Name: Linux
OS Version: 3.7.10-1.16-desktop
Architecture: amd64
JVM Version: 1.7.0_15-b20
JVM Vendor: Oracle Corporation
moving on to 'native',
cd tomcat7/build/bin
tar zxvf tomcat-native.tar.gz
cd tomcat-native-1.1.29-src/jni/native
configure fails @ APR version check
./configure \
--prefix=/usr/local \
--with-apr=/usr/local/apache24x/bin/apr-2-config \
--with-java-home=/etc/alternatives/java_sdk_openjdk \
--with-ssl=/usr/local/src/openssl/1.0.1e \
--libdir=/usr/lib64
...
configure: loading site script /usr/share/site/x86_64-unknown-linux-gnu
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 for working mkdir -p... yes
Tomcat Native Version: 1.1.29
checking for chosen layout... tcnative
checking for APR... yes
configure: error: You need APR version 1.2.1 or newer installed. For
optimal performance version 1.3.0 or newer is needed.
but,
/usr/local/apache24x/bin/apr-2-config --version
2.0.0
applying this patch
cat /usr/local/src/tc-native.patch
Only in native: config.log
Only in native: config.nice
diff -ur native.ORIG/configure native/configure
--- native.ORIG/configure 2013-10-10 05:51:58.000000000 -0700
+++ native/configure 2013-10-25 10:11:19.692085473 -0700
@@ -1903,7 +1903,7 @@
TEST_X="test -x"
fi
- acceptable_majors="1"
+ acceptable_majors="2"
apr_temp_acceptable_apr_config=""
for apr_temp_major in $acceptable_majors
@@ -2020,20 +2020,20 @@
fi
sapr_version="`echo $sapr_pversion|sed -e 's/\(a-z*\)$/.\1/'`"
tc_save_IFS=$IFS; IFS=.; set $sapr_version; IFS=$tc_save_IFS
- if test "${1}" -lt "1"; then
- { { echo "$as_me:$LINENO: error: You need APR version 1.2.1 or
newer installed. For optimal performance version 1.3.0 or newer is needed." >&5
-echo "$as_me: error: You need APR version 1.2.1 or newer
installed. For optimal performance version 1.3.0 or newer is needed." >&2;}
- { (exit 1); exit 1; }; }
- else
- if test "${2}" -lt "2"; then
- { { echo "$as_me:$LINENO: error: You need APR version 1.2.1
or newer installed. For optimal performance version 1.3.0 or newer is needed."
>&5
-echo "$as_me: error: You need APR version 1.2.1 or newer
installed. For optimal performance version 1.3.0 or newer is needed." >&2;}
- { (exit 1); exit 1; }; }
- elif test "${2}" -lt "3"; then
- { echo "$as_me:$LINENO: WARNING: For optimal performance you
need APR version 1.3.0 or newer installed." >&5
-echo "$as_me: WARNING: For optimal performance you need APR
version 1.3.0 or newer installed." >&2;}
- fi
- fi
+# if test "${1}" -lt "1"; then
+# { { echo "$as_me:$LINENO: error: You need APR version 1.2.1
or newer installed. For optimal performance version 1.3.0 or newer is needed."
>&5
+#echo "$as_me: error: You need APR version 1.2.1 or newer
installed. For optimal performance version 1.3.0 or newer is needed." >&2;}
+# { (exit 1); exit 1; }; }
+# else
+# if test "${2}" -lt "2"; then
+# { { echo "$as_me:$LINENO: error: You need APR version 1.2.1
or newer installed. For optimal performance version 1.3.0 or newer is needed."
>&5
+#echo "$as_me: error: You need APR version 1.2.1 or newer
installed. For optimal performance version 1.3.0 or newer is needed." >&2;}
+# { (exit 1); exit 1; }; }
+# elif test "${2}" -lt "3"; then
+# { echo "$as_me:$LINENO: WARNING: For optimal performance
you need APR version 1.3.0 or newer installed." >&5
+#echo "$as_me: WARNING: For optimal performance you need APR
version 1.3.0 or newer installed." >&2;}
+# fi
+# fi
APR_BUILD_DIR="`$apr_config --installbuilddir`"
patch -p1 < /usr/local/src/tc-native.patch
patching file configure
removes the broken check, and the build proceeds,
./configure ...
make
make install
ls -al /usr/lib64/libtcnative*
-rw-r--r-- 1 root root 214K Apr 15 14:46 /usr/lib64/libtcnative-1.a
-rwxr-xr-x 1 root root 1.1K Apr 15 14:46 /usr/lib64/libtcnative-1.la*
lrwxrwxrwx 1 root root 23 Apr 15 14:46 /usr/lib64/libtcnative-1.so ->
libtcnative-1.so.0.1.27*
lrwxrwxrwx 1 root root 23 Apr 15 14:46 /usr/lib64/libtcnative-1.so.0
-> libtcnative-1.so.0.1.27*
-rwxr-xr-x 1 root root 186K Apr 15 14:46
/usr/lib64/libtcnative-1.so.0.1.27*
ldd /usr/${LIBDIR}/libtcnative-1.so
linux-vdso.so.1 => (0x00007fffc4549000)
libapr-2.so.0 => /usr/local/apache24x/lib/libapr-2.so.0
(0x00007feabdd3a000)
libssl.so.1.0.0 => /usr/local/ssl/lib64/libssl.so.1.0.0
(0x00007feabdacf000)
libcrypto.so.1.0.0 => /usr/local/ssl/lib64/libcrypto.so.1.0.0
(0x00007feabd6e4000)
libuuid.so.1 => /lib64/libuuid.so.1 (0x00007feabd4a1000)
librt.so.1 => /lib64/librt.so.1 (0x00007feabd298000)
libcrypt.so.1 => /lib64/libcrypt.so.1 (0x00007feabd05d000)
libpthread.so.0 => /lib64/libpthread.so.0 (0x00007feabce40000)
libdl.so.2 => /lib64/libdl.so.2 (0x00007feabcc3b000)
libexpat.so.1 => /lib64/libexpat.so.1 (0x00007feabca10000)
libc.so.6 => /lib64/libc.so.6 (0x00007feabc680000)
libz.so.1 => /lib64/libz.so.1 (0x00007feabc467000)
/lib64/ld-linux-x86-64.so.2 (0x00007feabe1c1000)
--
You are receiving this mail because:
You are the assignee for the bug.
---------------------------------------------------------------------
To unsubscribe, e-mail: dev-unsubscribe@tomcat.apache.org
For additional commands, e-mail: dev-help@tomcat.apache.org
[Bug 55706] broken apr version check in native v1.1.29 build; fails
detect of installed v2.0.0
Posted by bu...@apache.org.
https://issues.apache.org/bugzilla/show_bug.cgi?id=55706
--- Comment #2 from rand <ra...@sent.com> ---
> 1. APR 2.x hasn't yet been released
True. It will be.
There's value, if not priority, in taking notice now, and handling the case
appropriately.
> 2. Your patch looks like it would fail to build against apr 1.4.8, the
> current release version
I'm not submitting the patch for production, but rather as a crude workaround
until a proper fix can be worked out.
In any case, spec'ing
--with-apr=/usr/local/apache24x/bin/apr-2-config
can, and arguably should, trivially return version # in a check, and respond
appropriately.
> 3. IIRC, tcnative (or Tomcat?) checks APR version at runtime, too, so you
> may still have a problem using your binary
Using apr2, revno sync'd with the httpd src tree, I haven't had any problems as
yet. That I'm aware of.
--
You are receiving this mail because:
You are the assignee for the bug.
---------------------------------------------------------------------
To unsubscribe, e-mail: dev-unsubscribe@tomcat.apache.org
For additional commands, e-mail: dev-help@tomcat.apache.org
[Bug 55706] broken apr version check in native v1.1.29 build; fails
detect of installed v2.0.0
Posted by bu...@apache.org.
https://issues.apache.org/bugzilla/show_bug.cgi?id=55706
--- Comment #1 from Christopher Schultz <ch...@christopherschultz.net> ---
Some notes:
1. APR 2.x hasn't yet been released
2. Your patch looks like it would fail to build against apr 1.4.8, the current
release version
3. IIRC, tcnative (or Tomcat?) checks APR version at runtime, too, so you may
still have a problem using your binary
--
You are receiving this mail because:
You are the assignee for the bug.
---------------------------------------------------------------------
To unsubscribe, e-mail: dev-unsubscribe@tomcat.apache.org
For additional commands, e-mail: dev-help@tomcat.apache.org