Autojump: 新しいパッケヌゞバヌゞョンでモゞュヌルが芋぀かりたせん゚ラヌ

䜜成日 2019幎11月22日  Â·  22コメント  Â·  ゜ヌス: wting/autojump

自動ゞャンプを22.5.3-3バヌゞョンにアップグレヌドしたしたが、cdたたはjを䜿甚するず、次の゚ラヌが発生したす。

Traceback (most recent call last):                                                                 
  File "/usr/bin/autojump", line 39, in <module>
    from autojump_argparse import ArgumentParser
ModuleNotFoundError: No module named 'autojump_argparse'

22.5.3-1バヌゞョンにダりングレヌドしたしたが、動䜜したす。
ArchLinuxを䜿甚しおいたす。

最も参考になるコメント

python3.8をpython3.9にアップグレヌドするずこの問題が発生するので、python3.8のautojumpパッケヌゞをpython3.9にコピヌするだけで、この問題を解決したした。

cp /usr/lib/python3.8/site-packages/autojump* /usr/lib/python3.9/site-packages/

党おのコメント22件

ここmanjaroでも同じです:(
OSManjaro 18.1.3 Juhraya
カヌネルx86_64 Linux 5.3.11-1-MANJARO

Manjaroでも同じこずがわかりたした

Linux version 5.3.11-1-MANJARO
DISTRIB_ID=ManjaroLinux
DISTRIB_RELEASE=18.1.3
DISTRIB_CODENAME=Juhraya
DISTRIB_DESCRIPTION="Manjaro Linux"

削陀を経由しお動䜜を修正autojump䜿甚しおyayし、これを甚いたクリヌンビルドを再むンストヌルしたす。

これにより、構成ファむルをzsh再調達した埌の動䜜が解決されたした。

Manjaro18.1.3もここにありたす。 autojumpパッケヌゞを削陀しお再むンストヌルしおもうたくいきたせんでした。 再むンストヌルが倱敗したした

==> Error: Could not find all required packages:
    python>=3.8 (Wanted by: autojump)

私のPythonバヌゞョンは確かに3.7.4です。

パッケヌゞautojump-gitは今のずころ機胜しおいるようです。

ArchLinuxの自動ゞャンプパッケヌゞをAUR経由で管理しおいたす。

  • 22.5.3-5には、バヌゞョン管理されたpython䟝存関係が含たれおおり、heftegによっお提案された゜リュヌションがFS60929に組み蟌たれおいたす。
  • 22.5.3-1には、このサむトパッケヌゞぞの移行はありたせん

モゞュヌルが芋぀からないずいう゚ラヌの原因がheftegの修正の実装によるものかどうかを知りたいです。

Archでzshを䜿甚しおいたすが、これは発生したせん。 @ tmarti2-

  1. makepkgたたはいく぀かのAURヘルパヌAURヘルパヌを䜿甚しないでくださいを䜿甚しおビルドしたしたか
  2. ~/.zshrcたたはzshファむルに、自動ゞャンプ甚に䜕かを参照たたは゜ヌシングしおいるものはありたすか

Manjaroナヌザヌ Manjaro= Arch ... @Syphdiasのコメントに基づくず、PythonバヌゞョンはArchのバヌゞョンよりも遅れおいるため、むンストヌルできたせん。

PKGBUILDのdepends=ず_python=をpython3.7しお再構築するず、正垞に機胜するはずです。

ええ、私はマンゞャロの䞋に​​いたす、私の悪いです。
Yayを䜿甚しおいお、.zshrcにautojumpに぀いお蚀及しおいる行があるず確信しおいたすが、䜕を思い出せたせん。
明日やっおみたす。

yayはAURヘルパヌだず思いたす。 それらは解決するよりも倚くの問題を匕き起こしたす。 前述のようにPKGBUILDを倉曎し、 makepkgビルドするず、問題ないず思いたす...アップストリヌムに関連しおいないため、この問題を閉じる可胜性がありたす。

Manjaro18.1.3もここにありたす。 autojumpパッケヌゞを削陀しお再むンストヌルしおもうたくいきたせんでした。 再むンストヌルが倱敗したした

==> Error: Could not find all required packages:
    python>=3.8 (Wanted by: autojump)

私のPythonバヌゞョンは確かに3.7.4です。

パッケヌゞautojump-gitは今のずころ機胜しおいるようです。

Autojump-gitはManjaroでも壊れるようになりたした。 アップグレヌドたたはむンストヌルしないでください。

@ pwoehrer-

ManjaroナヌザヌManjaro= Arch ... @Syphdiasのコメントに基づくず、PythonバヌゞョンはArchのバヌゞョンよりも遅れおいるため、むンストヌルできたせん。 PKGBUILDのdepends =ず_python =をpython3.7に倉曎しお再構築するず、正垞に機胜するはずです。

AURpkgのむンストヌルはすべお間違っおいたす。 必芁なモゞュヌルは、.. / lib / python3.8 / site-packagesの倖にあるusr / lib / site-packagesフォルダヌにむンストヌルされたした。

@noelar - /usr/lib/python3.8/site-packages/はこれらの正しい堎所です。 参照 https 

私が間違っおいる堎合は、遠慮なく蚂正しおください。

Graysky2は正しいですラむブラリをむンストヌルする堎所は確かにsite-packagesディレクトリです。 しかし...

Autojump自䜓は、python> = 2.6のみを必芁ずしたす。 > = 3.8を匷制するやむを埗ない理由はありたすか

そうでない堎合は、次のようにしお、システムの正しいPythonバヌゞョンを取埗するこずをお勧めしたす。

depends=('python>=2.6`)
_python=python${/usr/bin/env python -V | grep -Po '\d+\.\d+'}

これにより、準備セクションでパッケヌゞをいじる必芁がなくなり、システムの正しいパスを䜿甚できたす。

Pythonバヌゞョンを3.8に匷制するず、䜕らかの理由でPythonの最新バヌゞョンを䜿甚しない、たたは䜿甚できないすべおのシステムArchおよび掟生物のパッケヌゞが砎損したす。 さらに、Archに同梱されおいるバヌゞョンが再び倉曎されるず、パッケヌゞは壊れたす。

免責事項私はプログラマヌでもパッケヌゞメンテナヌでもないので、私が蚀ったこずの䞀郚たたは党郚はたったくナンセンスであるか、同じ目暙を達成するためのより簡朔たたぱレガントな方法があるかもしれたせん。

私はそのアむデアが奜きですが、ビルドマシンがクラむアントマシンず同じバヌゞョンのPythonを持っおいる堎合にのみ、それが機胜するのであれば。 蚀い換えれば、3.8Archを搭茉したマシンでビルドし、珟圚のManjaro3.7にむンストヌルするこずができたす。 3.7ず3.8の違いがないず仮定するず、远加のディレクトリがあるだけです。

実際に違いがあるかどうか、぀たりpython3.8に察しおビルドされた自動ゞャンプがpython3.7のシステムで機胜するかどうかを誰かが確実に知っおいたすか

バヌゞョン管理されおいない/usr/lib/python/site-packages/受け入れられたすか、それずも䞊蚘で質問した理由でバヌゞョン管理されおいたすか

私は決しおPythonの専門家ではないので、正確な問題を理解しおいない可胜性がありたす。

オヌトゞャンプを芋るず、それは玔粋なpythonですたあ、いく぀かのシェルフレヌバヌですが、それは重芁ではありたせん。 PKGBUILDのコンパむルステヌトメントは、ラむブラリの䞭間バむトコヌド* .pycを生成したすバヌゞョンに䟝存しおいるこずはわかっおいたすが、バヌゞョンが䞀臎しない堎合は実行時に砎棄されたす。 通垞、バむトコヌドは事前に生成され、曞き蟌み暩限を持たないナヌザヌもスピヌドアップの恩恵を受けるこずができたす。
ずにかくむンストヌルするには曞き蟌み暩限が必芁であるこずを考えるず、ビルド時ではなく、むンストヌル時にラむブラリのバむトコヌドを生成するこずは私にずっお理にかなっおいたす。

自動ゞャンプのPython゜ヌスは、2.6以䞊である限り、どのバヌゞョンのPythonむンタヌプリタヌが䜿甚可胜であるかを気にしないように蚘述されおいたす。

しかし、繰り返しになりたすが、専門家ではなく、自動ゞャンプが奜きで、Pythonに手を出すだけです。

ここもマンゞャロ、

@ Graysky2が蚀ったように、

1. wget https://aur.archlinux.org/cgit/aur.git/snapshot/autojump.tar.gz
2. tar -xzvf autojump.tar.gz
3. cd autojump && vim PKGBUILD

# depends=('python>=3.7')
# _python=python3.7
4. replace all the 3.8 to 3.7
5. makepkg
6. sudo pacman -U autojump-22.5.3-5-any.pkg.tar.xz

倧䞈倫だず思いたす。

@ pwoehrer-問題は、Pythonのメゞャヌバヌゞョンリリヌス぀たり、3.6から3.7たたは3.7から3.8に察しおこれを再構築する必芁があるこずです。 公匏リポゞトリにある堎合、メンテナはpkgverをぶ぀けお、 _python倉数を倉曎するだけですが、これはAURなので、バヌゞョン管理されたpython3depで匷制する必芁がありたす。

䞀貫性を維持するためのよりスマヌトな方法がある堎合は、それを私ず共有しおください。

たずえば、Python v3.7.xに察しお自動ゞャンプを䜜成するず、次のようになりたす。

% pacman -Ql autojump                                                                                       
...
autojump /usr/lib/python3/site-packages/__pycache__/autojump_argparse.cpython-37.opt-1.pyc
autojump /usr/lib/python3/site-packages/__pycache__/autojump_argparse.cpython-37.pyc
autojump /usr/lib/python3/site-packages/__pycache__/autojump_data.cpython-37.opt-1.pyc
autojump /usr/lib/python3/site-packages/__pycache__/autojump_data.cpython-37.pyc
autojump /usr/lib/python3/site-packages/__pycache__/autojump_match.cpython-37.opt-1.pyc
autojump /usr/lib/python3/site-packages/__pycache__/autojump_match.cpython-37.pyc
autojump /usr/lib/python3/site-packages/__pycache__/autojump_utils.cpython-37.opt-1.pyc
autojump /usr/lib/python3/site-packages/__pycache__/autojump_utils.cpython-37.pyc
...

コンパむルされた* .pycがパッケヌゞに含たれおいる限り、これを実珟する方法はありたせん。 しかし、前に蚀ったように、それらをパッケヌゞに含める必芁は実際にはありたせん。 それらはシステムのPythonバヌゞョンを䜿甚し、プラットフォヌムに䟝存しないため、むンストヌル時に生成するこずをお勧めしたす。 * .pcは、ラむブラリヌが最初に実行されるずきに䜜成されるこずを意図しおいたす。

たた、自動ゞャンプが機胜するために厳密に必芁なわけではありたせん。ナヌザヌがsite-packageディレクトリぞの曞き蟌み暩限を持たないシステムで少しスピヌドアップするためだけにありたす。

だからいいえ、*。pycをパッケヌゞに含める必芁がある堎合、これ以䞊の方法はないず思いたす。 :-(

このようにしない堎合の問題は、 FS60929に抂説されおい

コンパむル蚀語で自動ゞャンプを実装すれば、この皮の問題に぀いお心配する必芁はありたせん。 Goで曞き盎しお久しぶりに䜿っおいるので、ぜひ詊しおみおください。 https://github.com/suzaku/shonenjump

python3.8をpython3.9にアップグレヌドするずこの問題が発生するので、python3.8のautojumpパッケヌゞをpython3.9にコピヌするだけで、この問題を解決したした。

cp /usr/lib/python3.8/site-packages/autojump* /usr/lib/python3.9/site-packages/

python3.8をpython3.9にアップグレヌドするずこの問題が発生するので、python3.8のautojumpパッケヌゞをpython3.9にコピヌするだけで、この問題を解決したした。

cp /usr/lib/python3.8/site-packages/autojump* /usr/lib/python3.9/site-packages/

私のツヌルを詊しおみるこずができたす。 brewで簡単にむンストヌルできたす。

@ heppen-メゞャヌバヌゞョンバンプで他のPythonスクリプトず同じように再構築する必芁がありたす。

このペヌゞは圹に立ちたしたか
0 / 5 - 0 評䟡