fail to build arm64ec-windows but pass at the arm64-windows
I get build error
I can workaournd it by disable
src\sqlite3mc_config.h #define HAVE_CIPHER_AEGIS 1
but I pass at the arm64-windows
I try to change something, but the the arm64ec is not defined here, only see _M_ARM64.
the HAS_AEGIS_AES_HARDWARE should be rightly define AEGIS_AES_HARDWARE_NEON
Anyone can help me?
The underlying libaegis library (of which SQLite3 Multiple Ciphers uses a slightly modified variant) has not yet been adapted to support the ARM64EC architecture. Maybe just adding a check for the symbol _M_ARM64EC is enough to make it work, maybe not.
If your application does not depend on AEGIS support, the simplest workaround would be to disable the AEGIS cipher for the time being.
I will look into the issue, but this may take some time, because I don't have access to a ARM64EC machine and I don't have installed ARM64EC build support in my development environment at the moment.
The underlying libaegis library (of which SQLite3 Multiple Ciphers uses a slightly modified variant) has not yet been adapted to support the ARM64EC architecture. Maybe just adding a check for the symbol
_M_ARM64ECis enough to make it work, maybe not.If your application does not depend on AEGIS support, the simplest workaround would be to disable the AEGIS cipher for the time being.
I will look into the issue, but this may take some time, because I don't have access to a ARM64EC machine and I don't have installed ARM64EC build support in my development environment at the moment.
you can build it at the x64 machine, the arm64ec just like arm64, it is very small difference. I can test it because I have ARM windows PC.
you can build it at the x64 machine, the arm64ec just like arm64, it is very small difference. I can test it because I have ARM windows PC.
Thanks. I will try to build with VS2022 for ARM64EC, after adjusting the architecture cheks. However, this will happen only after the release of the next version of SQLite3MC (based on SQLite 3.51.0) - which will be done within the next couple of days.
o, could you share me the patch and let me try it, yes, when it will be released?
thank you very much for your great help.
o, could you share me the patch and let me try it, yes, when it will be released?
Applying patches is a bit more complex than I expected. When the symbol _M_ARM64EC is defined, the symbol _M_X64 is also defined. That is, the order of symbol checks matters.
I drop a note here, when a version is ready for testing. Most likely, I will provide it in a separate branch and will merge it only after it is confirmed that it works as expected.
I created branch arm64ec and adjusted the AES and Aegis encryption code to select AEGIS_AES_HARDWARE_NEON for the ARM64EC platform.
Compiling the code for platform ARM64EC worked in VS2022. But I can't test it, because I don't have access to ARM64EC hardware.
Please give it a try and report any issues you experience.
Note: premake doesn't support platform ARM64EC yet. Therefore you have to adjust the build files yourself.
thank you very much, I build it successfully and will verify it later. thank you .