Date: Mon, 4 Jan 2016 21:31:50 +0000 From: Olivier Duchateau <duchateau.olivier@gmail.com> To: "Mikhail T." <mi+thun@aldan.algebra.com> Cc: python@FreeBSD.org Subject: Re: numpy would not load: libgcc_s vs. libgfortran Message-ID: <20160104213150.4e47df03583e70cef356a51d@gmail.com> In-Reply-To: <568AC046.8040300@aldan.algebra.com> References: <568AA168.5090400@aldan.algebra.com> <20160104193453.2ae62e7a01ab0a0cd845e296@gmail.com> <568AC046.8040300@aldan.algebra.com>
next in thread | previous in thread | raw e-mail | index | archive | help
On Mon, 04 Jan 2016 13:56:06 -0500 "Mikhail T." <mi+thun@aldan.algebra.com> wrote: > On 04.01.2016 14:34, Olivier Duchateau wrote: > > Can you post the complete backtrace? > > > Well, here goes: > > ___________________________________ ERROR at setup of > TestAPI.test_can_post_image ____________________________________ > Traceback (most recent call last): > File > "/spare/usr/ports/www/py-mediagoblin/work/mediagoblin-0.8.1/mediagoblin/tests/conftest.py", > line 33, in test_app > return tools.get_app(request) > File > "/spare/usr/ports/www/py-mediagoblin/work/mediagoblin-0.8.1/mediagoblin/tests/tools.py", > line 132, in get_app > 'config:' + new_paste_config) > File "/opt/lib/python2.7/site-packages/paste/deploy/loadwsgi.py", > line 247, in loadapp > return loadobj(APP, uri, name=name, **kw) > File "/opt/lib/python2.7/site-packages/paste/deploy/loadwsgi.py", > line 272, in loadobj > return context.create() > File "/opt/lib/python2.7/site-packages/paste/deploy/loadwsgi.py", > line 710, in create > return self.object_type.invoke(self) > File "/opt/lib/python2.7/site-packages/paste/deploy/loadwsgi.py", > line 146, in invoke > return fix_call(context.object, context.global_conf, > **context.local_conf) > File "/opt/lib/python2.7/site-packages/paste/deploy/util.py", line > 55, in fix_call > val = callable(*args, **kw) > File > "/spare/usr/ports/www/py-mediagoblin/work/mediagoblin-0.8.1/mediagoblin/app.py", > line 362, in paste_app_factory > mgoblin_app = MediaGoblinApp(mediagoblin_config) > File > "/spare/usr/ports/www/py-mediagoblin/work/mediagoblin-0.8.1/mediagoblin/app.py", > line 107, in __init__ > setup_plugins() > File > "/spare/usr/ports/www/py-mediagoblin/work/mediagoblin-0.8.1/mediagoblin/init/plugins/__init__.py", > line 56, in setup_plugins > __import__(plugin_module) > File > "/spare/usr/ports/www/py-mediagoblin/work/mediagoblin-0.8.1/mediagoblin/media_types/audio/__init__.py", > line 18, in <module> > from mediagoblin.media_types.audio.processing import > AudioProcessingManager, \ > File > "/spare/usr/ports/www/py-mediagoblin/work/mediagoblin-0.8.1/mediagoblin/media_types/audio/processing.py", > line 30, in <module> > from mediagoblin.media_types.audio.transcoders import ( > File > "/spare/usr/ports/www/py-mediagoblin/work/mediagoblin-0.8.1/mediagoblin/media_types/audio/transcoders.py", > line 23, in <module> > from mediagoblin.media_types.audio import audioprocessing > File > "/spare/usr/ports/www/py-mediagoblin/work/mediagoblin-0.8.1/mediagoblin/media_types/audio/audioprocessing.py", > line 26, in <module> > import numpy > File "/opt/lib/python2.7/site-packages/numpy/__init__.py", line > 180, in <module> > from . import add_newdocs > File "/opt/lib/python2.7/site-packages/numpy/add_newdocs.py", line > 13, in <module> > from numpy.lib import add_newdoc > File "/opt/lib/python2.7/site-packages/numpy/lib/__init__.py", > line 8, in <module> > from .type_check import * > File "/opt/lib/python2.7/site-packages/numpy/lib/type_check.py", > line 11, in <module> > import numpy.core.numeric as _nx > File "/opt/lib/python2.7/site-packages/numpy/core/__init__.py", > line 14, in <module> > from . import multiarray > ImportError: /lib/libgcc_s.so.1: version GCC_4.6.0 required by > /opt/lib/gcc48/libgfortran.so.3 not found > > > I already encountered this error, and if often due to a wrong python import (cycling import). > > The script is from MediaGoblin's own self-tests. I doubt, they have a > cycling import -- supposedly, goblin-developers use them regularly... > Thanks! Yours, > > -mi > I quickly check the source (and no time today), but I often observed this problem, when modules loaded from sys.modules (see mediaglobin/init/plugins/__init__.py). It's not easy to debug. The best way (and time consuming) is to load each modules (and submodules) up to mediagoblin/media_types/audio/transcoders.py in comparison to the output of sys.modules (it's dictionary). For example I easily fixed circular import for a new port, called Flowblade (it's a video editor, not yet in ports tree), but I can't find solution for Pitivi (another video editor). After all it's perhaps Numpy's problem, but nobody reported this issue. -- olivier
Want to link to this message? Use this URL: <https://mail-archive.FreeBSD.org/cgi/mid.cgi?20160104213150.4e47df03583e70cef356a51d>