![](/img/trans.png)
[英]ffmpeg installation: pkg-config can't find package (using Homebrew)
[英]Fixing pkg-config using Apple silicon and homebrew
我在 M1 Mac 上使用 C++,我使用 Time Machine 將舊筆記本電腦的數據獲取到新筆記本電腦上。 舊筆記本電腦不是 Apple 硅 MacBook。 問題是我認為這搞砸了我的自制軟件安裝,因為它將默認位置從/usr/local/Cellar/
更改為/opt/homebrew/Cellar/
所以現在我有兩個自制軟件版本,因為我再次安裝了它拿到新筆記本電腦后(因為一開始沒有任何東西可以使用自制軟件,並且認為它沒有使用 Time Machine,哎呀)
直到最近我才經常使用自制軟件,所以我沒有注意到,但它使得使用外部庫編譯 C++ 程序變得非常困難,因為我需要的一切都在/opt/homebrew/Cellar/
中的新自制軟件安裝中,除了pkg-config
,當我在 bash 腳本或命令行中調用它時,它指向我的舊自制軟件安裝。
例如,我在新安裝的 homebrew 中有pugixml
,當我輸入pkg-config --libs --cflags pugixml
Package pugixml was not found in the pkg-config search path.
Perhaps you should add the directory containing `pugixml.pc'
to the PKG_CONFIG_PATH environment variable
No package 'pugixml' found
pkg-config
在舊的自制軟件安裝中找到庫就好了
我唯一的選擇是手動檢查新自制軟件安裝中的.pc
文件,並在我的 Makefile 中輸入標志。我不想這樣做。 確保pkg-config
正常工作的最佳方法是什么? 如果有人知道如何在命令行中使用新安裝的pkg-config
來解決我現在遇到的所有問題
編輯:我忘了提這個 - 當我使用which
命令並詢問它輸出的which pkg-config
/opt/homebrew/bin/pkg-config
時。 這有點令人困惑,因為這是新位置
使用官方卸載腳本刪除舊的(英特爾)安裝。
您必須使用以下命令使其可執行:
chmod +x uninstall.sh
並運行它
./uninstall.sh --path=/usr/local
然后在/opt/homebrew
下重新安裝新 M1 版本所需的一切。
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.