ずいぶん前に、友人が私の Ubuntu に Racket 6.1 をインストールするのを手伝ってくれました。友人が何かしたのかはmake
わかりませんが、今ではホーム ディレクトリに Racket フォルダーがあります。
最近、Racket を 6.5 にアップグレードしたいと思い、Racket ppa を apt-get に追加してアップグレードに成功しました。しかし、ターミナルに racket と入力すると、バージョンはまだ 6.1 です。Drracket もまだ 6.1 です。
Setting up racket-common (6.5-20160429~trusty) ...
Installing new version of config file /etc/racket/config.rktd ...
Setting up racket (6.5-20160429~trusty) ...
xxx@laptop:~$ racket --version
Welcome to Racket v6.1.
を開く/etc/racket/config.rktd
と、racket ディレクトリが /usr/share/applications として指定されています。 を開くと/usr/share/applications
、 のアイコンがありDrRacket
、それをクリックすると 6.1 になります。
今何ができるでしょうか?
ありがとう、
アップデート:
これはラケットフォルダをゴミ箱に移動する前です
chi@laptop:~$ racket --version
Welcome to Racket v6.1.
chi@laptop:~$ which racket
/home/chi/racket/bin/racket
chi@laptop:~$ echo $PATH
/home/chi/racket/bin:/home/chi/bin:/usr/local/sbin:/usr/local/bin:/usr/sbin:/usr/bin:/sbin:/bin:/usr/games:/usr/local/games
これはゴミ箱に移動した後です
chi@laptop:~$ racket --version
bash: /home/chi/racket/bin/racket: No such file or directory
chi@laptop:~$ which racket
/usr/bin/racket
chi@laptop:~$ echo $PATH
/home/chi/racket/bin:/home/chi/bin:/usr/local/sbin:/usr/local/bin:/usr/sbin:/usr/bin:/sbin:/bin:/usr/games:/usr/local/games
ラケット フォルダをゴミ箱から復元すると、以前の状態に戻ります。何か提案はありますか?
ありがとう、
答え1
まず、コマンドラインの呼び出しに注目しましょう。PATH には、まず古いインストール (ホーム ディレクトリにあるもの) のパスが含まれていると思います。あるいは、単にやり直しをするだけの問題かもしれません。私の提案は次のとおりです。
- 新しいターミナル ウィンドウを開きます (パスが更新されていることを確認する 1 つの方法)。
- 実行して
racket --version
、まだ 6.1 であることを確認します。 which racket
を実行して、実行している racket のバージョンを確認します。ホーム ディレクトリにインストールされているバージョンだと思います。- を実行して
echo $PATH
、PATH がどのようになっているかを確認します。私の推測では、ホーム ディレクトリにインストールされたものへのパスは、PPA を使用してインストールされたものよりも前に出現するはずです。
もし私が想定したすべてが真実であれば、racket
ホーム ディレクトリ内のディレクトリを削除することで (または、より保守的に、/tmp
必要に応じて元に戻せるようにディレクトリを移動することで)、この問題を解決できる可能性があります。
ホーム ディレクトリから racket を削除した後、シェル ( bash
) にコマンドが以前の場所から消えたことを伝える必要があります。これは、bash シェルがすでに使用したコマンドの場所を記憶しているためです。このコマンド ハッシュ テーブルを削除するには、次を実行するhash -r
か、既存のシェル インスタンスを閉じて新しいターミナル ウィンドウを開きます。