我以普通用戶登入。我應該使用:
./configure && make && make install
或者
sudo ./configure && sudo make && sudo make install
或者
./configure && make && sudo make install
安裝軟體包時。
有人可以解釋一下這些差異嗎?
我希望所有用戶都能夠使用它。
答案1
你的第三個版本是正確的,./configure && make && sudo make install
。製作和設定可以作為普通使用者完成,因為您不會嘗試在系統目錄中寫入文件,make install
通常會嘗試將二進位檔案複製到 /usr/bin 或 /bin ,這需要 root 存取權才能寫入。
答案2
您需要最新版本:
./configure && make && sudo make install
配置和製作可以在本機資料夾中進行,但您需要 root 權限才能安裝。該命令完成了它。
確保您正在安裝的應用程式尚未位於套件管理器中。通常,使用系統的預編譯軟體比嘗試尋找所有依賴項來編譯某些內容要容易得多。
答案3
您應該使用有效的最少權限。這通常是:
./configure && make && sudo make install
答案4
&& 由您的原始 shell 解析。將一個 sudo 放在前面只會影響配置。最後一個選項最有意義,因為它將作為普通用戶進行配置和編譯,然後安裝結果供每個人使用。
需要注意的是,某些設定腳本會偵測到它們正在以非 root 使用者身分執行,並建立安裝到 $HOME 或類似檔案中的 makefile。在這種情況下,您還需要「sudo ./configure」。如果您以root身分執行configure或make,您將會在常規使用者目錄中遇到一些root擁有的檔案的煩惱。