Bash

在自定義環境中從原始碼編譯 bash - 未讀取自定義配置文件

  • April 20, 2019

我剛剛為基於 arm 的 NAS 編譯bash 4.4.12。NAS 具有自定義環境。前綴/ffp/不是/usr/.

啟動新編譯的 bash/ffp/etc/profile/不會被讀取/獲取。這是一個./configure標誌,還是我需要在其他地方指定?

我的編譯配置。看起來像這樣:

#!/usr/bin/env bash
OLANG=$LANG
export LANG="C"

[ -x ./autogen.sh ] && ./autogen.sh

if [ -x ./configure ]; then
./configure \
--prefix=/ffp/ \
--bindir=/ffp/bin/ \
--sbindir=/ffp/sbin/ \
--sysconfdir=/ffp/etc \
--localstatedir=/ffp/var \
--libdir=/ffp/lib/ \
--includedir=/ffp/include/ \
--datarootdir=/ffp/share/\
--libexecdir=/ffp/libexec/
fi
make
make strip
make install

export LANG=$OLANG

它被硬編碼在pathnames.h.in

/* The default login shell startup file. */
#define SYS_PROFILE "/etc/profile"

你可以用你想要的替換它並重建。

引用自:https://unix.stackexchange.com/questions/347530