Я боролся в течение всего дня с GMP и Mingw, и после ОГРОМНОГО количества попыток я сделал его установку. На самом деле я сделал следующее: установил новую совершенно новую копию MinGW (32-разрядная, стандартная последняя версия, загруженная из sourceforge), выбрал компонент msys во время установки, а затем использовал msys для установки GMP из исходных кодов.
1) Я скачал исходники с домашней страницы официального сайта gmplib (только стандартный выпуск исходного кода, ссылка в верхней части домашней страницы).
2) Я извлек его в какое-то место, доступное из msys.
3) Я сделал шаг "./configure"
4) Затем «сделай» шаг
5) Затем "сделать установку"
6) Затем «сделай проверку».
Нет проблем, похоже, это просто работает. Я попытался скомпилировать это под GCC:
#include <stdio.h>
#include <gmp.h>
int main(int argc, char *argv[])
{
mpz_t a, b; /* working numbers */
return 0;
}
Скомпилировано без ошибок. Но потом, когда я пытаюсь добавить:
mpz_init(a);
прямо под объявлением a, gcc распечатывает:
C: \ Users \ MATTEO ~ 1 \ AppData \ Local \ Temp \ cc6wXtx9.o: gmptest.c :(. Text + 0x1c): undefine
d ссылка на `__gmpz_init '
collect2: ld вернул 1 статус выхода
Знаете ли вы что-нибудь об этой ошибке? Кто-нибудь может мне помочь? Большое спасибо!
Маттео