Я успешно построил программу, которая может читать Mifare 1K Card, используя Qt в Linux. Итак, теперь я бы хотел, чтобы он работал в Windows. Из того, что я собрал, в Windows нет порта PCSC-Lite, и мне нужно использовать winscard из Windows SDK. Я загрузил его, и у меня появилось множество неопределенных ссылочных ошибок из моего Qt в Windows (с MingW). Например:PCSC-Lite коды на Windows
release/ReadCard.o:ReadCard.cpp:(.text+0x48e): undefined reference to `pcsc_stringify_error' release/ReadCard.o:ReadCard.cpp:(.text+0x5e9): undefined reference to `pcsc_stringify_error' release/ReadCard.o:ReadCard.cpp:(.text+0x7ed): undefined reference to `pcsc_stringify_error' release/ReadCard.o:ReadCard.cpp:(.text+0x2e56): undefined reference to `SCardListReaderGroups' release/ReadCard.o:ReadCard.cpp:(.text+0x3adc): undefined reference to `SCardListReaders' release/ReadCard.o:ReadCard.cpp:(.text+0x3cc6): undefined reference to `SCardListReaders' release/ReadCard.o:ReadCard.cpp:(.text+0x3f88): undefined reference to `SCardGetStatusChange' release/ReadCard.o:ReadCard.cpp:(.text+0x4274): undefined reference to `SCardConnect' release/ReadCard.o:ReadCard.cpp:(.text+0x4d1b): undefined reference to `SCardGetStatusChange
Я также попытался указать эти библиотеки в проекте, но все еще не удалось.
LIBS += -lwinscard -lpcsclite WinSCard.Lib
Я удалил pcsc_stringify_error, но, как и ожидалось, у меня остались другие ошибки. Я не уверен, как я могу реализовать OpenSC в своем проекте, даже если он выглядит похожим. Не могли бы вы подробнее рассказать об этом? BTW, я пробовал кодирование в Visual C++ .Net, и у меня не было ошибок при использовании #include, и я могу без проблем использовать SCardEstablishContext, но я получил ошибки, когда использовал этот код в Qt. –
amree
Это уже вопрос о Qt, а не ПК/SC. Не могу помочь вам в этом, узнайте свои инструменты. Обновление –