博客 / 詳情

返回

【解決方案】Building wheel for opencv-python:安裝卡頓的原因與解決方案。

當你 pip install opencv-pythonpip install opencv-contrib-python 時,命令行停在 Building wheel for opencv-python (PEP 517) ... - 似乎卡住了。其實,這並非程序假死,而是 OpenCV 這個龐大的 C++ library 在進行 compile,這個過程非常耗時。

為何安裝過程如此漫長?

這是因為 OpenCV 是一個龐大的 C++ librarypip 正在從源代碼 compilebuild Python wheel 包。compile 這種大型 C++ library 會大量消耗 CPU 和時間。

所以不如喝杯咖啡去,通常回來就裝好了。。
我就是直接下班了,第二天來了就搞定了

實際安裝耗時參考

實際耗時多久?這取決於 CPU 性能和環境:

  • 現代 CPU 通常需 10+ minutes
  • 老舊 CPU 可能超過 20min
  • Raspberry Pi 需長達 2 hours
  • Docker Container 環境下測試(compile from sources):

    • Mac Studio (Apple M2 Max) 耗時約 1400 seconds (23分鐘)。
    • CentOS Linux server 耗時約 3100 seconds (51分鐘)。

如何應對漫長等待?實用技巧助你掌握進度!

雖然 compile 時間無法縮短,但你可以通過以下方法優化體驗:

  1. 優化方案一:升級 pip,嘗試安裝預編譯的 wheel 包。
    pip install --upgrade pip。新的 pip 版本支持 manylinux2014 pre-built wheels,可避免本地 compile,顯著加快安裝。
  2. 優化方案二:保持耐心。
    如果升級 pip 後仍然在 build,説明可能沒有找到合適的 pre-built wheel。請耐心等待,它不會無限期運行。
  3. 優化方案三:使用詳細輸出模式,查看進度。
    通過 pip install opencv-python -vpip install opencv-python -vvvpip 會顯示 compile 過程的詳細日誌,讓你瞭解程序正在工作。這不加速安裝,但提供進度反饋。

總結

下次當你安裝 opencv-python 遇到長時間等待時,請記住:它沒有卡死,它只是在進行一項耗時巨大的 compile 工作。

  • 首先嚐試升級你的 pip
  • 耐心等待,或使用 -v 參數查看進度。

OpenCV 的功能強大,值得這份耐心。

user avatar
0 位用戶收藏了這個故事!

發佈 評論

Some HTML is okay.