簡體   English   中英

ImportError: libpython3.8.so.1.0: 無法打開共享對象文件: 沒有那個文件或目錄

[英]ImportError: libpython3.8.so.1.0: cannot open shared object file: No such file or directory

當我嘗試運行我的 python 項目時,在某些情況下我會收到此錯誤:

  File "/usr/local/bin/AAA/camera_service/camera_service_main.py", line 6, in <module>
    from views.hires_camera_handler_view import hires_camera_handler_blueprint
  File "/usr/local/bin/AAA/camera_service/views/hires_camera_handler_view.py", line 7, in <module>
    from hires_camera_handler.hires_camera_handler import HiResCameraHandler
  File "/usr/local/bin/AAA/camera_service/hires_camera_handler/hires_camera_handler.py", line 3, in <module>
    from ids_peak import ids_peak
  File "/home/izx/anaconda3/envs/py38/lib/python3.8/site-packages/ids_peak/ids_peak.py", line 18, in <module>
    from . import _ids_peak_python_interface
ImportError: libpython3.8.so.1.0: cannot open shared object file: No such file or directory  

目標文件存在於 ~/anaconda3/envs/py38/lib

我可以通過添加 export LD_LIBRARY_PATH=~/anaconda3/envs/py38/lib 使代碼在我的終端中運行

但是,這里似乎存在更深層次的問題,因為我的更多項目的行為與其他 ubuntu 安裝不同。 我當然可以重新安裝 ubuntu。 但我想了解我在這里做錯了什么。

另外,上面的解決方案並沒有解決問題。 我仍然無法在 PyCharm 中運行我的測試,這將非常有用。 可能我可以以某種方式在我的 pycharm 運行中設置這個值,但是,設置路徑變量不起作用,我不知道該怎么做。

我嘗試了各種解決方案。 安裝 libpython3.8(已安裝),安裝 libpython3.8-dev(在 ubuntu 22.04 jammy 上不可用)。 我還向 bashrc 添加了值,但正如預期的那樣,這並沒有解決 PyCharm 的問題。

任何人都可以向我解釋到底是什么問題嗎? 為什么我的 conda 環境找不到自己的 lib 文件夾? 為什么將路徑添加到 LD_LIBRARY_PATH 有效? 我的 conda 環境在擁有自己的文件時需要共享文件,這對我來說沒有意義。 conda 查找共享文件的默認位置是什么? 我在很多系統上安裝了很多次anaconda,怎么會突然出現這種情況呢? 我知道這些問題很多,但我希望他們能給我理解這個問題所需的答案,而不是盲目地跟隨其他 SO 帖子。

謝謝

如果你的系統是Ubuntu,你可以像我一樣找到這個文件,復制到/lib//lib64/

  1. find / -name libpython3.8.so.1.0

截屏

  1. sudo cp /home/zhou/anaconda3/envs/paddlep/lib/libpython3.8.so.1.0 /usr/lib/

要么

  1. sudo cp /home/zhou/anaconda3/envs/paddlep/lib/libpython3.8.so.1.0 /usr/lib64/

總是值得閱讀 anaconda 的文檔: https://docs.conda.io/projects/conda-build/en/latest/resources/use-shared-libraries.html#shared-libraries-in-macos-and- linux

您必須通過在~/.bashrc中設置PYTHONPATH來告訴 python 在哪里可以找到其他模塊; 確保在更新~/.bashrc后重新加載/重新啟動終端或 IDE

例如

export PYTHONPATH="${PYTHONPATH}:/Users/<myuser>/project_root_folder_path"

請參閱將目錄永久添加到 PYTHONPATH?

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM