[Review Board] 設定 Perforce 檔案庫時,出現 P4 not installed 錯誤訊息

[Review Board] 設定 Perforce 檔案庫時,出現 P4 not installed 錯誤訊息

今天想要把 Review Board 加上 Perforce 的支援,

不過奇怪的是,只要 CVS 的類型選擇 Perforce 儲存之後,

就會出現 The Python module “P4” is not installed 的錯誤訊息:

 

這個 P4 模組是什麼東西呢?

上網查了一下,資訊不算很多,

不過有查到 p4python 這個關鍵字。

看起來是缺少了 p4python 這個 python 模組…

 

修改 Dockerfile,在 docker image 中用 pip 安裝 p4python 模組,

接著重新啟動 docker container…

怎麼還是一樣的錯誤??

看了一下 reviewboard.log,並沒有什麼相關的訊息可以參考…

 

試著直接在 python 中 import P4,

結果出現奇怪的錯誤訊息,說找不到 SSL_library_init:

>>> import P4
/opt/venv/local/lib/python2.7/P4API.so: undefined symbol: SSL_library_init

 

再查了一下,似乎是 p4python 跟最新版本的 libssl 有一些相容性問題,

但目前還沒有新版的 p4python 可以解決。

有人說可以自己重編譯 p4python,不過這樣工程有點浩大…

 

後來試出一個方法~

pip 預設安裝的 p4python 是 2018.2.1743033 版本,

到 Pypi 的官網上看,它前一版是 2017.2.1615960,

於是用 pip 改安裝這一版看看:

pip install p4python==2017.2.1615960

 

結果,問題就消失了!

可能是舊版的 p4python 不會去使用到 libssl 的那個 API 吧?

不過這個解法不曉得會不會在 libssl 升級之後,

又出現別的問題囉~

 

參考資料:

Unable to add Perforce Repo. – Google Groups

P4Python undefined symbol SSL_library_init – APIs – Perforce Forums

Installing p4python on Fedora Core 29 – APIs – Perforce Forums

Bitnami Review Board Stack-Add Repository Issue(with Perforce) – General – Bitnami Community

(本頁面已被瀏覽過 285 次)

發佈留言

發佈留言必須填寫的電子郵件地址不會公開。 必填欄位標示為 *

這個網站採用 Akismet 服務減少垃圾留言。進一步了解 Akismet 如何處理網站訪客的留言資料