面向现代 C++ 的 Corn SDK
最新版 Cornerstone SDK v0.2.1 兼容 Corn SDK v2.6.5
此 SDK 采用 GN(Generate Ninja) 和 Ninja 作为构建工具
GN 和 Ninja 已经编译好并附带在 bin
目录下,GN 和 Ninja 构建工具版权属于 © Google Inc.
-
修改
plugin.cc
和config.h
-
运行
./clean.cmd
来清理部分中间文件-
若只修改了头文件则必须在编译前运行
-
遇到未知的编译错误时也可以尝试运行
-
也可以在 VSCode 中执行
终端->运行任务->清理
-
-
运行
./build.cmd
来编译和链接-
生成的中间文件在
build/
目录下 -
生成的插件文件在
out/
目录下 -
也可以在 VSCode 中执行
终端->运行生成任务
-
-
SilkDecode
(silk解码)和SilkEncode
(silk编码)两个 API 尚未实现 -
请勿删除事件处理函数的参数带有的
volatile
修饰符- 若处理易语言结构(自定义数据类型)时遇到错误,也可以考虑使用
volatile
修饰符来修饰相关指针
- 若处理易语言结构(自定义数据类型)时遇到错误,也可以考虑使用
-
相关 API 可通过类
API
的全局对象api
调用,调用例子参见plugin.cc
-
插件信息和所需权限请在
config.h
里面修改 -
以
e
开头的类型均为易语言原生类型,如ebool
和etext
-
C++源文件和头文件均采用
UTF8
编码,但易语言采用GBK
编码,必要时请使用GBKtoUTF8
和UTF8toGBK
函数来转换编码-
GBKtoUTF8
和UTF8toGBK
函数分别可以使用简写e2s
和s2e
-
etext
对象均使用GBK
编码,string
对象通常使用UTF8
编码 -
相关API调用使用的参数和返回值(不包括
etext
类型)均使用UTF8
编码
-
-
需要支持 C++17 特性的编译器才能正常使用此 SDK
-
若要修改插件文件名称,请修改
BUILD.gn
-
如果新加入了新的 C++ 源文件(*.cc,*.cpp,*.cxx,*.c,*.C),你需要在
BUILD.gn
里声明它- 一般用户可以只修改
plugin.cc
和config.h
- 一般用户可以只修改
-
可以直接在
build.cmd
里面加上复制编译后的插件到对应插件安装目录的命令 -
如果编译缓慢,请执行
g++ xxx.h
命令,将头文件预编译成二进制
-
TDM-GCC
-
注意安装时要选添加 PATH
-
如果您有兴趣,可以尝试将开发环境迁移到 Visual Studio 2015 或更新的 MSVC 环境下
-
-
Visual Studio Code 和插件:
Cornerstone SDK 使用 MIT License 进行许可
版权所有 © 2020 Contributors of Cornerstone SDK
-
Corn SDK