ld: cannot find -lz

Member Site Forums Rosetta 3 Rosetta 3 – Build/Install ld: cannot find -lz

Viewing 2 reply threads
  • Author
    Posts
    • #1059
      Anonymous

        Dear colleagues,

        I am trying to install Rosetta 3.3 on:

        – HP ProLiant DL380 G6
        – CPU: 2 x Intel Xeon Quad Core
        – OS = SUSE SLES 11, kernel 2.6.27.19, x86_64
        – compiler: gcc 4.3-62.198-x86_64
        – python: 2.6.5
        – scons: 2.1.0

        command: scons bin mode=release

        crash + error message:

        /usr/lib64/gcc/x86_64-suse-linux/4.3/../../../../x86_64-suse-linux/bin/ld: skipping incompatible /usr/lib/libm.so when searching for -lm
        /usr/lib64/gcc/x86_64-suse-linux/4.3/../../../../x86_64-suse-linux/bin/ld: skipping incompatible /usr/lib/libm.a when searching for -lm
        /usr/lib64/gcc/x86_64-suse-linux/4.3/../../../../x86_64-suse-linux/bin/ld: skipping incompatible /usr/lib/libc.so when searching for -lc
        /usr/lib64/gcc/x86_64-suse-linux/4.3/../../../../x86_64-suse-linux/bin/ld: skipping incompatible /usr/lib/libc.a when searching for -lc
        g++ -o build/src/release/linux/2.6/64/x86/gcc/libutility.so -Wl,-rpath=/xprogs/ROSETTA/rosetta3.3_bundles/rosetta_source/build/external/release/linux/2.6/64/x86/gcc/ -shared build/src/release/linux/2.6/64/x86/gcc/utility/io/icstream.os build/src/release/linux/2.6/64/x86/gcc/utility/io/izstream.os build/src/release/linux/2.6/64/x86/gcc/utility/io/ocstream.os build/src/release/linux/2.6/64/x86/gcc/utility/io/ozstream.os build/src/release/linux/2.6/64/x86/gcc/utility/options/keys/OptionKeys.os build/src/release/linux/2.6/64/x86/gcc/utility/excn/Exceptions.os build/src/release/linux/2.6/64/x86/gcc/utility/sql_database/DatabaseSessionManager.os build/src/release/linux/2.6/64/x86/gcc/utility/pointer/ReferenceCount.os build/src/release/linux/2.6/64/x86/gcc/utility/pointer/ReferenceCountMI_.os build/src/release/linux/2.6/64/x86/gcc/utility/options/OptionCollection.os build/src/release/linux/2.6/64/x86/gcc/utility/options/mpi_stderr.os build/src/release/linux/2.6/64/x86/gcc/utility/tag/Tag.os build/src/release/linux/2.6/64/x86/gcc/utility/boinc/boinc_util.os build/src/release/linux/2.6/64/x86/gcc/utility/file/file_sys_util.os build/src/release/linux/2.6/64/x86/gcc/utility/file/FileName.os build/src/release/linux/2.6/64/x86/gcc/utility/file/gzip_util.os build/src/release/linux/2.6/64/x86/gcc/utility/file/PathName.os build/src/release/linux/2.6/64/x86/gcc/utility/basic_sys_util.os build/src/release/linux/2.6/64/x86/gcc/utility/string_util.os build/src/release/linux/2.6/64/x86/gcc/utility/heap.os build/src/release/linux/2.6/64/x86/gcc/utility/integer_mapping.os build/src/release/linux/2.6/64/x86/gcc/utility/mpi_util.os build/src/release/linux/2.6/64/x86/gcc/utility/exit.os build/src/release/linux/2.6/64/x86/gcc/utility/LexicographicalIterator.os -Llib -Lexternal/lib -Lbuild/src/release/linux/2.6/64/x86/gcc -Lsrc -Lbuild/external/release/linux/2.6/64/x86/gcc -Lexternal -L/usr/local/lib -L/usr/lib -lObjexxFCL -lz -lcppdb -lsqlite3
        /usr/lib64/gcc/x86_64-suse-linux/4.3/../../../../x86_64-suse-linux/bin/ld: cannot find -lz
        collect2: ld returned 1 exit status
        scons: *** [build/src/release/linux/2.6/64/x86/gcc/libutility.so] Error 1
        scons: building terminated because of errors.

        I don’t quite understand the missing -lz. Do I have to install additional libraries here, and if so, which libraries? Needless to say, I am a compiler/linker novice…

        Thanks in advance and best regards,

        Uli G.

      • #6149
        Anonymous

          You need to install the zlib libraries. I don’t know the package name for your OS; in Ubuntu it’s zlib1g-dev.

          https://www.rosettacommons.org/node/1893

          https://www.rosettacommons.org/content/error-when-compiling-ubuntu-1010

        • #13819
          Anonymous

            I am having a similar problem on a CentOS machine.

            When I attempt to compile:

            python scons.py -j12 mode=debug bin

            I get the same error, always on this command.

            g++ -o build/src/debug/linux/3.10/64/x86/gcc/4.8/default/libObjexxFCL.so -Wl,-rpath=/home/rootjcminer/Rosetta/main/source/build/external/debug/linux/3.10/64/x86/gcc/4.8/default -Wl,-rpath=$ORIGIN -Wl,-rpath=$ORIGIN/../lib -shared build/src/debug/linux/3.10/64/x86/gcc/4.8/default/ObjexxFCL/char.functions.os build/src/debug/linux/3.10/64/x86/gcc/4.8/default/ObjexxFCL/Cstring.os build/src/debug/linux/3.10/64/x86/gcc/4.8/default/ObjexxFCL/Dimension.os build/src/debug/linux/3.10/64/x86/gcc/4.8/default/ObjexxFCL/DimensionExpression.os build/src/debug/linux/3.10/64/x86/gcc/4.8/default/ObjexxFCL/DimensionExpressionRef.os build/src/debug/linux/3.10/64/x86/gcc/4.8/default/ObjexxFCL/DynamicIndexRange.os build/src/debug/linux/3.10/64/x86/gcc/4.8/default/ObjexxFCL/format.os build/src/debug/linux/3.10/64/x86/gcc/4.8/default/ObjexxFCL/Fstring.os build/src/debug/linux/3.10/64/x86/gcc/4.8/default/ObjexxFCL/IndexRange.os build/src/debug/linux/3.10/64/x86/gcc/4.8/default/ObjexxFCL/Observer.os build/src/debug/linux/3.10/64/x86/gcc/4.8/default/ObjexxFCL/ObserverGraph.os build/src/debug/linux/3.10/64/x86/gcc/4.8/default/ObjexxFCL/ObserverMediator.os build/src/debug/linux/3.10/64/x86/gcc/4.8/default/ObjexxFCL/ObserverMulti.os build/src/debug/linux/3.10/64/x86/gcc/4.8/default/ObjexxFCL/Star.os build/src/debug/linux/3.10/64/x86/gcc/4.8/default/ObjexxFCL/string.functions.os build/src/debug/linux/3.10/64/x86/gcc/4.8/default/ObjexxFCL/Time_Date.os -Lexternal/lib -Lbuild/src/debug/linux/3.10/64/x86/gcc/4.8/default -Lsrc -Lbuild/external/debug/linux/3.10/64/x86/gcc/4.8/default -Lexternal -L/usr/lib -L/usr/local/lib -lz -lcppdb -lsqlite3 -lcifparse -lxml2

            /bin/ld: cannot find -lz

            collect2: error: ld returned 1 exit status

            scons: *** [build/src/debug/linux/3.10/64/x86/gcc/4.8/default/libObjexxFCL.so] Error 1

            I made sure to install the most recent updated version of zlib:

            sudo yum install zlib

            My machine identifies itself the zlib as being up-to-date: zlib-1.2.7-17.el7.x86_64

            The versions of software and operating system that I am using on this computer are the following:


            Python 2.7.5 (default, Nov  6 2016, 00:28:07)

            [GCC 4.8.5 20150623 (Red Hat 4.8.5-11)] on linux2

            uname -a: Linux 3.10.0-514.10.2.el7.x86_64

            CPU: 12x Intel(R) Xeon(R) CPU E5-1650 v3 @ 3.50GHz


            The user.settings that you recommended editing, is that the one in  Rosetta/main/source/tools/build/user.settings?

            • #13822
              Anonymous

                From what I can tell, the plain `zlib` package on CentOS is for pre-compiled programs that use zlib. If you want to compile with zlib (as we do here), you need to install the `zlib-devel` package as well.

                Yes, Rosetta/main/source/tools/build/user.settings is the user.settings file to edit.

            • #6152
              Anonymous

                well, the z-library seems to be installed, it’s found in /lib64/zlib.so.1 (linked to zlib.so.1.2.3)(version 1.2.3-106.34). I also tried to softlink it from /usr/lib and /usr/local/lib, just in case the linker doesn’t look in /lib/64, but that doesn’t work either.

                Cheers,

                Uli

              • #6153
                Anonymous

                  A) I think you may need the “dev” version of zlib, not the runtime version. I think it supplies a linkable compression routine library? Perhaps it has #includable headers? I’m not entirely sure.

                  B) You can try some sort of override like this in user.settings:

                  settings = {
                  “user” : {
                  “prepends” : {
                  “library_path” : [
                  “/usr/lib64”,
                  ],
                  },
                  “appends” : {
                  “flags”:{
                  },
                  },
                  “overrides” : {
                  },
                  “removes” : {
                  “flags”:{
                  },
                  },
                  }
                  }

              Viewing 2 reply threads
              • You must be logged in to reply to this topic.