0%

Android cross compile

Android交叉编译需要Android NDK环境,应先下载NDK环境.
一般使用NDK环境是使用

  • 生成编译工具链

    1
    2
    //生成静态编译工具链
    $ $ANDROID_NDK_ROOT_DIR/build/tools/make_standalone_toolchain.py --arch $ARM --api $ANDROID_API --stl=libc++ --install-dir $ANDROID_TOOLCHAIN_INSTALL_DIR
    阅读全文 »

Makefile

SUBDIR=
#SUBDIR=./xxx
CLEANSUBDIR=$(SUBDIR)

VER=
git_ver=$(shell git describe –tags git rev-list --tags --max-count=1)

阅读全文 »

N-API

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
// hello.cc using N-API
#include <node_api.h>
#include <iostream>

namespace demo {

napi_value Method(napi_env env, napi_callback_info args) {
//napi_value greeting;
//napi_status status;

//status = napi_create_string_utf8(env, "world", NAPI_AUTO_LENGTH, &greeting);
//if (status != napi_ok) return nullptr;
//std::cout<<greeting<<std::endl;
std::cout<<"N-API test"<<std::endl;
//return greeting;
}

napi_value init(napi_env env, napi_value exports) {
napi_status status;
napi_value fn;

status = napi_create_function(env, nullptr, 0, Method, nullptr, &fn);
if (status != napi_ok) return nullptr;

status = napi_set_named_property(env, exports, "H", fn);
if (status != napi_ok) return nullptr;


uint32_t result;
status = napi_get_version(env,&result);

std::cout<<"status:"<<status<<std::endl;
std::cout<<"version:"<<result<<std::endl;


return exports;
}

NAPI_MODULE(NODE_GYP_MODULE_NAME, init)

} // namespace demo
阅读全文 »

配置系统

ParseOption:解析配置的类
XXOption:这些都是各个类的配置.
使用:XXOption中都包含一个Register(ParseOption &itf)方法,该方法直接把该类中的Option中的变量注册到ParseOption中{注册使用的全是引用,目的就是通过ParseOption的接口来设置XXOption中的变量},然后使用ParseOption的读写方法操作配置文件、以及解析配置文件.

MFCC

阅读全文 »