Pyrosetta build error with anaconda python

Member Site Forums PyRosetta PyRosetta – Build/Install Pyrosetta build error with anaconda python

Viewing 3 reply threads
  • Author
    Posts
    • #2425
      Anonymous

        Hello:

        We are trying to build Pyrosetta from source since we wish to use the Glib’s with anaconda python rather that Glibs with the system python.

        First I do:

        /share/apps/local/anaconda/bin/python DeployPyRosetta.py

        then cp BuildPyRosetta.sh to …../source

        cd ……/source

        add correct path to /…./anaconda/bin/python at top of  files scons.py, update_options.sh, and update_ResidueType_enum_files.sh.

        Then when I choose to build….

        in BuildPyrosetta.sh: setting

         

         

        #### 1.

         

        –python-lib /share/apps/local/anaconda/lib/

         

        #### LEADS to NO FILE NAME ADDED AND CANT FIND DIRECTORY

         

        cd /home/curtisj/programs/rosetta_pyrosetta/rosetta_bin_linux_2016.13.58602_bundle/main/source/build/PyRosetta/linux/namespace/release/rosetta/../ && gcc /home/curtisj/programs/rosetta_pyrosetta/rosetta_bin_linux_2016.13.58602_bundle/main/source/build/PyRosetta/linux/namespace/release/rosetta/utility/_utility_.0.o /home/curtisj/programs/rosetta_pyrosetta/rosetta_bin_linux_2016.13.58602_bundle/main/source/build/PyRosetta/linux/namespace/release/rosetta/utility/_utility_.1.o -shared -lmini -lstdc++ -lz -l/share/apps/local/anaconda/lib/                               -lboost_python  -L/home/curtisj/programs/rosetta_pyrosetta/rosetta_bin_linux_2016.13.58602_bundle/main/source/build/PyRosetta/linux/namespace/release/rosetta -L. -L./../../../../ -L/home/curtisj/programs/rosetta_pyrosetta/rosetta_bin_linux_2016.13.58602_bundle/tools/PyRosetta.develop/PyRosetta.Develop.64/lib  -Xlinker -rpath . -Xlinker -rpath ./../../../../ -Xlinker -rpath /home/curtisj/programs/rosetta_pyrosetta/rosetta_bin_linux_2016.13.58602_bundle/tools/PyRosetta.develop/PyRosetta.Develop.64/lib -Xlinker -rpath rosetta -o /home/curtisj/programs/rosetta_pyrosetta/rosetta_bin_linux_2016.13.58602_bundle/main/source/build/PyRosetta/linux/namespace/release/rosetta/utility/_utility_.so

        /usr/bin/ld: cannot find -l/share/apps/local/anaconda/lib/

        collect2: ld returned 1 exit status

         

        Encounter error while executing: cd /home/curtisj/programs/rosetta_pyrosetta/rosetta_bin_linux_2016.13.58602_bundle/main/source/build/PyRosetta/linux/namespace/release/rosetta/../&& gcc /home/curtisj/programs/rosetta_pyrosetta/rosetta_bin_linux_2016.13.58602_bundle/main/source/build/PyRosetta/linux/namespace/release/rosetta/utility/_utility_.0.o /home/curtisj/programs/rosetta_pyrosetta/rosetta_bin_linux_2016.13.58602_bundle/main/source/build/PyRosetta/linux/namespace/release/rosetta/utility/_utility_.1.o -shared -lmini -lstdc++ -lz -l/share/apps/local/anaconda/lib/                               -lboost_python  -L/home/curtisj/programs/rosetta_pyrosetta/rosetta_bin_linux_2016.13.58602_bundle/main/source/build/PyRosetta/linux/namespace/release/rosetta -L. -L./../../../../ -L/home/curtisj/programs/rosetta_pyrosetta/rosetta_bin_linux_2016.13.58602_bundle/tools/PyRosetta.develop/PyRosetta.Develop.64/lib  -Xlinker -rpath . -Xlinker -rpath ./../../../../ -Xlinker -rpath /home/curtisj/programs/rosetta_pyrosetta/rosetta_bin_linux_2016.13.58602_bundle/tools/PyRosetta.develop/PyRosetta.Develop.64/lib -Xlinker -rpath rosetta -o /home/curtisj/programs/rosetta_pyrosetta/rosetta_bin_linux_2016.13.58602_bundle/main/source/build/PyRosetta/linux/namespace/release/rosetta/utility/_utility_.so

        [curtisj@entropy source]$ ls /share/apps/local/anaconda/lib/

        BugpointPasses.so                         libjpeg.so.8.4.0     

         

         

        #### 2.

         

        –python-lib /share/apps/local/anaconda/lib/libpython2.7.so.1.0

         

        ### LEADS TO CANT FIND FILE BUT IT IS THERE!

         

        cd

        /home/curtisj/programs/rosetta_pyrosetta/rosetta_bin_linux_2016.13.58602_bundle/main/source/build/PyRosetta/linux/namespace/release/rosetta/../

        && gcc

        /home/curtisj/programs/rosetta_pyrosetta/rosetta_bin_linux_2016.13.58602_bundle/main/source/build/PyRosetta/linux/namespace/release/rosetta/utility/_utility_.0.o

        /home/curtisj/programs/rosetta_pyrosetta/rosetta_bin_linux_2016.13.58602_bundle/main/source/build/PyRosetta/linux/namespace/release/rosetta/utility/_utility_.1.o

        -shared -lmini -lstdc++ -lz

        -l/share/apps/local/anaconda/lib/libpython2.7.so.1.0

        -lboost_python

        -L/home/curtisj/programs/rosetta_pyrosetta/rosetta_bin_linux_2016.13.58602_bundle/main/source/build/PyRosetta/linux/namespace/release/rosetta

        -L. -L./../../../../

        -L/home/curtisj/programs/rosetta_pyrosetta/rosetta_bin_linux_2016.13.58602_bundle/tools/PyRosetta.develop/PyRosetta.Develop.64/lib

        -Xlinker -rpath . -Xlinker -rpath ./../../../../ -Xlinker -rpath

        /home/curtisj/programs/rosetta_pyrosetta/rosetta_bin_linux_2016.13.58602_bundle/tools/PyRosetta.develop/PyRosetta.Develop.64/lib

        -Xlinker -rpath rosetta -o

        /home/curtisj/programs/rosetta_pyrosetta/rosetta_bin_linux_2016.13.58602_bundle/main/source/build/PyRosetta/linux/namespace/release/rosetta/utility/_utility_.so

        /usr/bin/ld: cannot find -l/share/apps/local/anaconda/lib/libpython2.7.so.1.0

        collect2: ld returned 1 exit status

         

        Wondering if anyone has some insights to offer.

        Thank You,

        Jsnyderjr

         

      • #11586
        Anonymous

          Hi,

           

          There has been talk of this on and off, and there may be a clean fix soon.  In the meantime, see this Gist from Steve Bertolani.

          Its for Mac, but you may be able to follow it and change just a few things for linux…

          https://gist.github.com/sjbertolani/a98553b57c19737dec28

           

        • #11592
          Anonymous

            Thanks for previous response.  I thought I should clearify slightly as the compilation attempt was just a hopeful workaround to the real issue:

            1.  We want to run pyrosetta on our cents 6.5 system.  When we try to run rosetta from the monolith release (93) we get the following error when importing from Anaconda python (version 2.1.0 64-bit ; python 2.7.8)

             

            >>> import rosetta

            Traceback (most recent call last):

              File “<stdin>”, line 1, in <module>

            ImportError: /lib64/libc.so.6: version `GLIBC_2.14′ not found (required by ./rosetta.so)

             

             

            2. So we attempted to compile pyrosetta using our installed libraries and dependencies as upgrading glib might break legacy components.  When we attempt this … ((( steps to put compilation environment )) we get the following error at the final link stage … whereby the compiler can’t find that anaconda python library 

             

            cd /home/curtisj/programs/rosetta_pyrosetta/rosetta_bin_linux_2016.13.58602_bundle/main/source/build/PyRosetta/linux/namespace/release/rosetta/../ && gcc /home/curtisj/programs/rosetta_pyrosetta/rosetta_bin_linux_2016.13.58602_bundle/main/source/build/PyRosetta/linux/namespace/release/rosetta/utility/_utility_.0.o /home/curtisj/programs/rosetta_pyrosetta/rosetta_bin_linux_2016.13.58602_bundle/main/source/build/PyRosetta/linux/namespace/release/rosetta/utility/_utility_.1.o -shared -lmini -lstdc++ -lz -l/share/apps/local/anaconda/lib/                               -lboost_python  -L/home/curtisj/programs/rosetta_pyrosetta/rosetta_bin_linux_2016.13.58602_bundle/main/source/build/PyRosetta/linux/namespace/release/rosetta -L. -L./../../../../ -L/home/curtisj/programs/rosetta_pyrosetta/rosetta_bin_linux_2016.13.58602_bundle/tools/PyRosetta.develop/PyRosetta.Develop.64/lib  -Xlinker -rpath . -Xlinker -rpath ./../../../../ -Xlinker -rpath /home/curtisj/programs/rosetta_pyrosetta/rosetta_bin_linux_2016.13.58602_bundle/tools/PyRosetta.develop/PyRosetta.Develop.64/lib -Xlinker -rpath rosetta -o /home/curtisj/programs/rosetta_pyrosetta/rosetta_bin_linux_2016.13.58602_bundle/main/source/build/PyRosetta/linux/namespace/release/rosetta/utility/_utility_.so

            /usr/bin/ld: cannot find -l/share/apps/local/anaconda/lib/

            collect2: ld returned 1 exit status

             

            3. If we run the link command pasted above by itself and put in the full path / name of the python library the command will complete.  But we need the DeployPyRosetta.py script to be able to do this automatically as I am sure that is how it supposed to work and we don’t know what addition compilation / linking / or installation bits that are done after linking this utility.so file.

             

            Thanks,

            Jasnyderjr

             

          • #11593
            Anonymous

              Please try to use –python-lib to only specify name of the Python lib (like ‘python2.7’) and then use -L to specify linking path like: -L /share/apps/local/anaconda/lib

              Hope this helps, 

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