skovaka / UNCALLED

Raw nanopore signal mapper that enables real-time targeted sequencing
MIT License
520 stars 44 forks source link

Error message when starting UNCALLED #23

Closed robingarcia closed 3 years ago

robingarcia commented 3 years ago

I installed UNCALLED for all users on our Server.

  1. python3 setup.py install
  2. Even python3 and gcc has the right versions... (base) [admin@ms-wiss2602001 ~]$ python3 --version && gcc --version Python 3.8.3 gcc (GCC) 8.3.1 20191121 (Red Hat 8.3.1-5)

uncalled was installed in /software/anaconda/anaconda3/bin while the git repo is in /software/UNCALLED

If I start UNCALLED, I get this error message:

`(base) [admin@ms-wiss2602001 bin]$ pwd /software/anaconda/anaconda3/bin

(base) [admin@ms-wiss2602001 bin]$ ./uncalled Traceback (most recent call last): File "./uncalled", line 4, in import('pkg_resources').run_script('uncalled==2.2', 'uncalled') File "/software/anaconda/anaconda3/lib/python3.8/site-packages/pkg_resources/init.py", line 665, in run_script self.require(requires)[0].run_script(script_name, ns) File "/software/anaconda/anaconda3/lib/python3.8/site-packages/pkg_resources/init.py", line 1463, in run_script exec(code, namespace, namespace) File "/home/admin/.local/lib/python3.8/site-packages/uncalled-2.2-py3.8-linux-x86_64.egg/EGG-INFO/scripts/uncalled", line 35, in import uncalled as unc File "/home/admin/.local/lib/python3.8/site-packages/uncalled-2.2-py3.8-linux-x86_64.egg/uncalled/init.py", line 1, in from _uncalled import * ImportError: /home/admin/.local/lib/python3.8/site-packages/uncalled-2.2-py3.8-linux-x86_64.egg/_uncalled.cpython-38-x86_64-linux-gnu.so: undefined symbol: H5Oget_info `

What is going wrong?

Thank you for your help.

skovaka commented 3 years ago

I think the issue is a conflict between the version of HDF5 installed by anaconda3 VS the one UNCALLED uses. Try installing it like this:

cd /software/UNCALLED
rm -r build
python3 setup.py build_ext --link-objects ./submods/hdf5/lib/libhdf5.a
python3 setup.py install

That should force the linker to use the version provided by UNCALLED. Let me know if that works and I can make a change in the repo which will automate this.

robingarcia commented 3 years ago

Thank you very much for your fast response.

Now he use the HDF5 provided by UNCALLED, but maybe a module is missed? I got this error now.

Traceback (most recent call last): File "./uncalled", line 4, in <module> __import__('pkg_resources').run_script('uncalled==2.2', 'uncalled') File "/software/anaconda/anaconda3/lib/python3.8/site-packages/pkg_resources/__init__.py", line 665, in run_script self.require(requires)[0].run_script(script_name, ns) File "/software/anaconda/anaconda3/lib/python3.8/site-packages/pkg_resources/__init__.py", line 1463, in run_script exec(code, namespace, namespace) File "/software/anaconda/anaconda3/lib/python3.8/site-packages/uncalled-2.2-py3.8-linux-x86_64.egg/EGG-INFO/scripts/uncalled", line 35, in <module> import uncalled as unc File "/software/anaconda/anaconda3/lib/python3.8/site-packages/uncalled-2.2-py3.8-linux-x86_64.egg/uncalled/__init__.py", line 3, in <module> from uncalled import index, pafstats, sim_utils, args, debug File "/software/anaconda/anaconda3/lib/python3.8/site-packages/uncalled-2.2-py3.8-linux-x86_64.egg/uncalled/debug.py", line 8, in <module> from file_read_backwards import FileReadBackwards ModuleNotFoundError: No module named 'file_read_backwards'

Thank you for your help. :-)

skovaka commented 3 years ago

Glad that fixed the HDF5 issue! I actually removed that missing module about a week ago, so you should be able to just "git pull", re-install, and that should work.

robingarcia commented 3 years ago

Thank you. I reinstalled it following your advise. (with HDF5 provided by UNCALLED).

Now I got this error.

Traceback (most recent call last): File "/software/anaconda/anaconda3/bin/uncalled", line 4, in <module> __import__('pkg_resources').run_script('uncalled==2.2', 'uncalled') File "/software/anaconda/anaconda3/lib/python3.8/site-packages/pkg_resources/__init__.py", line 665, in run_script self.require(requires)[0].run_script(script_name, ns) File "/software/anaconda/anaconda3/lib/python3.8/site-packages/pkg_resources/__init__.py", line 1463, in run_script exec(code, namespace, namespace) File "/software/anaconda/anaconda3/lib/python3.8/site-packages/uncalled-2.2-py3.8-linux-x86_64.egg/EGG-INFO/scripts/uncalled", line 348, in <module> parser.print_help() NameError: name 'parser' is not defined

skovaka commented 3 years ago

It looks that error should only appear if you run uncalled without a valid subcommand, i.e. "uncalled index", "uncalled map", "uncalled sim", etc. That is not a helpful error though and I will fix that today so it prints the help message. For now you can type "uncalled --help" to see the help message. Sorry for all the issues, and thank you for reporting them!

robingarcia commented 3 years ago

Thank you very much for your support. :-)

skovaka commented 3 years ago

I just pushed a fix that will allow you to simply install with python3 setup.py install using anaconda, and also made it print the help message when you don't include a subcommand.