✅ ROOT権限なしでFreeBSD13にexpectをインストールする方法

ソースコードからインストール
環境変数の設定
  • PATHに$HOME/local/binを追加。
  • コンパイル用の環境変数(LDFLAGS、LD_LIBRARY_PATH)の設定。

% cd

% vi .cshrc
% cat .cshrc
...
...
set path = ($HOME/bin $HOME/local/bin /sbin /bin /usr/sbin /usr/bin /usr/local/sbin /usr/local/bin)
...
...
setenv  LDFLAGS          "-L. -L$HOME/local/lib"
setenv  LD_LIBRARY_PATH  .:$HOME/local/lib
...
...
%

% source ~/.cshrc
                
ソースコードのダウンロードと解凍

ExpectにはTclも必要。


% mkdir -p $HOME/local/src
% cd $HOME/local/src
% wget https://sourceforge.net/projects/expect/files/Expect/5.45.4/expect5.45.4.tar.gz
% wget https://sourceforge.net/projects/tcl/files/Tcl/8.6.13/tcl8.6.13-src.tar.gz

% tar xzf expect5.45.4.tar.gz
% tar xzf tcl8.6.13-src.tar.gz
                
Tclインストール

% cd $HOME/src/tcl8.6.13/unix
% ./configure --prefix=$HOME/local
% make
% make install

% cd $HOME/local/bin
% ln -s tclsh8.6 tclsh

% ls -1 $HOME/local
bin
include
lib
man
share
src
%
                
Expectインストール

% cd $HOME/local/src/expect5.45.4
% ./configure --prefix=$HOME/local
% make
---
エラーが発生している...多分、何らかの不具合か...

/usr/local/bin/ld: cannot find -lexpect5454
collect2: error: ld returned 1 exit status
*** Error code 1

以下、何とか対応...
---

% ln -s libexpect.so.1 libexpect5454.so
% make
% make install
% cp $HOME/local/src/expect5.45.4/libexpect5454.so $HOME/local/lib/

% expect -v
expect version 5.45.4
%
                
後掃除

% cd $HOME/loal/src
% rm *.gz
% rm -rf expect5.45.4 tcl8.6.13
                
備考

EXpectとTclをインストールしただけですがいろいろとコマンドが生成されています。


% ls $HOME/local/bin
autoexpect              expect                  multixterm              tclsh                   tkpasswd
autopasswd              ftp-rfc                 passmass                tclsh8.6                unbuffer
cryptdir                kibitz                  rftp                    timed-read              weather
decryptdir              lpunlock                rlogin-cwd              timed-run               xkibitz
dislocate               mkpasswd                sqlite3_analyzer        tknewsbiff              xpstat
%
                
マニュアル確認
  • % man expect
  • % man tclsh
 
🔝