Hi everyone,
I want to model helices with rna_helix.py but I get an error that rna_helix.linuxgccrelease isn't in the path where python script is looking for it:
File "/home/software/rosetta_bin_linux_2021.16.61629_bundle/main/tools/rna_tools/bin/rna_helix.py", line 27, in <module>
cmdline = rosetta_exe('rna_helix', rosetta_folder=args.rosetta_folder, extension=args.extension)
File "/home/software/rosetta_bin_linux_2021.16.61629_bundle/main/tools/rna_tools/bin/rosetta_exe.py", line 35, in rosetta_exe
check_path_exist(exe_path)
File "/home/software/rosetta_bin_linux_2021.16.61629_bundle/main/tools/rna_tools/bin/rosetta_exe.py", line 55, in check_path_exist
raise ValueError("Path %s does not exist!" % path_name)
ValueError: Path /home/software/rosetta_bin_linux_2021.16.61629_bundle/main/rna_helix.macosclangrelease
This ValueError regarding a MacOS version is due to the following line from rosetta_exe.py but also appears for the Linux Version by deleting the MacOS extensions:
name_extensions = ['', ".linuxgccrelease", ".linuxclangrelease", ".macosgccrelease", ".macosclangrelease"]
I found that rna_helix.linuxgccrelease is located in Path /home/software/rosetta_bin_linux_2021.16.61629_bundle/main/source/bin
when it should be in /home/software/rosetta_bin_linux_2021.16.61629_bundle/main
By using rna_helix.linuxgccrelease instead of rna_helix.py in bash it works and models a helix.
By running python rna_helix.py in bash I get:
File "/home/software/rosetta_bin_linux_2021.16.61629_bundle/main/tools/rna_tools/sym_link.py", line 22, in <module>
os.remove(f)
PermissionError: [Errno 13] Permission denied: './bin/rsync_from_cluster.py'
Feels like there's a problem with pathes in python script rosetta_exe.py and/or in the symbolic links in sym_link.py
Hopefully I was able to explain everything traceably and you can shed some light on this situation. Big thanks in advance!
Kind regards
Katherina
You should be able to specify the path to Rosetta with the -rosetta_folder option of rna_helix.py -- Note that this is the path without the main folder present. (So /home/software/rosetta_bin_linux_2021.16.61629_bundle/ in your case.) Alternatively, this can also be the full bin path. (/home/software/rosetta_bin_linux_2021.16.61629_bundle/main/source/bin)
If you don't give the -rosetta_folder option, it will try to use the $ROSETTA environment variable as if you had passed it to -rosetta_folder. Failing that, it will try to look for the Rosetta executables in your executable path.
You don't specify the full command line you used with rna_helix.py, but I'm suspecting you used the -rosetta_folder option with the "main" designated. If so, try reruning without the "main" component in the path.
Thank you for your response!
You were absolutely right. By adding the -rosetta_folder tag with /home/software/rosetta_bin_linux_2021.16.61629_bundle/ as well as /home/software/rosetta_bin_linux_2021.16.61629_bundle/main/source/bin it works out. Also by deleting "main" in .bashrc
But I am wondering if there will be trouble with the RNA_TOOLS path. Shoudn't it be like this now:
export RNA_TOOLS=$ROSETTA/main/tools/rna_tools
I tried this and also the original version RNA_TOOLS=$ROSETTA/tools/rna_tools and no path errors were occuring for both... ?
Best,
Katherina