我如何编译的WinRT / ARM源码?(How can I compile sqlite for

2019-07-30 03:01发布

我已经成功编译的SQLite WinRT的我的版本的x86 由蒂姆·豪雅描述 。

不过,我仍然在努力如何编译的WinRT的dll上的ARM CPU。 我已经与Visual Studio ARM命令提示符下运行NMAKE,但只是给了我下面的错误:

 C:\sqlite>nmake -f makefile.msc sqlite3.dll FOR_WINRT=1 OPTS=/DWINAPI_FAMILY=WIN
API_PARTITION_APP


Microsoft (R) Program Maintenance Utility Version 11.00.50522.1
Copyright (C) Microsoft Corporation.  All rights reserved.

        cl.exe -W3 -DNDEBUG -D_CRT_SECURE_NO_DEPRECATE -D_CRT_SECURE_NO_WARNINGS
 -O2 -Zi /DEBUG -Femkkeywordhash.exe  -DSQLITE_ENABLE_FTS3=1 -DSQLITE_ENABLE_RTR
EE=1 -DSQLITE_ENABLE_COLUMN_METADATA=1 -DSQLITE_MAX_TRIGGER_DEPTH=100 /DWINAPI_F
AMILY=WINAPI_PARTITION_APP .\tool\mkkeywordhash.c
Microsoft (R) C/C++ Optimizing Compiler Version 17.00.50522.1 for ARM

Copyright (C) Microsoft Corporation.  All rights reserved.

mkkeywordhash.c

Microsoft (R) Incremental Linker Version 11.00.50522.1
Copyright (C) Microsoft Corporation.  All rights reserved.

/machine:arm
/debug
/out:mkkeywordhash.exe
mkkeywordhash.obj
        .\mkkeywordhash.exe > keywordhash.h
This version of C:\sqlite\mkkeywordhash.exe is not compatible with the version o
f Windows you're running. Check your computer's system information and then cont
act the software publisher.
NMAKE : fatal error U1077: '.\mkkeywordhash.exe' : return code '0x1'
Stop.

我究竟做错了什么?

谢谢,

阿德里安

Answer 1:

我终于设法使这项工作:

  1. 这里描述编译DLL 86: http://timheuer.com/blog/archive/2012/05/20/using-sqlite-in-metro-style-app.aspx

  2. 仅已删除了sqlite3的*文件和sqlitelib(非常感谢Banthar和Tim Heuer豪雅的提示)

  3. 编译来自ARM VS用这个命令的命令提示符的ARM DLL:

NMAKE -f makefile.msc sqlite3.dll FOR_WINRT = 1 OPTS = / DWINAPI_FAMILY = WINAPI_PARTITION_APP



Answer 2:

您还可以得到二进制文件通过这个项目预编译: https://github.com/praeclarum/sqlite-net/tree/master/lib/metro



文章来源: How can I compile sqlite for WinRT / ARM?