не могу скомпилировать QtPdfium используя Mingw32 QT 5.12 для чтения PDF - PullRequest
0 голосов
/ 11 января 2019


Я хочу извлечь текст из PDF, поэтому я попробовал QPdfium From здесь
Я попытался скомпилировать библиотеку, используя QT 5.12.0 с компилятором Mingw32. Я выполнил следующие действия:
1 - Я получаю клон из проекта и затем открываю qtpdfium.pro, выбираю режим релиза с помощью компилятора Mingw 32.
2 - , когда я начинаю строить, я получил около 18 Ошибка

D:\build\qtpdfium-master\src\3rdparty\pdfium\fpdfsdk\fsdk_actionhandler.cpp:425: error: 'class CPDF_Dest' has no member named 'GetObjectW'; did you mean 'GetObject'?
   const CPDF_Array* pMyArray = ToArray(MyDest.GetObject());
                                               ^
D:\build\qtpdfium-master\src\3rdparty\pdfium\fpdfsdk\fpdfview.cpp:447: error: 'g_pdfium_print_postscript_level' was not declared in this scope
   g_pdfium_print_postscript_level = postscript_level;
   ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
D:\build\qtpdfium-master\src\3rdparty\pdfium\fpdfsdk\fsdk_actionhandler.cpp:425: error: 'class CPDF_Dest' has no member named 'GetObjectW'; did you mean 'GetObject'?
   const CPDF_Array* pMyArray = ToArray(MyDest.GetObject());
                                               ^
D:\build\qtpdfium-master\src\3rdparty\pdfium\fpdfsdk\fpdfview.cpp:681: error: no matching function for call to 'MakeUnique<<expression error> >(HDC__*&)'
     pContext->m_pDevice = pdfium::MakeUnique<CFX_WindowsDevice>(dc);
                                                                   ^
D:\build\qtpdfium-master\src\3rdparty\pdfium\fpdfsdk\fpdfview.cpp:681: error: template argument 1 is invalid
     pContext->m_pDevice = pdfium::MakeUnique<CFX_WindowsDevice>(dc);
                                                                   ^
D:\build\qtpdfium-master\src\3rdparty\pdfium\fpdfsdk\fpdfview.cpp:681: error: template argument 1 is invalid
     pContext->m_pDevice = pdfium::MakeUnique<CFX_WindowsDevice>(dc);
                                                                   ^
D:\build\qtpdfium-master\src\3rdparty\pdfium\fpdfsdk\fpdfview.cpp:681: error: template argument 1 is invalid
     pContext->m_pDevice = pdfium::MakeUnique<CFX_WindowsDevice>(dc);
                                                                   ^
D:\build\qtpdfium-master\src\3rdparty\pdfium\fpdfsdk\fpdfview.cpp:688: error: 'CFX_WindowsDevice' was not declared in this scope
     CFX_WindowsDevice WinDC(dc);
     ^~~~~~~~~~~~~~~~~
D:\build\qtpdfium-master\src\3rdparty\pdfium\fpdfsdk\fpdfview.cpp:689: error: 'WinDC' was not declared in this scope
     if (WinDC.GetDeviceCaps(FXDC_DEVICE_CLASS) == FXDC_PRINTER) {
         ^~~~~
D:\build\qtpdfium-master\src\3rdparty\pdfium\fpdfsdk\fpdfview.cpp:447: error: 'g_pdfium_print_postscript_level' was not declared in this scope
   g_pdfium_print_postscript_level = postscript_level;
   ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
D:\build\qtpdfium-master\src\3rdparty\pdfium\fpdfsdk\fpdfview.cpp:681: error: 'CFX_WindowsDevice' was not declared in this scope
     pContext->m_pDevice = pdfium::MakeUnique<CFX_WindowsDevice>(dc);
                                              ^~~~~~~~~~~~~~~~~
D:\build\qtpdfium-master\src\3rdparty\pdfium\fpdfsdk\fpdfview.cpp:681: error: no matching function for call to 'MakeUnique<<expression error> >(HDC__*&)'
     pContext->m_pDevice = pdfium::MakeUnique<CFX_WindowsDevice>(dc);
                                                                   ^
D:\build\qtpdfium-master\src\3rdparty\pdfium\fpdfsdk\fpdfview.cpp:681: error: template argument 1 is invalid
     pContext->m_pDevice = pdfium::MakeUnique<CFX_WindowsDevice>(dc);
                                                                   ^
D:\build\qtpdfium-master\src\3rdparty\pdfium\fpdfsdk\fpdfview.cpp:681: error: template argument 1 is invalid
     pContext->m_pDevice = pdfium::MakeUnique<CFX_WindowsDevice>(dc);
                                                                   ^
D:\build\qtpdfium-master\src\3rdparty\pdfium\fpdfsdk\fpdfview.cpp:681: error: template argument 1 is invalid
     pContext->m_pDevice = pdfium::MakeUnique<CFX_WindowsDevice>(dc);
                                                                   ^
D:\build\qtpdfium-master\src\3rdparty\pdfium\fpdfsdk\fpdfview.cpp:688: error: 'CFX_WindowsDevice' was not declared in this scope
     CFX_WindowsDevice WinDC(dc);
     ^~~~~~~~~~~~~~~~~
D:\build\qtpdfium-master\src\3rdparty\pdfium\fpdfsdk\fpdfview.cpp:689: error: 'WinDC' was not declared in this scope
     if (WinDC.GetDeviceCaps(FXDC_DEVICE_CLASS) == FXDC_PRINTER) {
         ^~~~~

так в чем проблема, в файле readme написано, что я могу скомпилировать его без проблем, я попытался скомпилировать с использованием MSVC 2017 32, и это дает мне больше ошибок 187 ошибок, поэтому, пожалуйста, помогите, если кто-нибудь скомпилировал его до или если есть какая-либо ссылка для загрузки библиотеки в двоичном формате вместо ее компиляции.
Заранее спасибо.

...