Я изучаю c ++ и пытаюсь использовать библиотеку, которую я скачал из Интернета, в моей программе (отсюда https://mattmccutchen.net/bigint/).
Поскольку я хочу, чтобы все было достаточно аккуратно, я поместил все .hh файлы в подпапку с именем «BI».
Однако, когда я пытаюсь скомпилировать мой файл .cpp с помощью g ++ (это MinGW в Windows XP SP3), компилятор выдает следующую ошибку:
J:\comp proj\FS>J:\Programmi\MinGW\bin\g++.exe "J:\comp proj\FS\test.cpp" -o "J:\comp proj\FS\test.exe" -I "J:\comp proj\FS\BI"
E:\DOCUME~1\MrJackV\IMPOST~1\Temp\ccidH1Z6.o:test.cpp:(.text+0x2c): undefined reference to <code>BigInteger::BigInteger(int)'
E:\DOCUME~1\MrJackV\IMPOST~1\Temp\ccidH1Z6.o:test.cpp:(.text+0x11b): undefined reference to
operator << (std :: ostream &, BigInteger const &) '
E: \ DOCUME ~ 1 \ MrJackV \ IMPOST ~ 1 \ Temp \ ccidH1Z6.o: test.cpp :(. Text $ <em>ZNK10BigIntegermlERKS [BigInteger :: operator * (BigInteger const &) const] + 0x29): неопределенные ссылки
в BigInteger :: multiply (BigInteger const &, BigInteger const &) '
collect2: ld вернул 1 статус выхода
Я пытался использовать переключатели -I, -l and -L
для решения проблемы, но безуспешно.
Более того, я попытался в cpp поставить #include "BI/BigIntegerLibrary.hh"
, но это не сработало.
Есть ли что-то, что я делаю не так?
Заранее спасибо.