Почему я не могу использовать свою библиотеку GMP в Linux - PullRequest
2 голосов
/ 03 марта 2010

Я писал некоторые коды в Linux, используя c. При попытке скомпилировать я получил такой ответ:

/tmp/ccW8mQDx.o: In function `main':
server.c:(.text+0x3e): undefined reference to `__gmpz_set_str'
server.c:(.text+0x5a): undefined reference to `__gmpz_set_str'

На самом деле, все функции gmp, которые я использовал, не были найдены.

Кажется, есть некоторые проблемы с gmp.

Может кто-нибудь сказать, пожалуйста, как это решить? Заранее спасибо!

Ответы [ 2 ]

4 голосов
/ 03 марта 2010

Ошибки undefined reference появляются, когда вы забыли связать ваше приложение с библиотекой, в данном случае GMP. Прочитайте в документации GMP название библиотеки для связи и используйте переключатель компилятора -l для ее ссылки.

Вы пробовали -lgmp?

Если это не сработает, вы можете найти библиотеку libgmp.a:

cd /usr
find . -name libgmp.a -print
0 голосов
/ 03 марта 2010

Добавить опцию -l, когда вы компилируете код. Это добавит файлы библиотеки.

...