1# SDK使用常见问题 2 3 4## cmake中arm64-v8a/armeabi-v7a这层目录的宏定义是什么(API 9) 5 6**解决方案** 7 8arm64-v8a及armeabi-v7a目录如下所示: 9 10``` 11entry 12├─ libs 13│ ├─ arm64-v8a 14│ │ └─ libMyDemo.so 15│ └─ armeabi-v7a 16│ └─ libMyDemo.so 17└─ src 18 └─ main 19 └─ cpp 20 └─ CMakeLists.txt 21``` 22 23访问到目录的宏定义为:${CMAKE_CURRENT_SOURCE_DIR}/../../../libs/${OHOS_ARCH}/xxxx.so 24 25CMAKE_CURRENT_SOURCE_DIR:CMakeList.txt文件所在目录。 26 27OHOS_ARCH:设置应用程序二进制接口ABI,类型为 armeabi-v7a、arm64-v8a,默认值是 arm64-v8a。 28 29**使用示例** 30 31CMakeLists.txt 中添加链接库。 32 33``` 34target_link_libraries(entry PUBLIC 35 libace_napi.z.so 36 libhilog_ndk.z.so 37 ${CMAKE_CURRENT_SOURCE_DIR}/../../../libs/${OHOS_ARCH}/libMyDemo.so 38) 39``` 40 41 42## 在Native代码中使用OH_LOG_Print打印日志报错(API 9) 43 44**问题现象** 45 46在Native代码中使用OH_LOG_Print打印日志,上报错误:undefined symbol: OH_LOG_Print 47 48**原因分析** 49 50缺少链接库文件。 51 52**解决措施** 53 54打开CMakeLists.txt文件,在target_link_libraries最后追加libhilog_ndk.z.so。 55 56``` 57set(NATIVERENDER_ROOT_PATH ${CMAKE_CURRENT_SOURCE_DIR}) 58target_link_libraries(entry PUBLIC 59 libace_napi.z.so 60 libhilog_ndk.z.so 61) 62``` 63 64 65## 如何遍历rawfiles中的文件(API 9) 66 67**解决方案:** 68 69使用Native API中的OH_ResourceManager_OpenRawDir()方法获取到rawfile的根目录,然后对其进行遍历。 70 71**参考文档:** 72 73[Native开发指导](../reference/apis-localization-kit/rawfile.md) 74 75