web-dev-qa-db-ja.com

ヨーグルトが間違った場所を探しているのはなぜですか(pacmanは機能します)?

Yaourtとpackage-queryを削除し、pacmanをv4.0.1にアップグレードし、AURから最新のpackage-queryとyaourtを再インストールした後、yaourtを使用できなくなりました。それは私に言います:

Unable to open file: /usr/local/etc/pacman.conf

/ etcではなく、なぜ今そこに表示されているのかわかりません。その間、pacmanは正常に動作しています。 pacman.confへのシンボリックリンクを作成すると、代わりに次のエラーが発生します。

failed to initialize alpm library (could not find or read directory)

私の$ PATHは次のとおりです。

/usr/local/bin:/usr/bin:/bin:/usr/local/sbin:/usr/sbin:/sbin:/usr/bin/vendor_Perl:/usr/bin/core_Perl

インストール、再インストール、yaourtスクリプトファイルの前にyaourt PKGBUILDを調べてみましたが、疑わしいものは見つかりませんでした。何を探すべきかわからない、何が起こったのでしょうか?

編集:解決策を見つけました:/ usr/binは$ PATHの/ usr/local/binの前にある必要があります。

8
Toerndev

Yaourtは$ PATHで最初のエントリを使用しているようです。したがって、/usr/bin/usr/local/binの前にある必要があります。

/etc/profileでこれを変更すると、問題が解決しました。

9
Toerndev

私も同じ問題を抱えていました。問題は(他の回答で述べられているように)実行すると次のようになります。

[linux]$ echo $PATH
[linux]$ /usr/local/sbin:/usr/local/bin:/usr/bin .....

/ usr/local/sbinと/ usr/local/binが最初に表示されるため、検索されるプログラムはこれらの場所から取得されることに注意してください(存在する場合)。

/ usr/local/binを調べて、そこでpackage-queryが表示されるかどうかを確認してください。可能であれば、これが原因で問題が発生しているので、そこにインストールしないでください。そう。直そう…….

ヨーグルトを削除することから始めます:

Sudo pacman -R yaourt
checking dependencies...

Packages (1) yaourt-1.9-1

Total Removed Size:  0.81 MiB

:: Do you want to remove these packages? [Y/n] y
:: Processing package changes...
(1/1) removing yaourt                                                                                                             [############################################################################] 100%
:: Running post-transaction hooks...
(1/1) Arming ConditionNeedsUpdate...

次に、package-queryを削除します。

[linux]$ Sudo pacman -R package-query
checking dependencies...

Packages (1) package-query-1.9-3

Total Removed Size:  0.08 MiB

:: Do you want to remove these packages? [Y/n] y
:: Processing package changes...
(1/1) removing package-query                                                                                                      [############################################################################] 100%
:: Running post-transaction hooks...
(1/1) Arming ConditionNeedsUpdate...

最後に、漂遊パッケージクエリバイナリを手動で削除します。

[linux]$ Sudo rm -rf /usr/local/bin/package-query

ここで、ここに記載されている手順を使用してyaourt(およびpackage-query)を再インストールします。 https://archlinux.fr/yaourt-en

そして、あなたは行ってもいいはずです。

1
Matt Conway

空の--prefixを使用してpackage-queryを再インストールします:./configure --prefix=

1
Adrian