Я создал модуль расширения Python C ++ ext_py, который зависит от двух базовых разделяемых библиотек
ext_py.so (модуль расширения boost.python, определяющий функции, предоставляемые Python) и extensions.so (расширение чистого c ++). Я указал их местоположение в LD_LIBRARY_PATH.
Если я запускаю ipython в командной строке, я могу без проблем импортировать ext_py, и все работает как положено. Если я пытаюсь сделать то же самое в PyCharm (версия для сообщества) с помощью консоли ipython, я получаю
In[2]: import ext_py
Traceback (most recent call last):
File ".../lib/python2.7/site-packages/IPython/core/interactiveshell.py", line 2883, in run_code
exec(code_obj, self.user_global_ns, self.user_ns)
File "<ipython-input-2-fa927ffef473>", line 1, in <module>
import ext_py
File "/opt/jetbrains/pycharm-community-4.0.2/helpers/pydev/pydev_import_hook.py", line 21, in do_import
module = self._system_import(name, *args, **kwargs)
File ".../lib/python2.7/site-packages/ext_py/__init__.py", line 1, in <module>
from ext_py import *
File "/opt/jetbrains/pycharm-community-4.0.2/helpers/pydev/pydev_import_hook.py", line 21, in do_import
module = self._system_import(name, *args, **kwargs)
ImportError: extensions.so: cannot open shared object file: No such file or directory
Поэтому по какой-то причине PyCharm не может найти эти переменные, даже если он работает в терминале. Я указал LD_LIBRARY_PATH в терминале, но я ожидал, что это будет принято глобально.
Какие-нибудь мысли?
Ура, Майк
Задача ещё не решена.