HarmonyOS鸿蒙Next中CMakeLists.txt里的add_library指令必须指定SHARED吗?
HarmonyOS鸿蒙Next中CMakeLists.txt里的add_library指令必须指定SHARED吗?
我在CMakeLists.txt里看到add_library(entry SHARED hello.cpp),这里的SHARED是必须的吗?如果我想编译成静态库,应该改成什么?静态库和动态库在鸿蒙应用里的使用场景有什么区别?
3 回复
-
SHARED vs STATIC:
SHARED:生成动态库(.so)。STATIC:生成静态库(.a)。
-
选择建议:
- 如果库需要被多个应用共享,使用
SHARED。 - 如果库仅在当前应用中使用,且希望减少运行时依赖,使用
STATIC。
- 如果库需要被多个应用共享,使用
更多关于HarmonyOS鸿蒙Next中CMakeLists.txt里的add_library指令必须指定SHARED吗?的实战系列教程也可以访问 https://www.itying.com/category-93-b0.html
在HarmonyOS鸿蒙Next中,add_library指令并不强制要求指定SHARED。你可以根据需要选择创建静态库(STATIC)或动态库(SHARED)。如果不指定类型,默认创建静态库。例如:
add_library(my_library STATIC my_source.cpp) # 创建静态库
add_library(my_library SHARED my_source.cpp) # 创建动态库


