
我正在安裝nginx
伺服器,我需要分發它。因此最終用戶可以從任何目錄運行。我的nginx
可執行檔是用我在編譯時給出的路徑進行硬編碼的。
如何讓這個便攜?
編輯:
當我對該nginx
執行檔進行更改時,它不會啟動,而是拋出錯誤,例如分段錯誤核心已轉儲。請幫忙解決這個問題。
答案1
我想到了四種選擇:-
- 對應用程式進行編碼以使用相對目錄,並指定應從資料目錄樹的頭部啟動它。
- 指定設定環境變數來定義資料位置(
$HOME
如果您不想定義新的明確變量,可以使用目錄中的相對路徑)。 - 使用
.app
或.config/app
設定檔來指定位置。 - 程式碼具有固定的目錄路徑,並指定在此位置建立符號連結以指向真實位置。
至於您的分段錯誤,似乎您錯過了錯誤檢查(例如確保檔案指標不為空)。