Доброго времени !
подскажите, что необходимо ещё сделать?
необходимо перенести утилиту для подписания из Windows(Qt5, win7) в Linux(Qt6,Kubuntu24.04)
под виндой все работало и cades.h,xades.h и DLL-ки, ошибок не было.
при переносе в Linux
1) установил КриптоПро 5.0.13 через пакет linux-amd64_deb
2) в файл проекта .pro добавил зависимости:
Цитата:INCLUDEPATH += /opt/cprocsp/include/pki/
INCLUDEPATH += /opt/cprocsp/include/reader/
INCLUDEPATH += /opt/cprocsp/include/cpcsp/
INCLUDEPATH += /opt/cprocsp/include/
LIBS +=/opt/cprocsp/lib/amd64/libcades.so
LIBS +=/opt/cprocsp/lib/amd64/libxades.so
при сборке выдаёт ошибку:
Цитата: /opt/cprocsp/include/cpcsp/WinCryptEx.h:90: ошибка: windows.h: No such file or directory
In file included from /opt/cprocsp/include/pki/ades-core.h:32:
/opt/cprocsp/include/cpcsp/WinCryptEx.h:90:18: fatal error: windows.h: No such file or directory
90 | # include <windows.h>
| ^
при разборе WinCryptEx.h видим:
Цитата:# if defined UNIX || defined CSP_LITE
# include "CSP_WinCrypt.h"
# else // UNIX
# if !defined _WINDOWS_
# define WIN32_LEAN_AND_MEAN // Для ускорения компиляции
# include <windows.h>
# endif // _WINDOWS_
# include <wincrypt.h>
# endif // UNIX
если закоментить #include <windows.h> и #include <wincrypt.h>, (под Linux ветка "else" не выполняется)
начинают сыпать другие ошибки:
ошибка: expected initializer before ‘CPC_Kernel_Fpu_Begin_Callback’
ошибка: ‘CPC_Kernel_Fpu_Begin_Callback’ does not name a type
//------------------------------------------------
по установленным пакетам.
dpkg -l | grep cpr
ii cprocsp-cptools-gtk-64 5.0.13300-7 amd64 CryptoPro GUI application for various CSP tasks. Build 13300.
ii cprocsp-curl-64 5.0.13300-7 amd64 CryptoPro cURL shared library and application. Build 13300.
ii cprocsp-pki-cades-64 2.0.15260-1 amd64 CryptoPro ECP SDK
ii cprocsp-pki-plugin-64 2.0.15260-1 amd64 CryptoPro ECP Browser plug-in
ii cprocsp-rdr-gui-gtk-64 5.0.13300-7 amd64 CryptoPro CSP GTK GUI components. Build 13300.
ii lsb-cprocsp-base 5.0.13300-7 all CryptoPro CSP directories and scripts. Build 13300.
ii lsb-cprocsp-ca-certs 5.0.13300-7 all CryptoPro CA certificates. Build 13300.
ii lsb-cprocsp-capilite-64 5.0.13300-7 amd64 CryptoPro CSP. CryptoAPI Lite libraries and applications. Build 13300.
ii lsb-cprocsp-devel 5.0.13300-7 all CryptoPro CSP developer headers and examples. Build 13300.
ii lsb-cprocsp-kc1-64 5.0.13300-7 amd64 CryptoPro CSP KC1. Build 13300.
ii lsb-cprocsp-pkcs11-64 5.0.13300-7 amd64 CryptoPro PKCS11. Build 13300.
ii lsb-cprocsp-rdr-64 5.0.13300-7 amd64 CryptoPro CSP common libraries and utilities. Build 13300.
//--------------------------------------------------
Заранее благодарен всем ответившим. Треш с этим переходом на Linux.