我已经成功构建了一个可以在 Linux 上使用 Qt 读取 Mifare 1K 卡的程序。所以现在,我希望它在 Windows 上运行。据我所知,Windows 上没有 PCSC-Lite 端口,我需要使用 Windows SDK 中的 winscard。我已经下载了它,我在 Windows 中的 Qt(使用 MingW)中有很多未定义的参考错误。例如:
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): 未定义对“SCardListReaderGroups”的引用 release/ReadCard.o:ReadCard.cpp:(.text+0x3adc): 对“SCardListReaders”的未定义引用 release/ReadCard.o:ReadCard.cpp:(.text+0x3cc6): 未定义的对“SCardListReaders”的引用 发布/ReadCard.o:ReadCard.cpp:(.text+0x3f88): 未定义对“SCardGetStatusChange”的引用 release/ReadCard.o:ReadCard.cpp:(.text+0x4274): 未定义对“SCardConnect”的引用 release/ReadCard.o:ReadCard.cpp:(.text+0x4d1b): 未定义引用`SCardGetStatusChange
我也尝试在项目中指定这些库,但仍然失败。
LIBS += -lwinscard -lpcsclite WinSCard.Lib