Ошибка установки python-snappy: snappy-ch: Нет такого файла или каталога
Я использую amazon ec2 ubuntu 11.04 server
sudo pip install python-snappy
также я попытался скачать пакет и ввел "sudo python setup.py install"
Я получил ошибку:
running build
running build_ext
building 'snappy' extension
gcc -pthread -fno-strict-aliasing -DNDEBUG -g -fwrapv -O2 -Wall -Wstrict-prototypes -fPIC -I/usr/include/python2.7 -c snappymodule.cc -o build/temp.linux-x86_64-2.7/snappymodule.o
cc1plus: warning: command line option ‘-Wstrict-prototypes’ is valid for Ada/C/ObjC but not for C++ [enabled by default]
snappymodule.cc:31:22: fatal error: snappy-c.h: No such file or directory
compilation terminated.
error: command 'gcc' failed with exit status 1
Как я мог избавиться от этой ошибки?
источник: https://github.com/andrix/python-snappy
14 ответов
Вам нужна библиотека Snappy C
Затем вы должны установить оболочку Python-Snappy.
Кажется, вы не установили библиотеку Snappy-C
Попробуй.. как уже товарищ прокомментировал твой пост
Вы можете установить библиотеку Snappy C с помощью следующих команд:
DEB на основе: sudo apt-get install libsnappy-dev
RPM на основе: sudo yum install libsnappy-devel
Brew: brew install snappy
По репо
Как установить его на Mac OS X?
Несколько раз сообщалось (проблемы № 7 и № 23), что невозможно правильно установить библиотеку в Mac. Процедура должна быть,
$ brew install snappy # snappy library from Google
$ CPPFLAGS="-I/usr/local/include -L/usr/local/lib" pip install python-snappy
У меня были некоторые проблемы с быстрой установкой. Наконец загрузили материал для предварительной сборки, предложенный https://www.lfd.uci.edu/~gohlke/pythonlibs/ и все прошло хорошо. (Неофициальные двоичные файлы Windows для пакетов расширения Python)
- Вы загружаете snappy lib здесь: https://code.google.com/p/snappy/
- Извлеки это
- Установка с помощью командной строки: $: ./configure $: make $: make install
- Установить python-snappy: $: pip установить python-snappy
Для Oracle Linux с Python 3.X:
вам нужно включить репозиторий optional_latest в качестве первого шага,
использовать для включения следующего репо
$ yum-config-manager --enable ol7_optional_latest
Репо "ol7_optional_latest" будет включено для поиска yum.
затем установите пакеты, используя,
$ yum -y install gcc gcc-c++ snappy snappy-devel
затем с помощью pip установите пакет python-snappy,
$ pip3 install python-snappy
Вам нужно проверить вывод для
rpm -q snappy-devel
Если его нет, установите его с помощью этой команды:
yum install snappy-devel
Было много проблем с установкой на El Capitan, с ошибкой, сообщавшей, что файл snappy-ch не найден.
Пришлось установить snappy из файла tar.gz https://github.com/google/snappy/releases/download/1.1.3/snappy-1.1.3.tar.gz
распусти и беги
./configure
make
make install
это поместит заголовочный файл в /usr/local/include
Затем необходимо установить FLAGS для компилятора cc, чтобы найти файл заголовка:
export DYLD_LIBRARY_PATH=/usr/local/include
export CPPFLAGS="-I/usr/local/include/snappy-c.h"
export CFLAGS="-I/usr/local/include/snappy-c.h"
export CXXFLAGS="-I/usr/local/include/snappy-c.h"
export LDFLAGS="-L/usr/local/lib"
а затем я установил python-snappy из файла яйца https://pypi.python.org/packages/b1/fe/1d632cdac5dbb5ce84db778af7f733eb469130d8cf4c02f6cd9057a96768/snappy-2.4.1-py2.7-macosx-10.5-intel.egg#md5=b76558c71f1d97feeb8402c345e466bf
ты можешь попробовать с pip install python-snappy
но изначально не удалось найти файл заголовка, поэтому я пошел за файл яйца
установить яйцо:
easy_install <eggfile>
python setup.py build
python setup.py install
Если вы используете Mac OS X Catalina, вы можете установить
brew install snappy
CPPFLAGS="-I/usr/local/include -L/usr/local/lib -stdlib=libc++ " pip install python-snappy
как предложено https://github.com/andrix/python-snappy FAQ
Исправление для macOS M1. Вы должны определить абсолютный путь к lib и включить snappy.
brew install snappy
pip install \
--upgrade --ignore-installed \
python-snappy==0.5.4 \
--global-option=build_ext \
--global-option="-I/opt/homebrew/Cellar/snappy/1.1.9/include" \
--global-option="-L/opt/homebrew/Cellar/snappy/1.1.9/lib"
Для Windows
- Скачать отсюда
Извлеките почтовый индекс.
Скопируйте
.h
файлы из папки include. Вставьте в папку установки pythonC:\Users\user\AppData\Local\Programs\Python\Python310\include\
Скопировать из родной папки. Вставьте в папку установки python
C:\Users\user\AppData\Local\Programs\Python\Python310\libs\
Переименовать
snappy64.lib
кsnappy.lib
Вы можете идти. Повторить команду
pip install -r .\requirements.txt
Чтобы решить эту проблему в Mac OS X с установленным MacPorts, вы можете:
$ sudo port install snappy
$ CPPFLAGS="-I/opt/local/include -L/opt/local/lib" pip install python-snappy
Некоторое время у меня были проблемы с этим. К вашему сведению, я пытаюсь установить Crossbar (https://crossbar.io/docs/Installation-on-Linux/)
Я много погуглил и немного испортил. Я использую Python 3.7.4, и, как мне кажется, моя проблема решена следующим образом:
sudo yum install python-devel
если это не сработает, попробуйте
sudo yum install python3-devel
источник: