sys-bio / tellurium

Python Environment for Modeling and Simulating Biological Systems
http://tellurium.analogmachine.org/
Apache License 2.0
110 stars 36 forks source link

tellurium looks for incorrect python installation #476

Open wrcannon opened 4 years ago

wrcannon commented 4 years ago

Hi, I'm running MacOS 10.15.6 and I'm using pyenv to manage python distributions. when I run the following in python: >import tellurium as te >te.loadSBMLModel("rubrum_all_reactions.sbml")

I get the following error: ImportError: dlopen(/Users/d3k137/.pyenv/versions/anaconda3-2019.10/lib/python3.7/site-packages/tecombine/_libcombine.so, 2): Library not loaded: /Library/Frameworks/Python.framework/Versions/3.7/Python Referenced from: /Users/d3k137/.pyenv/versions/anaconda3-2019.10/lib/python3.7/site-packages/tecombine/_libcombine.so Reason: image not found

I can confirm that there is no directory '/Library/Frameworks/Python.framework/'

Below is the complete error msg:

ImportError Traceback (most recent call last) ~/.pyenv/versions/anaconda3-2019.10/lib/python3.7/site-packages/tecombine/libcombine.py in swig_import_helper() 26 try: ---> 27 return importlib.import_module(mname) 28 except ImportError:

~/.pyenv/versions/anaconda3-2019.10/lib/python3.7/importlib/init.py in import_module(name, package) 126 level += 1 --> 127 return _bootstrap._gcd_import(name[level:], package, level) 128

~/.pyenv/versions/anaconda3-2019.10/lib/python3.7/importlib/_bootstrap.py in _gcd_import(name, package, level)

~/.pyenv/versions/anaconda3-2019.10/lib/python3.7/importlib/_bootstrap.py in _find_andload(name, import)

~/.pyenv/versions/anaconda3-2019.10/lib/python3.7/importlib/_bootstrap.py in _find_and_loadunlocked(name, import)

~/.pyenv/versions/anaconda3-2019.10/lib/python3.7/importlib/_bootstrap.py in _load_unlocked(spec)

~/.pyenv/versions/anaconda3-2019.10/lib/python3.7/importlib/_bootstrap.py in module_from_spec(spec)

~/.pyenv/versions/anaconda3-2019.10/lib/python3.7/importlib/_bootstrap_external.py in create_module(self, spec)

~/.pyenv/versions/anaconda3-2019.10/lib/python3.7/importlib/_bootstrap.py in _call_with_frames_removed(f, *args, **kwds)

ImportError: dlopen(/Users/d3k137/.pyenv/versions/anaconda3-2019.10/lib/python3.7/site-packages/tecombine/_libcombine.so, 2): Library not loaded: /Library/Frameworks/Python.framework/Versions/3.7/Python Referenced from: /Users/d3k137/.pyenv/versions/anaconda3-2019.10/lib/python3.7/site-packages/tecombine/_libcombine.so Reason: image not found

During handling of the above exception, another exception occurred:

ImportError Traceback (most recent call last) ~/.pyenv/versions/anaconda3-2019.10/lib/python3.7/site-packages/tellurium/teconverters/convert_omex.py in 14 try: ---> 15 import tecombine as libcombine 16

~/.pyenv/versions/anaconda3-2019.10/lib/python3.7/site-packages/tecombine/init.py in ----> 1 from .libcombine import * 2 3 version = '0.2.7'

~/.pyenv/versions/anaconda3-2019.10/lib/python3.7/site-packages/tecombine/libcombine.py in 29 return importlib.import_module('_libcombine') ---> 30 _libcombine = swig_import_helper() 31 del swig_import_helper

~/.pyenv/versions/anaconda3-2019.10/lib/python3.7/site-packages/tecombine/libcombine.py in swig_import_helper() 28 except ImportError: ---> 29 return importlib.import_module('_libcombine') 30 _libcombine = swig_import_helper()

~/.pyenv/versions/anaconda3-2019.10/lib/python3.7/importlib/init.py in import_module(name, package) 126 level += 1 --> 127 return _bootstrap._gcd_import(name[level:], package, level) 128

ImportError: dlopen(/Users/d3k137/.pyenv/versions/anaconda3-2019.10/lib/python3.7/site-packages/tecombine/_libcombine.so, 2): Library not loaded: /Library/Frameworks/Python.framework/Versions/3.7/Python Referenced from: /Users/d3k137/.pyenv/versions/anaconda3-2019.10/lib/python3.7/site-packages/tecombine/_libcombine.so Reason: image not found

During handling of the above exception, another exception occurred:

ImportError Traceback (most recent call last) ~/.pyenv/versions/anaconda3-2019.10/lib/python3.7/site-packages/tecombine/libcombine.py in swig_import_helper() 26 try: ---> 27 return importlib.import_module(mname) 28 except ImportError:

~/.pyenv/versions/anaconda3-2019.10/lib/python3.7/importlib/init.py in import_module(name, package) 126 level += 1 --> 127 return _bootstrap._gcd_import(name[level:], package, level) 128

~/.pyenv/versions/anaconda3-2019.10/lib/python3.7/importlib/_bootstrap.py in _gcd_import(name, package, level)

~/.pyenv/versions/anaconda3-2019.10/lib/python3.7/importlib/_bootstrap.py in _find_andload(name, import)

~/.pyenv/versions/anaconda3-2019.10/lib/python3.7/importlib/_bootstrap.py in _find_and_loadunlocked(name, import)

~/.pyenv/versions/anaconda3-2019.10/lib/python3.7/importlib/_bootstrap.py in _load_unlocked(spec)

~/.pyenv/versions/anaconda3-2019.10/lib/python3.7/importlib/_bootstrap.py in module_from_spec(spec)

~/.pyenv/versions/anaconda3-2019.10/lib/python3.7/importlib/_bootstrap_external.py in create_module(self, spec)

~/.pyenv/versions/anaconda3-2019.10/lib/python3.7/importlib/_bootstrap.py in _call_with_frames_removed(f, *args, **kwds)

ImportError: dlopen(/Users/d3k137/.pyenv/versions/anaconda3-2019.10/lib/python3.7/site-packages/tecombine/_libcombine.so, 2): Library not loaded: /Library/Frameworks/Python.framework/Versions/3.7/Python Referenced from: /Users/d3k137/.pyenv/versions/anaconda3-2019.10/lib/python3.7/site-packages/tecombine/_libcombine.so Reason: image not found

During handling of the above exception, another exception occurred:

ImportError Traceback (most recent call last)

in ----> 1 import tellurium as te 2 te.loadSBMLModel("rubrum_all_reactions.sbml") ~/.pyenv/versions/anaconda3-2019.10/lib/python3.7/site-packages/tellurium/__init__.py in 12 13 # General ---> 14 from .tellurium import ( 15 getVersionInfo, 16 printVersionInfo, ~/.pyenv/versions/anaconda3-2019.10/lib/python3.7/site-packages/tellurium/tellurium.py in 195 warnings.warn("'sbml2matlab' could not be imported", ImportWarning) 196 --> 197 from . import teconverters 198 199 ~/.pyenv/versions/anaconda3-2019.10/lib/python3.7/site-packages/tellurium/teconverters/__init__.py in 5 from .convert_antimony import antimonyConverter 6 ----> 7 from .convert_omex import inlineOmexImporter, OmexFormatDetector 8 9 from .convert_phrasedml import phrasedmlImporter ~/.pyenv/versions/anaconda3-2019.10/lib/python3.7/site-packages/tellurium/teconverters/convert_omex.py in 16 17 except ImportError: ---> 18 import libcombine 19 20 ~/.pyenv/versions/anaconda3-2019.10/lib/python3.7/site-packages/tecombine/libcombine.py in 28 except ImportError: 29 return importlib.import_module('_libcombine') ---> 30 _libcombine = swig_import_helper() 31 del swig_import_helper 32 elif _swig_python_version_info >= (2, 6, 0): ~/.pyenv/versions/anaconda3-2019.10/lib/python3.7/site-packages/tecombine/libcombine.py in swig_import_helper() 27 return importlib.import_module(mname) 28 except ImportError: ---> 29 return importlib.import_module('_libcombine') 30 _libcombine = swig_import_helper() 31 del swig_import_helper ~/.pyenv/versions/anaconda3-2019.10/lib/python3.7/importlib/__init__.py in import_module(name, package) 125 break 126 level += 1 --> 127 return _bootstrap._gcd_import(name[level:], package, level) 128 129 ImportError: dlopen(/Users/d3k137/.pyenv/versions/anaconda3-2019.10/lib/python3.7/site-packages/tecombine/_libcombine.so, 2): Library not loaded: /Library/Frameworks/Python.framework/Versions/3.7/Python Referenced from: /Users/d3k137/.pyenv/versions/anaconda3-2019.10/lib/python3.7/site-packages/tecombine/_libcombine.so Reason: image not found
hsauro commented 4 years ago

Bill, we'll take a look.

Herbert

On Wed, Sep 16, 2020 at 11:20 AM Bill Cannon notifications@github.com wrote:

Hi, I'm running MacOS 10.15.6 when I run the following in python

import tellurium as te te.loadSBMLModel("rubrum_all_reactions.sbml") I get the following error: ImportError: dlopen(/Users/d3k137/.pyenv/versions/anaconda3-2019.10/lib/python3.7/site-packages/tecombine/_libcombine.so, 2): Library not loaded: /Library/Frameworks/Python.framework/Versions/3.7/Python Referenced from: /Users/d3k137/.pyenv/versions/anaconda3-2019.10/lib/python3.7/site-packages/tecombine/_libcombine.so Reason: image not found

I can confirm that there is no directory '/Library/Frameworks/Python.framework/' I'm using pyenv to manage python distributions. Below is the complete error msg:

ImportError Traceback (most recent call last) ~/.pyenv/versions/anaconda3-2019.10/lib/python3.7/site-packages/tecombine/libcombine.py in swig_import_helper() 26 try: ---> 27 return importlib.import_module(mname) 28 except ImportError:

~/.pyenv/versions/anaconda3-2019.10/lib/python3.7/importlib/init.py in import_module(name, package) 126 level += 1 --> 127 return _bootstrap._gcd_import(name[level:], package, level) 128

~/.pyenv/versions/anaconda3-2019.10/lib/python3.7/importlib/_bootstrap.py in _gcd_import(name, package, level)

~/.pyenv/versions/anaconda3-2019.10/lib/python3.7/importlib/_bootstrap.py in find_and_load(name, import)

~/.pyenv/versions/anaconda3-2019.10/lib/python3.7/importlib/_bootstrap.py in find_and_load_unlocked(name, import)

~/.pyenv/versions/anaconda3-2019.10/lib/python3.7/importlib/_bootstrap.py in _load_unlocked(spec)

~/.pyenv/versions/anaconda3-2019.10/lib/python3.7/importlib/_bootstrap.py in module_from_spec(spec)

~/.pyenv/versions/anaconda3-2019.10/lib/python3.7/importlib/_bootstrap_external.py in create_module(self, spec)

~/.pyenv/versions/anaconda3-2019.10/lib/python3.7/importlib/_bootstrap.py in _call_with_frames_removed(f, *args, **kwds)

ImportError: dlopen(/Users/d3k137/.pyenv/versions/anaconda3-2019.10/lib/python3.7/site-packages/tecombine/_libcombine.so, 2): Library not loaded: /Library/Frameworks/Python.framework/Versions/3.7/Python Referenced from: /Users/d3k137/.pyenv/versions/anaconda3-2019.10/lib/python3.7/site-packages/tecombine/_libcombine.so Reason: image not found

During handling of the above exception, another exception occurred:

ImportError Traceback (most recent call last) ~/.pyenv/versions/anaconda3-2019.10/lib/python3.7/site-packages/tellurium/teconverters/convert_omex.py in 14 try: ---> 15 import tecombine as libcombine 16

~/.pyenv/versions/anaconda3-2019.10/lib/python3.7/site-packages/tecombine/ init.py in ----> 1 from .libcombine import 2 3 version* = '0.2.7'

~/.pyenv/versions/anaconda3-2019.10/lib/python3.7/site-packages/tecombine/libcombine.py in 29 return importlib.import_module('_libcombine') ---> 30 _libcombine = swig_import_helper() 31 del swig_import_helper

~/.pyenv/versions/anaconda3-2019.10/lib/python3.7/site-packages/tecombine/libcombine.py in swig_import_helper() 28 except ImportError: ---> 29 return importlib.import_module('_libcombine') 30 _libcombine = swig_import_helper()

~/.pyenv/versions/anaconda3-2019.10/lib/python3.7/importlib/init.py in import_module(name, package) 126 level += 1 --> 127 return _bootstrap._gcd_import(name[level:], package, level) 128

ImportError: dlopen(/Users/d3k137/.pyenv/versions/anaconda3-2019.10/lib/python3.7/site-packages/tecombine/_libcombine.so, 2): Library not loaded: /Library/Frameworks/Python.framework/Versions/3.7/Python Referenced from: /Users/d3k137/.pyenv/versions/anaconda3-2019.10/lib/python3.7/site-packages/tecombine/_libcombine.so Reason: image not found

During handling of the above exception, another exception occurred:

ImportError Traceback (most recent call last) ~/.pyenv/versions/anaconda3-2019.10/lib/python3.7/site-packages/tecombine/libcombine.py in swig_import_helper() 26 try: ---> 27 return importlib.import_module(mname) 28 except ImportError:

~/.pyenv/versions/anaconda3-2019.10/lib/python3.7/importlib/init.py in import_module(name, package) 126 level += 1 --> 127 return _bootstrap._gcd_import(name[level:], package, level) 128

~/.pyenv/versions/anaconda3-2019.10/lib/python3.7/importlib/_bootstrap.py in _gcd_import(name, package, level)

~/.pyenv/versions/anaconda3-2019.10/lib/python3.7/importlib/_bootstrap.py in find_and_load(name, import)

~/.pyenv/versions/anaconda3-2019.10/lib/python3.7/importlib/_bootstrap.py in find_and_load_unlocked(name, import)

~/.pyenv/versions/anaconda3-2019.10/lib/python3.7/importlib/_bootstrap.py in _load_unlocked(spec)

~/.pyenv/versions/anaconda3-2019.10/lib/python3.7/importlib/_bootstrap.py in module_from_spec(spec)

~/.pyenv/versions/anaconda3-2019.10/lib/python3.7/importlib/_bootstrap_external.py in create_module(self, spec)

~/.pyenv/versions/anaconda3-2019.10/lib/python3.7/importlib/_bootstrap.py in _call_with_frames_removed(f, *args, **kwds)

ImportError: dlopen(/Users/d3k137/.pyenv/versions/anaconda3-2019.10/lib/python3.7/site-packages/tecombine/_libcombine.so, 2): Library not loaded: /Library/Frameworks/Python.framework/Versions/3.7/Python Referenced from: /Users/d3k137/.pyenv/versions/anaconda3-2019.10/lib/python3.7/site-packages/tecombine/_libcombine.so Reason: image not found

During handling of the above exception, another exception occurred:

ImportError Traceback (most recent call last) in ----> 1 import tellurium as te 2 te.loadSBMLModel("rubrum_all_reactions.sbml")

~/.pyenv/versions/anaconda3-2019.10/lib/python3.7/site-packages/tellurium/ init.py in 12 13 # General ---> 14 from .tellurium import ( 15 getVersionInfo, 16 printVersionInfo,

~/.pyenv/versions/anaconda3-2019.10/lib/python3.7/site-packages/tellurium/tellurium.py in 195 warnings.warn("'sbml2matlab' could not be imported", ImportWarning) 196 --> 197 from . import teconverters 198 199

~/.pyenv/versions/anaconda3-2019.10/lib/python3.7/site-packages/tellurium/teconverters/ init.py in 5 from .convert_antimony import antimonyConverter 6 ----> 7 from .convert_omex import inlineOmexImporter, OmexFormatDetector 8 9 from .convert_phrasedml import phrasedmlImporter

~/.pyenv/versions/anaconda3-2019.10/lib/python3.7/site-packages/tellurium/teconverters/convert_omex.py in 16 17 except ImportError: ---> 18 import libcombine 19 20

~/.pyenv/versions/anaconda3-2019.10/lib/python3.7/site-packages/tecombine/libcombine.py in 28 except ImportError: 29 return importlib.import_module('_libcombine') ---> 30 _libcombine = swig_import_helper() 31 del swig_import_helper 32 elif _swig_python_version_info >= (2, 6, 0):

~/.pyenv/versions/anaconda3-2019.10/lib/python3.7/site-packages/tecombine/libcombine.py in swig_import_helper() 27 return importlib.import_module(mname) 28 except ImportError: ---> 29 return importlib.import_module('_libcombine') 30 _libcombine = swig_import_helper() 31 del swig_import_helper

~/.pyenv/versions/anaconda3-2019.10/lib/python3.7/importlib/init.py in import_module(name, package) 125 break 126 level += 1 --> 127 return _bootstrap._gcd_import(name[level:], package, level) 128 129

ImportError: dlopen(/Users/d3k137/.pyenv/versions/anaconda3-2019.10/lib/python3.7/site-packages/tecombine/_libcombine.so, 2): Library not loaded: /Library/Frameworks/Python.framework/Versions/3.7/Python Referenced from: /Users/d3k137/.pyenv/versions/anaconda3-2019.10/lib/python3.7/site-packages/tecombine/_libcombine.so Reason: image not found

— You are receiving this because you are subscribed to this thread. Reply to this email directly, view it on GitHub https://github.com/sys-bio/tellurium/issues/476, or unsubscribe https://github.com/notifications/unsubscribe-auth/AAIBSDXF574DPKYGTEDTPTDSGD6VBANCNFSM4RPHEAUQ .

-- Herbert Sauro, Professor University of Washington, Bioengineering 206-685-2119, www.sys-bio.org hsauro@uw.edu Books: http://books.analogmachine.org/

wrcannon commented 4 years ago

Thanks, Herbert.

wrcannon commented 4 years ago

Update: using a symbolic link for /Library/Frameworks/Python.framework/Versions/3.7/Python doesn't seem to work.

ImportError: dlopen(/Users/d3k137/.pyenv/versions/anaconda3-2019.10/lib/python3.7/site-packages/tecombine/_libcombine.so, 2): Library not loaded: /Library/Frameworks/Python.framework/Versions/3.7/Python Referenced from: /Users/d3k137/.pyenv/versions/anaconda3-2019.10/lib/python3.7/site-packages/tecombine/_libcombine.so Reason: no suitable image found. Did find: /Library/Frameworks/Python.framework/Versions/3.7/Python: file too short /Library/Frameworks/Python.framework/Versions/3.7/Python: file too short /Users/d3k137/.pyenv/shims/python: file too short /Users/d3k137/.pyenv/shims/python: file too short

luciansmith commented 4 years ago

It's possible that a pip install of tellurium simply won't work with anaconda--I know there are generally incompatibilities between anaconda and pip, and this might be one of them. I'll investigate further...

luciansmith commented 4 years ago

I tried installing anaconda on a mac and using 'pip install tellurium' from it, and while I didn't have your problems with it, I did have problems--'import tellurium' killed the kernel entirely. So my first guess is simply that tellurium is incompatible with anaconda on a mac.

hsauro commented 4 years ago

But we've had it running on anaconda before the most recent release. In fact that's how we released in the Mac via anaconda.

Herbert

wrcannon commented 4 years ago

I have an old mac running 10.14.6 Mojave. It has tellurium 2.1.3 loaded and seems to run it without any problems in anaconda3-4.3.0.

luciansmith commented 4 years ago

I will contact the developers who released tellurium 2.1.3 and find out what arcana they used to make them compatible.

hsauro commented 4 years ago

That means there is something wrong with the current installation files. Lucian, you could ask Kyle, who built the anaconda binaries, if there was something special you had to do to make it work on anaconda.

wrcannon commented 4 years ago

The version of tellurium that is giving me problems is 2.1.6. I'll try loading 2.1.3 since that worked on my old Mac.

wrcannon commented 4 years ago

It seems that the old mac is using tecombine version 0.2.2 while the new mac is using version 0.2.7.

wrcannon commented 4 years ago

I uninstalled tecombine 0.2.7 and installed 0.2.3. That seems to work. At least I didn't get the same error. I haven't tested any methods, though.

wrcannon commented 4 years ago

Looks like I lied. Didn't solve the problem.

luciansmith commented 4 years ago

You'd probably need the old versions of all the various dependencies, of which there are several. However, I did hear from Kyle with a solution, so I'm in the process of rebuilding everything to look up the Python libraries dynamically, which they weren't, which will hopefully solve your problem.

wrcannon commented 4 years ago

Yeah, that is the conclusion that I just came to also. Thanks for your help. I’ll wait to hear from you before trying anything else. Bill

luciansmith commented 4 years ago

OK! There are new versions of the following packages:

tecombine 0.2.7.1 tenuml 1.1.1.4 tesbml 5.18.1.1 tesedml 0.4.5.1

When installed by me on MacOS 10.15.6, everything worked in anaconda, and I was able to run functions from tellurium such as 'loada' (to load an antimony model). Previously, it would crash the kernel.

As far as I could tell, the other packages did not need to be updated. Let me know if it works for you!

wrcannon commented 4 years ago

Thanks Lucian! If I use pip install tellurium will these be automatically installed too?

luciansmith commented 4 years ago

If you uninstall everything or start from a clean version of Python, it will. If those libraries are already installed, it will think it's OK and not get the latest versions. You can also 'pip install --upgrade [list]'.