# 编译测试案例 - [简介] - [目录] - [约æŸä¸Žé™åˆ¶] - [说明] - [相关问题说明] ## 简介 æ供了一个基于cmake编译的框架,å¯ç¼–译ä¸åŒå¹³å°çš„二进制文件 æ ¹æ®å®¢æˆ·çš„需求,编译生æˆå¯¹åº”çš„å¯æ‰§è¡Œç¨‹åºå’Œåº“文件。其编译æµç¨‹ä¸ºï¼š 1. 使用python脚本进行é…ç½®cmake编译的å‚æ•° 2. pythonè¿è¡ŒåŽä¼šç”ŸæˆMakefile文件 3. 通过è¿è¡Œcmake --build .æ¥æ‰§è¡Œç¼–译的任务 ## 目录结构 ``` . ├── README.en.md ├── README.md ├── ndk-test │  ├── CMakeLists.txt # ndk-test通过cmake构建的起点 │  ├── build.py # 编译ndk-test的脚本 │  └── src ├── sanitize │  ├── CMakeLists.txt # sanitize通过cmake构建的起点 │  ├── asan │  ├── build.py # 编译sanitize的脚本 │  ├── cfi │  ├── fuzz │  ├── scudo │  └── ubsan ├── script # 编译放置的脚本 │  ├── __pycache__ │  ├── build.py # 编译的总脚本 │  ├── config_args.py # cmake编译需è¦çš„å‚æ•° │  ├── runtest-sanitize.sh │  ├── runtest.sh │  └── runtest_Windows.bat # 将编译生æˆçš„文件推é€åˆ°æ¿å上 └── target # å˜æ”¾ç›®æ ‡æ–‡ä»¶ └── README.md ``` ## é™åˆ¶ä¸Žçº¦æŸ - 需è¦ä¸‹è½½NDK或者通过openharmonyç¼–è¯‘ç”Ÿæˆ - é…置环境,详情请å‚ç…§[giteeä¸çš„wiki文档](https://gitee.com/openharmony/third_party_musl/wikis/Home) ## 说明 1. 总目录下全é‡ç¼–译的编译命令 ``` python build.py ``` 2. 对应的编译目录å¯å•ç‹¬ç¼–译 ``` # å目录sanitize python build.py # å目录ndk-test python build.py ``` 3. 在æ¿å上è¿è¡Œæµ‹è¯•æ¡ˆä¾‹ ``` # 确定æ¿å连接好电脑,è¿è¡Œè„šæœ¬ runtest_Windows.bat ``` 4. 若以上æ¥éª¤æ‰§è¡ŒæˆåŠŸï¼Œè„šæœ¬ä¼šäº§ç”Ÿä¸€ä¸ªREPORTå’ŒREPORT-SANITIZE文件,æ¥åˆ†åˆ«è®°å½•ndk-testå’Œsanitize测试案例è¿è¡Œçš„结果 ## 相关问题说明 **对于cmakeå‚æ•°CMAKE_TOOCHAIN_FILE** - 指å‘的是工具链文件所在的ä½ç½®ï¼Œå¯¹äºŽç¼–译ä¸åŒå¹³å°äºŒè¿›åˆ¶æ–‡ä»¶æ˜¯å¾ˆé‡è¦çš„,所以è¦ç»™å®šæ£ç¡®çš„路径