我正在使用 macOS。大多數時候,我可以通過 Homebrew 成功安裝組件。但有時由于一些網路問題,它不是那么穩定。另外,我發現一些組件是作為預編譯檔案提供的,例如
uj5u.com熱心網友回復:
Homebrew 通常將必要的可執行檔案鏈接到/usr/local/bin目錄,該目錄應該在您的$PATH. 因此,當您執行類似的命令時sdcc,您的 shell 將在$PATH目錄中尋找,當它查看時/usr/local/bin,它會找到sdcc,然后點擊鏈接并執行它。
某些包不執行此鏈接,這意味著您無法在不知道它們在哪里的情況下執行它們。您可以讓 Homebrew 告訴您軟體包的安裝位置:brew --prefix <formula>,<formula>軟體包名稱在哪里(例如brew --prefix sdcc)。可執行檔案通常位于bin子目錄下。例如,brew --prefix sdcc可能會告訴您類似/usr/local/opt/sdcc; 然后你可以呼叫sdccusing /usr/local/opt/sdcc/bin/sdcc,而不必在cd那里。你也可以直接/usr/local/opt/sdcc/bin放進你的$PATH,雖然我不推薦。另一種選擇是創建你自己的bin(我的在$HOME/.local/bin),把它放進去$PATH,然后鏈接到那里(ln -s <source> $HOME/.local/bin/)你希望你的 shell 容易找到的任何可執行檔案。
但是,對于 Homebrew 軟體包,我強烈建議您不要嘗試通過在 Homebrew 的域中安裝東西來自己模仿 Homebrew。您可能會混淆 Homebrew 并產生問題。相反,讓 Homebrew 來做吧。
如果您需要在與您下載的作業系統不同的作業系統上安裝軟體包,您可能需要首先找出目標(安裝)計算機的瓶標簽。例如,對于 Big Sur,它是
big_sur. 看brew info --json <formula>,bottle.stable.files你應該在下面找到瓶子標簽。在步驟 1 和 2 中使用--bottle-tag <tag>以選擇正確的作業系統。用于
brew fetch --deps <formula>下載(但不安裝)包,包括其依賴項。如果您使用該--verbose標志,Homebrew 會告訴您它下載每個檔案的位置。如果您還沒有使用過
--verbose并且仍然想知道下載的檔案在哪里:brew deps <formula>將列出它所依賴的所有包。如果需要編譯包,您可能還需要使用該--include-build選項。brew --cache <formula>將顯示下載包檔案的位置。如果您需要將包檔案復制到另一臺計算機,您應該找出 Homebrew 期望找到它的位置:
brew --cache --force-bottle <formula>在目標計算機上使用,然后將包檔案復制到那里。不要忘記對每個依賴包也這樣做。之后,
brew install <formula>將從快取中安裝。
此程序中唯一需要 Internet 連接的部分是第一步,brew fetch.
uj5u.com熱心網友回復:
對于 Unix(MacOS 是其家族成員)和類 Unix(例如 Linux)作業系統,控制此功能的是PATH環境變數。
要知道哪些檔案夾允許您在不使用cd它們的情況下運行程式或為程式名稱添加前綴./,您可以列印出以下值PATH:
echo $PATH
在我的機器上列印出來:
/usr/local/bin:/usr/bin:/bin:/usr/sbin:/sbin:/opt/X11/bin:/Users/slebetman/bin:/opt/homebrew/bin
有兩點需要注意:
該字串是一個檔案夾路徑串列,由
:有一條路徑列為
/opt/homebrew。大概這是 homebrew 安裝命令列程式的地方。
將您的程式/腳本復制到其中列出的任何檔案夾中,PATH您可以像使用任何已安裝/內置命令一樣使用它。這就是在 Unix 上安裝命令列程式的意思。就是這么簡單。
還有一點需要注意:我PATH的檔案夾中有/Users/slebetman/bin. 這是我自己的個人標準 - 可能不是我發明的,而是我在大學時代采用的標準 - 用于安裝我自己的程式。~/bin我所有的 Unix 和 Linux 機器上都有這個檔案夾。這是我保存我一生中撰寫或收集的個人腳本集合的地方。
擁有一個個人~/bin檔案夾很好,因為您不需要 sudo 權限來寫入它。此外,如果您購買了新的 PC/Mac,您只需將檔案夾復制到您的新機器上,您已經習慣的所有腳本現在都存在于新機器上。更好的是,您可以使用 github/gitlab/bitbucket 管理檔案夾git并將其與 github/gitlab/bitbucket 同步,以便輕松更新所有計算機。
由于PATH是標準環境變數,您可以輕松修改它以添加您自己的檔案夾。.profile只需在您的or .zshrcor檔案中添加以下內容.bashrc(取決于您的 shell),即可將您自己的bin檔案夾添加到PATH:
export PATH=$PATH:$HOME/bin
上面的命令只是說添加$HOME/bin并PATH匯出它,以便其他程式將繼承新PATH變數。
在您的情況下,您甚至可以執行以下操作:
export PATH=$PATH:/path/to/your/sdcc/bin
讓所有 SDCC 命令像常規命令一樣作業。
轉載請註明出處,本文鏈接:https://www.uj5u.com/shujuku/496698.html
上一篇:片段中的TextWatcher
下一篇:cp:將phpMyAdmin檔案夾復制到/Library/WebServer/Documents/時沒有這樣的檔案或目錄
