AttributeError: dlsym (rtld_default, run): символ не найден - ЗначениеPython

Программы на Python
Anonymous
 AttributeError: dlsym (rtld_default, run): символ не найден - Значение

Сообщение Anonymous »

Я пытаюсь использовать пакет Pymultinest. Полный текст ошибки, с которым я сталкиваюсь, - это AttributeError: DLSYM (rtld_default, run): символ не найден в функции __getItem __ () в ctypes/__ init __. Py . Я включу больше текста и кода ниже, но я в основном пытаюсь понять, о чем говорит мне эта ошибка - мой Google Fu, по -видимому, не хватает, и вопросы StackexChange, которые я видел, связанные с этой ошибкой, казалось, гипер -ориентированные при решении конкретный экземпляр этой ошибки. Итак - что эта ошибка, пытающаяся сказать мне, неверна? < /P>

больше контекста. Я пытаюсь выполнить пакет Pymultinest (PMN), как указано в документации PMN. PMN, по сути, обертка Python для программы C. Запуск PMN требует немало кода настройки (необходимо определить несколько вспомогательных функций, а также множество переменных), которые я не включаю здесь по умолчанию, потому что это ... много, но я могу, если это необходимо. Строка выполнения PMN, которую я использую, < /p>

Код: Выделить всё

pmn.run(Loglike, Prior, ndims, n_live_points=1000, n_params=n_params, outputfiles_basename='./'+ProjectName+'/temp_', resume=False, verbose=True)< /code> < /p>

Это возвращает ошибку Traceback < /p>

File "[redacted]", line 139, in 
pmn.run(Loglike, Prior, ndims, n_live_points=1000, n_params=n_params, outputfiles_basename='./'+ProjectName+'/temp_', resume=False, verbose=True)
File "/Library/Frameworks/Python.framework/Versions/3.8/lib/python3.8/site-packages/pymultinest/run.py", line 254, in run
lib.run(*args_converted)
File "/Library/Frameworks/Python.framework/Versions/3.8/lib/python3.8/ctypes/__init__.py", line 386, in __getattr__
func = self.__getitem__(name)
File "/Library/Frameworks/Python.framework/Versions/3.8/lib/python3.8/ctypes/__init__.py", line 386, in __getitem__
func = self._FuncPtr((name_or_ordinal, self))
AttributeError: dlsym(RTLD_DEFAULT, run): symbol not found
Если это помогает, я определил, что имя перемещается через себя .__ getitem __ () и, следовательно, в Self._funcptr ( ) , запускается . Хотя это может быть очевидно, глядя на сообщение атрибута. Прошлым летом я смог выполнить PMN на этой машине, используя очень похожий код, который я использую сейчас. В настоящее время я пытаюсь оптимизировать свой код с прошлого лета, поэтому я удивлен, что это не просто «работа». < /P>

Пока мои попытки исправить это были в основном сосредоточены на переустановке PMN. Я сделал чистую установку (PIP DINSTALL/PIP установка) пакета PMN, а также после документации PMN для восстановления части C пакета. Я включил исходные каталоги программного обеспечения C в мои переменные пути - или, по крайней мере, я пытался, я предполагаю, что был успешным, но я не очень хорошо знаком с Mac. < /P>

В конечном счете, я просто хотел бы понять, что Python говорит мне с этой ошибкой лучше. Это поможет мне направить свои собственные попытки решить проблему. Я подозреваю, что он говорит: «Мы не знаем, где найти эту команду« запустить », которую вы просите», и в этом случае мне нужно выяснить, почему изменения переменной моего пути не работают. Я на правильном пути?

Подробнее здесь: https://stackoverflow.com/questions/619 ... nd-meaning

Вернуться в «Python»