«Команда не найдена» после установки пакета pip oemer на MacOS

Я установил oemer, используя инструкции с этой страницы: https://github.com/BreezeWhite/oemer .

pip3 install oemer

(Мне пришлось использовать pip3 в моей системе.)

Затем запустил его, также согласно инструкциям на этой странице:

oemer ~/Pictures/trumpet.jpg
bash: oemer: command not found

Итак, я получаю «команда не найдена».

Я подумал, что, возможно, мне нужно добавить путь к моей $PATH, поэтому, чтобы найти местоположение oemer, я запустил

pip3 show oemer
Name: oemer
Version: 0.1.5
Summary: End-to-end Optical Music Recognition (OMR) system.
Home-page: https://github.com/BreezeWhite/oemer
Author: BreezeWhite
Author-email: [email protected]
License: License :: OSI Approved :: MIT License
Location: /Library/Frameworks/Python.framework/Versions/3.12/lib/python3.12/site-packages
Requires: matplotlib, onnxruntime, opencv-python, pillow, scikit-learn, scipy
Required-by:

и добавил /Library/Frameworks/Python.framework/Versions/3.12/lib/python3.12/site-packages в мой $PATH. Все еще не работало. Поэтому я явно запустил:

/Library/Frameworks/Python.framework/Versions/3.12/lib/python3.12/site-packages/oemer ~/Pictures/trumpet.jpg
bash: /Library/Frameworks/Python.framework/Versions/3.12/lib/python3.12/site-packages/oemer: is a directory

Ааа, oemer — это каталог, а не исполняемый файл.

Итак, мой вопрос: как мне запустить oemer или любой другой пакет, установленный pip, если уж на то пошло?

Я пытался:

pip3 /Library/Frameworks/Python.framework/Versions/3.12/lib/python3.12/site-packages/oemer
ERROR: unknown command "/Library/Frameworks/Python.framework/Versions/3.12/lib/python3.12/site-packages/oemer"

...и...

python3 /Library/Frameworks/Python.framework/Versions/3.12/lib/python3.12/site-packages/oemer
/usr/local/bin/python3: can't find '__main__' module in '/Library/Frameworks/Python.framework/Versions/3.12/lib/python3.12/site-packages/oemer'

Такие поисковые запросы, как «как запустить пакеты Python на Macos», оказываются пустыми, при этом большинство результатов показывают, как установить пакеты Python, как установить Python или как установить pip.

Почему в Python есть оператор "pass"?
Почему в Python есть оператор "pass"?
Оператор pass в Python - это простая концепция, которую могут быстро освоить даже новички без опыта программирования.
Некоторые методы, о которых вы не знали, что они существуют в Python
Некоторые методы, о которых вы не знали, что они существуют в Python
Python - самый известный и самый простой в изучении язык в наши дни. Имея широкий спектр применения в области машинного обучения, Data Science,...
Основы Python Часть I
Основы Python Часть I
Вы когда-нибудь задумывались, почему в программах на Python вы видите приведенный ниже код?
LeetCode - 1579. Удаление максимального числа ребер для сохранения полной проходимости графа
LeetCode - 1579. Удаление максимального числа ребер для сохранения полной проходимости графа
Алиса и Боб имеют неориентированный граф из n узлов и трех типов ребер:
Оптимизация кода с помощью тернарного оператора Python
Оптимизация кода с помощью тернарного оператора Python
И последнее, что мы хотели бы показать вам, прежде чем двигаться дальше, это
Советы по эффективной веб-разработке с помощью Python
Советы по эффективной веб-разработке с помощью Python
Как веб-разработчик, Python может стать мощным инструментом для создания эффективных и масштабируемых веб-приложений.
1
0
61
2
Перейти к ответу Данный вопрос помечен как решенный

Ответы 2

В поле Locationpip3 show oemer указано расположение библиотеки, а не скрипта. Скрипты находятся в /bin. Поэтому удалите /Library/Frameworks/Python.framework/Versions/3.12/lib/python3.12/site-packages из $PATH и добавьте /Library/Frameworks/Python.framework/Versions/3.12/lib/python3.12/bin (посмотрите, есть ли исполняемый файл oemr). Перезапустите терминалы/оболочки или обновите $PATH в работающих оболочках, затем запустите oemer скрипт.

Спасибо. К сожалению, в /Library/Frameworks/Python.framework/Versions/3.12/lib/pytho‌​n3.12/ нет каталога bin. Я проверил, не даст ли какой-нибудь другой каталог или файл подсказку, но ничего не нашел.

KevinHJ 04.05.2024 18:09

Из /Library/Frameworks/Python.framework/Versions/3.12/lib/pytho‌​n3.12 я сделал find . -name '*oemer*' и find . -name '*oemr*' (если это не опечатка в вашем ответе), но исполняемый файл не найден.

KevinHJ 04.05.2024 18:13

Оказывается, bin/oemer находится здесь: /Library/Frameworks/Python.framework/Versions/3.12/bin/

KevinHJ 04.05.2024 20:58
Ответ принят как подходящий

Бинарный файл oemer находится здесь:

/Library/Frameworks/Python.framework/Versions/3.12/bin/

А также другие скрипты Python, установленные с помощью pip.

Можно было бы добавить это к их $PATH в файле конфигурации оболочки, хотя я бы рекомендовал создать символическую ссылку на пути, который уже есть в вашем $PATH:

sudo ln -s /Library/Frameworks/Python.framework/Versions/3.12/bin/oemer /usr/local/bin/oemer

Другие вопросы по теме