Build fails with non-Sun JREs due to different pathing to the operating system
architecture shared libraries
------------------------------------------------------------------------------------------------------------
Key: HADOOP-6924
URL: https://issues.apache.org/jira/browse/HADOOP-6924
Project: Hadoop Common
Issue Type: Bug
Affects Versions: 0.20.2, 0.20.1, 0.20.0
Environment: SLES 10, IBM Java 6
Reporter: Stephen Watt
Fix For: 0.20.3
The src/native/configure script used to build the native libraries has an
environment variable called JNI_LDFLAGS which is set as follows:
JNI_LDFLAGS="-L$JAVA_HOME/jre/lib/$OS_ARCH/server"
This pathing convention to the shared libraries for the operating system
architecture is unique to Oracle/Sun Java and thus on other flavors of Java the
path will not exist and will result in a build failure with the following
exception:
[exec] gcc -shared
../src/org/apache/hadoop/io/compress/zlib/.libs/ZlibCompressor.o
../src/org/apache/hadoop/io/compress/zlib/.libs/ZlibDecompressor.o
-L/home/hadoop/Java-Versions/ibm-java-i386-60/jre/lib/x86/server -ljvm -ldl
-m32 -m32 -Wl,-soname -Wl,libhadoop.so.1 -o .libs/libhadoop.so.1.0.0
[exec]
/usr/lib/gcc/i586-suse-linux/4.1.2/../../../../i586-suse-linux/bin/ld: cannot
find -ljvm
[exec] collect2: ld returned 1 exit status
--
This message is automatically generated by JIRA.
-
You can reply to this email to add a comment to the issue online.