You are here

Compile C++ Rosetta to Pyrosetta ERROR

2 posts / 0 new
Last post
Compile C++ Rosetta to Pyrosetta ERROR
#1

Dear all,
        I am trying to compile a c++ version of Rosetta into a python version in my ubuntu system(Ubuntu 5.4.0-6ubuntu1~16.04.12) recently, because I modified some c++ files in C++ Rosetta to add a fragment library which has fragments with a variable length (And it can compile successfully in c++ version of Rosetta).
        Acually, I tried the method in https://github.com/RosettaCommons/PyRosetta.notebooks/blob/master/notebooks/04.02-Low-Res-Scoring-and-Fragments.ipynb, but it still needs a fixed length in a fragment file. 
       And in fact, my fragment file is like this(Please have a look to the example picture of my fragment file in attachment), you can see that the length in my fragment file is variable, and its length is between 7 mer to 15mer(PS: Some positions may not have fragments of a certain length, like: in position 1, maybe there is no 10mer fragments, but it contains 7,8,9,11,12,13,14,15mer fragments).
       In addition, I also tried : 
       cd /rosetta/main/source/src/python/PyRosetta
       python build.py -j24 --create-package $HOME/my_pyrosetta_package --type Release --python-include-dir=/opt/anaconda/anaconda3/include/python3.7m --python-lib=/opt/anaconda/anaconda3/lib/libpython3.7m.dylib --serialization
       But I have a git error now, please have a look to the error picture in attachment. Acutally, I searched methods on website to fix it, but those methods are too complicated and I don't which one I can choose to fix this bug here. Can you do me a favor on my problem here. I don't know why it is related with git and still don't know how to fix it here.
        Really hope you have some time to help me and teach me how to fix this. Thank you so much!

Yours sinserely,
Yanhua Qiao
2020.08.21

Post Situation: 
Fri, 2020-08-21 09:00
michelleqyh

You should already have the files which git is trying to find.

There should be code to skip things if you have a release version, but that can possibly get confused if you've put the release version back into a Git repo.

What you likley need to do is edit the source/src/python/PyRosetta/build.py script to bypass the submodule update steps at line ~800 (just comment that command out).

Altenatively, it looks like you can skip that by manually specifying the --pybind11 and --binder options. I think that setting --pybind11 to the full path for source/external/pybind11/include and --binder to the full path to source/src/python/PyRosetta/binder/source should work.

Tue, 2021-02-09 08:49
rmoretti