After i add some libs in build phases->link binary with libraries . I try to build project again by using cocos creator build tool. I opened project xcode again. In build phases->link binary with libraries , it was empty.
Is there any way to fix this problem?
You need to edit:
native/engine/ios/CMakeLists.txt
set(CMAKE_EXE_LINKER_FLAGS "${CMAKE_EXE_LINKER_FLAGS} -framework AppTrackingTransparency")
set(CMAKE_EXE_LINKER_FLAGS "${CMAKE_EXE_LINKER_FLAGS} -framework Security")
set(CMAKE_EXE_LINKER_FLAGS "${CMAKE_EXE_LINKER_FLAGS} -framework StoreKit")
Hope this will solve your issue.
I already know the problem why every time I rebuild, this field is empty. That’s because I chose the option skip xcode update . But I still want to know how if I build a new xcode project it can automatically add the library
The answer from @stark2022 should work.
And here a modernized is way
#...
cc_ios_after_target(${EXECUTABLE_NAME})
target_link_libraries(${EXECUTABLE_NAME} # PUBLIC
"-framework AppTrackingTransparency"
"-framework Security"
"-framework StoreKit"
)
If the skip option is checked and needs to override the Xcode project, you can remove the build/ios
folder or the single file build/ios/proj/CMakeCache.txt
, to trigger regenerate.
@PatriceJiang , will the library be added after building in cocos creator tool with the above command? .
I tried your code but it build failed . Are you sure the following is syntactically correct ?
target_link_libraries(${EXECUTABLE_NAME} PUBLIC
"-framework AppTrackingTransparency"
"-framework Security"
"-framework StoreKit"
)
will the library be added after building in cocos creator tool with the above command?
Yes
Are you sure the following is syntactically correct ?
What kind of error report do you meet? target_link_libraries.
Pls, try whether you can correctly include the corresponding header file. I’m not sure whether your verification method is reliable
Try to remove the keyword PUBLIC
to see if you can solve the error reported
Sorry, i don’t have experience for ios development . i thought that I had to check here @PatriceJiang .
If I have some library files which is downloaded . How to automatically add them to project xcode after build @PatriceJiang ?
You can use add_library
and target_link_libraries
For example:
# import
add_library(freetype STATIC IMPORTED GLOBAL)
set_target_properties(freetype PROPERTIES
IMPORTED_LOCATION ${CMAKE_CURRENT_LIST_DIR}/libs/libfreetype.a
INTERFACE_INCLUDE_DIRECTORIES ${CMAKE_CURRENT_LIST_DIR}/include/freetype
)
# link
target_link_libraries(${EXECUTABLE_NAME} PUBLIC
freetype
)