[ 
https://issues.apache.org/jira/browse/HADOOP-6924?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=13232338#comment-13232338
 ] 

Eli Collins commented on HADOOP-6924:
-------------------------------------

bq. the first libjvm.so should be considered (the user doing the build should 
ensure that the intended libjvm is the first one).

Why? How would the user doing the build ensure the one they want is first w/o 
modifying the build? Seems like that would require them to delete whatever 
libjvm.so files showed up first (yuck).

Why not just add both JAVA_HOME/jre/lib/OS_ARCH/server/libjvm.so and 
JAVA_HOME/jre/lib/OS_ARCH/default/libjvm.so to the library path? It's simpler 
than this path and doesn't potentially change which libjvm.so is currently 
being picked on some systems.
                
> 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.0, 0.20.1, 0.20.2, 0.21.0
>         Environment: SLES 10, IBM Java 6
>            Reporter: Stephen Watt
>         Attachments: 6924-1.patch, HADOOP-6924-v2.patch, HADOOP-6924.patch
>
>
> 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.
If you think it was sent incorrectly, please contact your JIRA administrators: 
https://issues.apache.org/jira/secure/ContactAdministrators!default.jspa
For more information on JIRA, see: http://www.atlassian.com/software/jira

        

Reply via email to