Где найти "gmp.h"?
Я устанавливаю библиотеку, и получил это сообщение об ошибке:
xxxx@ubuntu$ make
(cd num; make all)
make[1]: Entering directory `/home/xxxx/num'
make[1]: Nothing to be done for `all'.
make[1]: Leaving directory `/home/xxxx/num'
(cd itv; make all)
make[1]: Entering directory `/home/xxxx/itv'
gcc -Wcast-qual -Wswitch -Werror-implicit-function-declaration -Wall -Wextra -Wundef -Wbad-function-cast -Wcast-align -Wstrict-prototypes -Wno-unused -std=c99 -U__STRICT_ANSI__ -O3 -DNDEBUG -I../num -I../apron -I/usr/include -I/usr/include -DNUM_MPQ -c -o itvMPQ.o itv.c
In file included from itv.h:9:0,
from itv.c:5:
../num/num.h:15:17: fatal error: gmp.h: No such file or directory
compilation terminated.
make[1]: *** [itvMPQ.o] Error 1
make[1]: Leaving directory `/home/xxxx/itv'
make: *** [c] Error 2
Так что проблема в том, что он не может найти gmp.h
Кто-нибудь знает, где находится этот файл и как его найти установщику? Кстати, на данный момент мой Makefile
указывает в основном на /usr
а также /usr/local
...
Edit1: после установки libgmp3-dev
как и предполагалось, текущее сообщение об ошибке ../num/num.h:16:18: fatal error: mpfr.h: No such file or directory
Кто-нибудь знает, о каком пакете идет речь?
Edit2: я установил MPFR
следуя этой странице, и это помогло, теперь сообщение об ошибке gmp_caml.c:17:33: fatal error: caml/camlidlruntime.h: No such file or directory
кто-нибудь может помочь?
Edit3: я сделал apt-file search camlidlruntime
и возвращается camlidl: /usr/lib/ocaml/caml/camlidlruntime.h
, но нет camlidlruntime.h
в моей папке /usr/lib/ocaml/caml/
Как я могу проверить, если я установил dev package of MPFR
? и о какой именно упаковке?
5 ответов
Вам нужно установить libgmp3-dev
зависит от вашего linux
yum install libgmp3-dev
apt-get install libgmp3-dev
На OS X (если вы используете Homebrew), сделайте это:
brew install gmp
В Centos 6.5 это sudo yum install gmp gmp-devel gmp-status
,
Подсказка: просто найдите gmp в yum, а также проверьте, что yum обеспечивает команду.
Для меня это сработало:-
apt-get install libgmp3-dev (Might vary in linux distro; this is for Ubuntu)
pip3 install gmpy --user
Потому что может случиться так, что вам нужна эта библиотека в 32-битном формате по какой-то конкретной причине (как это было для меня)
Вам нужно будет запустить (на Ubuntu/Debian):
apt-get install libgmp3-dev:i386
суффикс :i386
за любой библиотекой будет установлена 32-битная версия.
Я провел много исследований и, наконец, смог скомпилировать оттенок со следующими переменными среды:
export CPFLAGS="-I/usr/local/include/gmp.h -I/usr/local/opt/openssl/include"
export CFLAGS="-I/usr/local/include/gmp.h"
export CXXFLAGS="-I/usr/local/include/gmp.h"
export LDFLAGS="-L/usr/local/lib -L/usr/local/opt/openssl/lib"
export PKG_CONFIG_PATH="/usr/local/opt/openssl/lib/pkgconfig"
Это может показаться глупым: всякий раз, когда я получал ошибку, я просто делал:sudo apt-get install lib<name_of_library_not_found>-dev
и это как-то решило проблему. Не знаю как, что-то связанное с библиотеками разработчика или что-то в этом роде