Details
-
Bug
-
Status: Closed
-
Major
-
Resolution: Fixed
-
0.20.0, 0.20.1, 0.20.2, 0.21.0
-
None
-
None
-
SLES 10, IBM Java 6
Description
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
Attachments
Attachments
Issue Links
- is related to
-
HADOOP-6941 Support non-SUN JREs in UserGroupInformation
- Closed
- relates to
-
HADOOP-8187 Improve the discovery of the jvm library during the build process
- Resolved