I tried building sqlcipher for arm64 configuration on windows, but it fails and shows an error with lemon.exe the command that I used to build sqlcipher was
nmake /f Makefile.msc libsqlite3.lib NO_TCL=1 USE_CRT_DLL=1 "OPTS=-DSQLITE_HAS_CODEC -DSQLITE_TEMP_STORE=2 -DSQLITE_MAX_ATTACHED=125 -I%LIB_INSTALL_PATH%\include" CORE_LINK_OPTS="/LIBPATH:%LIB_INSTALL_PATH%\lib\ libcrypto.lib"
This same command works perfectly fine for x64 arch and x86 arch but only fails for arm64 arch.
I just ran into this exact same issue. The solution I found was to first do a build for x64 (I was on a windows 64 host machine), then save all the intermediary exes (There should be 4 of them, lemon.exe, mkkeywordhash.exe, mksourceid.exe, and src-verify.exe).
Move those to a different folder so they don’t get overwritten, then in Makefile.msc (and in tool/mksqlite3c.tcl and tool/mksqlite3h.tcl) change the references to those exes with the absolute path to the one’s you built previously for x64.
The issue here is that it’s building those .exes as arm64 .exes which won’t work on your system. They’re not part of the final build, only helper exes, so it should be fine to use