Я пытаюсь использовать MPIR библиотека в проекте Qt. Вот фрагмент кода:
#include <QCoreApplication>
#include <iostream>
#include "mpir.h"#include "mpirxx.h"
int main(int argc, char *argv[])
{
QCoreApplication a(argc, argv);
mpf_class x, y, z;
x = "4325345345634534535345345";
y = "45";
z = x - y;
return a.exec();
}
Приведенный выше код компилируется без проблем. Однако, когда я пытаюсь напечатать значение mpf_class следующим образом:
std::cout << z;
Я получаю следующую ошибку:
main.obj: -1: ошибка: LNK2019: неразрешенный внешний символ «__declspec (dllimport) класс std :: basic_ostream> & оператор __cdecl<<(класс std :: basic_ostream> &, struct __mpf_struct const *) «(__imp _ ?? 6 @ YAAEAV? $ basic_ostream @ DU? $ char_traits @ D @ std @@@ std @@ AEAV01 @ PEBU__mpf_struct @@@ Z) упоминается в функции main
Если это поможет, я собрал библиотеки с помощью следующих команд в битовой версии X64 MSYS2:
./configure --disable-static --enable-shared --enable-cxx
make
Задача ещё не решена.
Других решений пока нет …