Uploaded image for project: 'Hadoop HDFS'
  1. Hadoop HDFS
  2. HDFS-8922

Link the native_mini_dfs test library with libdl, since IBM Java requires it

    XMLWordPrintableJSON

Details

    • Bug
    • Status: Resolved
    • Major
    • Resolution: Fixed
    • 2.7.1
    • 2.8.0, 3.0.0-alpha1
    • build
    • None
    • IBM Java RHEL7.1

    Description

      Building hadoop-hdfs-project with -Pnative option using IBM Java fails with the following error

      [exec] Linking C executable test_native_mini_dfs
      [exec] /usr/bin/cmake -E cmake_link_script CMakeFiles/test_native_mini_dfs.dir/link.txt --verbose=1
      [exec] /usr/bin/cc -g -Wall -O2 -D_REENTRANT -D_GNU_SOURCE -D_LARGEFILE_SOURCE -D_FILE_OFFSET_BITS=64 -fvisibility=hidden CMakeFiles/test_native_mini_dfs.dir/main/native/libhdfs/test_native_mini_dfs.c.o -o test_native_mini_dfs -rdynamic libnative_mini_dfs.a /home/ayappan/ibm-java-ppc64le-71/jre/lib/ppc64le/classic/libjvm.so -lpthread -Wl,-rpath,/home/ayappan/ibm-java-ppc64le-71/jre/lib/ppc64le/classic
      [exec] make[2]: Leaving directory `/home/ayappan/hadoop_2.7.1_new/hadoop/hadoop-hdfs-project/hadoop-hdfs/target/native'
      [exec] make[1]: Leaving directory `/home/ayappan/hadoop_2.7.1_new/hadoop/hadoop-hdfs-project/hadoop-hdfs/target/native'
      [exec] /home/ayappan/ibm-java-ppc64le-71/jre/lib/ppc64le/classic/libjvm.so: undefined reference to `dlopen'
      [exec] /home/ayappan/ibm-java-ppc64le-71/jre/lib/ppc64le/classic/libjvm.so: undefined reference to `dlclose'
      [exec] /home/ayappan/ibm-java-ppc64le-71/jre/lib/ppc64le/classic/libjvm.so: undefined reference to `dlerror'
      [exec] /home/ayappan/ibm-java-ppc64le-71/jre/lib/ppc64le/classic/libjvm.so: undefined reference to `dlsym'
      [exec] /home/ayappan/ibm-java-ppc64le-71/jre/lib/ppc64le/classic/libjvm.so: undefined reference to `dladdr'
      [exec] collect2: error: ld returned 1 exit status
      [exec] make[2]: *** [test_native_mini_dfs] Error 1
      [exec] make[1]: *** [CMakeFiles/test_native_mini_dfs.dir/all] Error 2
      [exec] make: *** [all] Error 2

      It seems like the IBM jvm requires libdl for linking in native_mini_dfs.

      Attachments

        1. HDFS-8922.patch
          0.4 kB
          Ayappan

        Activity

          People

            Ayappan Ayappan
            Ayappan Ayappan
            Votes:
            0 Vote for this issue
            Watchers:
            3 Start watching this issue

            Dates

              Created:
              Updated:
              Resolved: