[問題] Linux下Python配置與PyQT

作者: st1009 (前端攻城師)   2018-07-20 00:25:52
希望可以請教一下板上大大們,一些問題,
並且希望大大們指點我該如何學習讓自己能解決這些問題<(_ _)>
先說一下目標,在下希望可以創建一個圖形化的程式打包來,到windows上跑,
讓windows上的用戶不用會python也可以使用我的程式,
然後因為我使用tkinter的能力不佳,畫面有點醜,經過推荐,想要嘗試用PyQT5做介面。
我的系統是Linux Mint 18.2
python版本舊的是3.5.2 新的是3.6.0
事情經過是這樣的,我clone了一個使用PyQT5的程式,試圖執行並且打包他,
但執行是跳錯了,
錯誤訊息是 ImportError: /usr/local/lib/python3.5/dist-packages/PyQt5/QtCore.so:
undefined symbol: PySlice_AdjustIndices
經過一些Google之後,我嘗試下載mu-editor,但是並沒有好轉,
我猜測可能python3.5的毛比較多,所以嘗試下載3.6,
結果對於系統不算很了解的我下載3.6之後問題更多了QAQQQ
我設定不知道哪裡出問題,執行時還是跳undefined symbol: PySlice_AdjustIndices
然後我發現我舊的檔案用pyinstaller打包時跳錯誤訊息
File "/usr/local/lib/python3.5/dist-packages/PyInstaller/utils/hooks/qt.py",
line 39, in qt_plugins_dir
raise Exception('Cannot find {0} plugin directories'.format(namespace))
Exception: Cannot find PyQt5 plugin directories
可是我嘗試打包的檔案並沒有包含PyQt5!
我發現執行python3 -V 的時候是Python 3.6.0
但如果我用絕對位址/usr/bin/python3 -V會是Python 3.5.2
我不懂為何會這樣...不是執行的shell會在/usr/bin裡嘛?
如果不是?那麼我現在執行的python3又是再哪裡?我該如何設定他?
總結:
我有3個主要問題
1.我該怎麼讓我linux上的PyQT跑起來?
2.為甚麼我沒有包含PyQT的程式打包跟著報錯?我該如何修理
3.python執行的shell我該如何設定?現在好混亂...
作者: s860134 (s860134)   2018-07-20 00:29:00
1. 我不熟 2. 我猜是你 import 相依到了?3. 這個是很常見得問題,熟 bash 你可以用 whichshell 底下是看 $PATH 的順序依序找目錄底下 "python"名稱的可執行檔誰排在前面誰就先被找,所以你改個 path 或是指定絕對路徑可以解決,根治方法很多,通常會推薦 venvubuntu 有包一些工具可以找檔案 whereis , whichpythonwhereis python 應該就會依序列出你的python 有幾個放在 $PATH 路徑下惹
作者: HenryLiKing (HenryLiKing)   2018-07-20 01:00:00
我用過 但是我的萬解是用 anaconda耶
作者: s860134 (s860134)   2018-07-20 01:05:00
ls -al /usr/local/bin/python3 看一下他的 soft-link不是,他找到第一個是 /usr/local/bin/python3跟你路徑長短沒關係,而是誰在 PATH 前面https://imgur.com/rdDtn25以你的例子 第一個會先找 /usr/local/cuda-8.0/bin但是想必 cuda 理面沒有放叫作 "python3" 的檔案所以他會再找 /home/littlewind/bin以此類推 直到找到第一個目錄底下有叫做 python3 的檔案而且必須有執行權限只要記住,電腦很笨,他不會知道你哪裡放有 python3他一定是照著一個規則去找特定目錄下的 python3

Links booklink

Contact Us: admin [ a t ] ucptt.com