linux cocos bullet bt...::.... 未定义引用

Posted YZFHKMS

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了linux cocos bullet bt...::.... 未定义引用相关的知识,希望对你有一定的参考价值。

 {

   关键是这句  GLEW GL X11 Xi Xrandr Xxf86vm Xinerama Xcursor rt m######################

  linux std lib 的link

}

{

    target_link_libraries(CLIENT 
                                        PUBLIC
                                        libNDKLIBRARY
                                        ${COCOS2DLIBRARYDIR}/freetype.lib
                                        ${COCOS2DLIBRARYDIR}/glew32.lib
                                        ${COCOS2DLIBRARYDIR}/glfw3.lib
                                        ${COCOS2DLIBRARYDIR}/libbox2d.lib
                                        ${COCOS2DLIBRARYDIR}/libbullet.lib
                                        ${COCOS2DLIBRARYDIR}/libchipmunk.lib
                                        ${COCOS2DLIBRARYDIR}/libcocos2d.lib
                                        ${COCOS2DLIBRARYDIR}/libcrypto.lib
                                        ${COCOS2DLIBRARYDIR}/libcurl.lib
                                        ${COCOS2DLIBRARYDIR}/libiconv.lib
                                        ${COCOS2DLIBRARYDIR}/libjpeg.lib
                                        ${COCOS2DLIBRARYDIR}/libluacocos2d.lib
                                        ${COCOS2DLIBRARYDIR}/libmpg123.lib
                                        ${COCOS2DLIBRARYDIR}/libogg.lib
                                        ${COCOS2DLIBRARYDIR}/libpng.lib
                                        ${COCOS2DLIBRARYDIR}/librecast.lib
                                        ${COCOS2DLIBRARYDIR}/libsimulator.lib
                                        ${COCOS2DLIBRARYDIR}/libSpine.lib
                                        ${COCOS2DLIBRARYDIR}/libssl.lib
                                        ${COCOS2DLIBRARYDIR}/libtiff.lib
                                        ${COCOS2DLIBRARYDIR}/libvorbis.lib
                                        ${COCOS2DLIBRARYDIR}/libvorbisfile.lib
                                        ${COCOS2DLIBRARYDIR}/libwebp.lib
                                        ${COCOS2DLIBRARYDIR}/libzlib.lib
                                        ${COCOS2DLIBRARYDIR}/lua51.lib
                                        ${COCOS2DLIBRARYDIR}/OpenAL32.lib
                                        ${COCOS2DLIBRARYDIR}/sqlite3.lib
                                        ${COCOS2DLIBRARYDIR}/uv_a.lib
                                        ${COCOS2DLIBRARYDIR}/websockets.lib
                                        )
ELSE()
    target_link_libraries(CLIENT 
                                        PUBLIC
                                        libNDKLIBRARY
                                        pthread
                                        ${COCOS2DLIBRARYDIR}/libcocos2d.a
                                        ######################
                                        GLEW GL X11 Xi Xrandr Xxf86vm Xinerama Xcursor rt m######################
                                        ######################
                                        ${COCOS2DLIBRARYDIR}/libext_clipper.a
                                        ${COCOS2DLIBRARYDIR}/libext_convertUTF.a
                                        ${COCOS2DLIBRARYDIR}/libext_edtaa3func.a
                                        ${COCOS2DLIBRARYDIR}/libexternal.a
                                        ${COCOS2DLIBRARYDIR}/libext_luasocket.a
                                        ${COCOS2DLIBRARYDIR}/libext_md5.a
                                        ${COCOS2DLIBRARYDIR}/libext_poly2tri.a
                                        ${COCOS2DLIBRARYDIR}/libext_recast.a
                                        ${COCOS2DLIBRARYDIR}/libext_tinyxml2.a
                                        ${COCOS2DLIBRARYDIR}/libext_tolua.a
                                        ${COCOS2DLIBRARYDIR}/libext_unzip.a
                                        ${COCOS2DLIBRARYDIR}/libext_xxhash.a
                                        ${COCOS2DLIBRARYDIR}/libluacocos2d.a
                                        ${COCOS2DLIBRARYDIR}/libext_xxtea.a
                                        ${COCOSEX}/freetype2/prebuilt/linux/64-bit/libfreetype.a
                                        ${COCOSEX}/jpeg/prebuilt/linux/64-bit/libjpeg.a
                                        ${COCOSEX}/tiff/prebuilt/linux/64-bit/libtiff.a
                                        ${COCOSEX}/webp/prebuilt/linux/64-bit/libwebp.a
                                        ${COCOSEX}/uv/prebuilt/linux/64-bit/libuv_a.a
                                        ${COCOSEX}/openssl/prebuilt/linux/64-bit/libcrypto.a
                                        ${COCOSEX}/openssl/prebuilt/linux/64-bit/libssl.a
                                        ${COCOSEX}/chipmunk/prebuilt/linux/64-bit/libchipmunk.a
                                        ${COCOSEX}/Box2D/prebuilt/linux/64-bit/libbox2d.a
                                        ${COCOSEX}/glfw3/prebuilt/linux/libglfw3.a
                                        ${COCOSEX}/websockets/prebuilt/linux/64-bit/libwebsockets.a
                                        ${COCOSEX}/bullet/prebuilt/linux/64-bit/libBulletCollision.a
                                        ${COCOSEX}/bullet/prebuilt/linux/64-bit/libBulletDynamics.a
                                        ${COCOSEX}/bullet/prebuilt/linux/64-bit/libBulletMultiThreaded.a
                                        ${COCOSEX}/bullet/prebuilt/linux/64-bit/libLinearMath.a
                                        ${COCOSEX}/bullet/prebuilt/linux/64-bit/libMiniCL.a
                                        ######################
                                        c g m rt z fontconfig libpng16.a######################
                                        ######################
                                        )

}

 

{

cmake_minimum_required(VERSION 3.5)

project(libNDKLIBRARY)

######################
message("please define target platform")
add_definitions(-D WINDOWS)
#add_definitions(-D LINUX)

include_directories(../Pro/frameworks)
include_directories(../Pro/frameworks/cocos2d-x)
include_directories(../Pro/frameworks/cocos2d-x/cocos)
include_directories(../Pro/frameworks/cocos2d-x/external)
include_directories(../Pro/frameworks/cocos2d-x/external/glfw3/include/win32)
include_directories(../Pro/frameworks/cocos2d-x/external/win32-specific/gles/include/OGLES)
include_directories(../Pro/frameworks/cocos2d-x/external/lua)
include_directories(../Pro/frameworks/cocos2d-x/external/lua/cjson)
include_directories(../Pro/frameworks/cocos2d-x/external/lua/lua)
include_directories(../Pro/frameworks/cocos2d-x/external/lua/luajit)
include_directories(../Pro/frameworks/cocos2d-x/external/lua/luasocket)
include_directories(../Pro/frameworks/cocos2d-x/external/lua/tolua)
include_directories(../Pro/frameworks/cocos2d-x/external/tinyxml2)

# 根据库文件代码生成静态库
add_library(libNDKLIBRARY STATIC

            src/SOIL2/etc1_utils.c
            src/SOIL2/image_DXT.c
            src/SOIL2/image_helper.c
            src/SOIL2/SOIL2.c
           
            src/yuv/source/compare.cc
            src/yuv/source/compare.cc
            src/yuv/source/compare_common.cc
            src/yuv/source/compare_gcc.cc
            src/yuv/source/compare_mmi.cc
            src/yuv/source/compare_msa.cc
            src/yuv/source/compare_neon.cc
            src/yuv/source/compare_neon64.cc
            src/yuv/source/compare_win.cc
            src/yuv/source/convert.cc
            src/yuv/source/convert_argb.cc
            src/yuv/source/convert_from.cc
            src/yuv/source/convert_from_argb.cc
            src/yuv/source/convert_jpeg.cc
            src/yuv/source/convert_to_argb.cc
            src/yuv/source/convert_to_i420.cc
            src/yuv/source/cpu_id.cc
            src/yuv/source/mjpeg_decoder.cc
            src/yuv/source/mjpeg_validate.cc
            src/yuv/source/planar_functions.cc
            src/yuv/source/rotate.cc
            src/yuv/source/rotate_any.cc
            src/yuv/source/rotate_argb.cc
            src/yuv/source/rotate_common.cc
            src/yuv/source/rotate_gcc.cc
            src/yuv/source/rotate_mmi.cc
            src/yuv/source/rotate_msa.cc
            src/yuv/source/rotate_neon.cc
            src/yuv/source/rotate_neon64.cc
            src/yuv/source/rotate_win.cc
            src/yuv/source/row_any.cc
            src/yuv/source/row_common.cc
            src/yuv/source/row_gcc.cc
            src/yuv/source/row_mmi.cc
            src/yuv/source/row_msa.cc
            src/yuv/source/row_neon.cc
            src/yuv/source/row_neon64.cc
            src/yuv/source/row_win.cc
            src/yuv/source/scale.cc
            src/yuv/source/scale_any.cc
            src/yuv/source/scale_argb.cc
            src/yuv/source/scale_common.cc
            src/yuv/source/scale_gcc.cc
            src/yuv/source/scale_mmi.cc
            src/yuv/source/scale_msa.cc
            src/yuv/source/scale_neon.cc
            src/yuv/source/scale_neon64.cc
            src/yuv/source/scale_win.cc
            src/yuv/source/video_common.cc
           
            src/sqlite/sqlite3.c
           
            src/xml/XML.cpp
            src/xml/XML_S.cpp
            src/xml/tinyxml/tinystr.cpp
            src/xml/tinyxml/tinyxml.cpp
            src/xml/tinyxml/tinyxmlerror.cpp
            src/xml/tinyxml/tinyxmlparser.cpp
           
            src/socket/Private/Encryption.cpp
            src/socket/Private/MemoryPool.cpp
            src/socket/Private/Package.cpp
            src/socket/Private/ThreadPool.cpp
            src/socket/PlatformSocket.cpp
            src/socket/TCPSocket.cpp
           
            src/Tools/Tools.cpp
           
            src/iconv/iconv/iconv.c
            src/iconv/iconv/localcharset.c
            src/iconv/iconv/relocatable.c
           
            src/guid/guid.cpp
           
           
            #Dragon Bones Project Engine
            src/DragonBones/DragonBone_s.cpp
            src/DragonBones/lua_DragonBones.cpp
            src/DragonBones/DragonBones/animation/Animation.cpp
            src/DragonBones/DragonBones/animation/AnimationState.cpp
            src/DragonBones/DragonBones/animation/BaseTimelineState.cpp
            src/DragonBones/DragonBones/animation/TimelineState.cpp
            src/DragonBones/DragonBones/animation/WorldClock.cpp
            src/DragonBones/DragonBones/armature/Armature.cpp
            src/DragonBones/DragonBones/armature/Bone.cpp
            src/DragonBones/DragonBones/armature/Constraint.cpp
            src/DragonBones/DragonBones/armature/DeformVertices.cpp
            src/DragonBones/DragonBones/armature/Slot.cpp
            src/DragonBones/DragonBones/armature/TransformObject.cpp
            src/DragonBones/DragonBones/cocos2dx/CCArmatureDisplay.cpp
            src/DragonBones/DragonBones/cocos2dx/CCFactory.cpp
            src/DragonBones/DragonBones/cocos2dx/CCSlot.cpp
            src/DragonBones/DragonBones/cocos2dx/CCTextureAtlasData.cpp
            src/DragonBones/DragonBones/core/BaseObject.cpp
            src/DragonBones/DragonBones/core/DragonBones.cpp
            src/DragonBones/DragonBones/event/EventObject.cpp
            src/DragonBones/DragonBones/factory/BaseFactory.cpp
            src/DragonBones/DragonBones/geom/Point.cpp
            src/DragonBones/DragonBones/geom/Transform.cpp
            src/DragonBones/DragonBones/model/AnimationConfig.cpp
            src/DragonBones/DragonBones/model/AnimationData.cpp
            src/DragonBones/DragonBones/model/ArmatureData.cpp
            src/DragonBones/DragonBones/model/BoundingBoxData.cpp
            src/DragonBones/DragonBones/model/CanvasData.cpp
            src/DragonBones/DragonBones/model/ConstraintData.cpp
            src/DragonBones/DragonBones/model/DisplayData.cpp
            src/DragonBones/DragonBones/model/DragonBonesData.cpp
            src/DragonBones/DragonBones/model/SkinData.cpp
            src/DragonBones/DragonBones/model/TextureAtlasData.cpp
            src/DragonBones/DragonBones/model/UserData.cpp
            src/DragonBones/DragonBones/parser/BinaryDataParser.cpp
            src/DragonBones/DragonBones/parser/DataParser.cpp
            src/DragonBones/DragonBones/parser/JSONDataParser.cpp
           
           
            src/framework/framework.cpp


            ######################lua frame

            src/DragonBones/lua_DragonBones.cpp
            src/framework/lua_framework.cpp
            src/iconv/lua_UTF8.cpp
            src/xml/lua_XML.cpp
            src/socket/Private/lua_Encryption.cpp
            src/socket/Private/lua_Package.cpp
            src/socket/Private/lua_ThreadPool.cpp
            src/socket/Private/lua_MemoryPool.cpp
            src/socket/lua_TCPSocket.cpp


            #################################
            src/Tools/SendFile.cpp
            src/Tools/RecvFile.cpp

    )

# 包含指定头文件所在的目录
target_include_directories(libNDKLIBRARY PUBLIC  ${PROJECT_SOURCE_DIR}/src/SOIL2)
target_include_directories(libNDKLIBRARY PUBLIC  ${PROJECT_SOURCE_DIR}/src/yuv/include)
target_include_directories(libNDKLIBRARY PUBLIC  ${PROJECT_SOURCE_DIR}/src/sqlite)
target_include_directories(libNDKLIBRARY PUBLIC  ${PROJECT_SOURCE_DIR}/src/socket)
target_include_directories(libNDKLIBRARY PUBLIC  ${PROJECT_SOURCE_DIR}/src/socket/Private)
target_include_directories(libNDKLIBRARY PUBLIC  ${PROJECT_SOURCE_DIR}/src/Tools)
target_include_directories(libNDKLIBRARY PUBLIC  ${PROJECT_SOURCE_DIR}/src/iconv)
target_include_directories(libNDKLIBRARY PUBLIC  ${PROJECT_SOURCE_DIR}/src/iconv/iconv)
target_include_directories(libNDKLIBRARY PUBLIC  ${PROJECT_SOURCE_DIR}/src/guid)
target_include_directories(libNDKLIBRARY PUBLIC  ${PROJECT_SOURCE_DIR}/src/DragonBones)
target_include_directories(libNDKLIBRARY PUBLIC  ${PROJECT_SOURCE_DIR}/src/framework)
target_include_directories(libNDKLIBRARY PUBLIC  ${PROJECT_SOURCE_DIR}/src/xml)



# copy
file(COPY src/socket/PlatformSocket.h               DESTINATION ./../include/socket)
file(COPY src/socket/TCPSocket.h                        DESTINATION ./../include/socket)
file(COPY src/socket/Private/Encryption.h          DESTINATION ./../include/socket/Private)
file(COPY src/socket/Private/lua_Encryption.h   DESTINATION ./../include/socket/Private)
file(COPY src/socket/Private/lua_Package.h              DESTINATION ./../include/socket/Private)
file(COPY src/socket/Private/lua_ThreadPool.h     DESTINATION ./../include/socket/Private)
file(COPY src/socket/Private/MemoryPool.h            DESTINATION ./../include/socket/Private)
file(COPY src/socket/Private/lua_MemoryPool.h      DESTINATION ./../include/socket/Private)
file(COPY src/socket/Private/Package.h               DESTINATION ./../include/socket/Private)
file(COPY src/socket/Private/ThreadPool.h         DESTINATION ./../include/socket/Private)
file(COPY src/Tools/RecvFile.h                               DESTINATION ./../include/Tools)
file(COPY src/Tools/SendFile.h                               DESTINATION ./../include/Tools)
file(COPY src/Tools/Tools.h                                    DESTINATION ./../include/Tools)
file(COPY src/framework/framework.h                   DESTINATION ./../include/framework)
file(COPY src/framework/lua_framework.h             DESTINATION ./../include/framework)






######################################################################
######################################################################
######################################################################
######################################################################
# 1       WINDOWS
# 0       LINUX
set(PLATFOROM 1)

set(COCOS2DLIBRARYDIR ${PROJECT_SOURCE_DIR}/../Pro/frameworks/runtime-src/proj.win32/Debug.win32)

IF(PLATFOROM)
    message("WINDOWS")
    set(WINDOWSDLLDIR ${PROJECT_SOURCE_DIR}/../Pro/simulator/win32)

    file(COPY ${WINDOWSDLLDIR}/glew32.dll                 DESTINATION ${PROJECT_SOURCE_DIR}/build/Debug)
    file(COPY ${WINDOWSDLLDIR}/iconv.dll                     DESTINATION ${PROJECT_SOURCE_DIR}/build/Debug)
    file(COPY ${WINDOWSDLLDIR}/libcocos2d.dll           DESTINATION ${PROJECT_SOURCE_DIR}/build/Debug)
    file(COPY ${WINDOWSDLLDIR}/libcrypto-1_1.dll       DESTINATION ${PROJECT_SOURCE_DIR}/build/Debug)
    file(COPY ${WINDOWSDLLDIR}/libcurl.dll                   DESTINATION ${PROJECT_SOURCE_DIR}/build/Debug)
    file(COPY ${WINDOWSDLLDIR}/libmpg123.dll            DESTINATION ${PROJECT_SOURCE_DIR}/build/Debug)
    file(COPY ${WINDOWSDLLDIR}/libogg.dll                   DESTINATION ${PROJECT_SOURCE_DIR}/build/Debug)
    file(COPY ${WINDOWSDLLDIR}/libssl-1_1.dll              DESTINATION ${PROJECT_SOURCE_DIR}/build/Debug)
    file(COPY ${WINDOWSDLLDIR}/libvorbis.dll               DESTINATION ${PROJECT_SOURCE_DIR}/build/Debug)
    file(COPY ${WINDOWSDLLDIR}/libvorbisfile.dll         DESTINATION ${PROJECT_SOURCE_DIR}/build/Debug)
    file(COPY ${WINDOWSDLLDIR}/lua51.dll                     DESTINATION ${PROJECT_SOURCE_DIR}/build/Debug)
    file(COPY ${WINDOWSDLLDIR}/OpenAL32.dll              DESTINATION ${PROJECT_SOURCE_DIR}/build/Debug)
    file(COPY ${WINDOWSDLLDIR}/sqlite3.dll                  DESTINATION ${PROJECT_SOURCE_DIR}/build/Debug)
    file(COPY ${WINDOWSDLLDIR}/uv.dll                          DESTINATION ${PROJECT_SOURCE_DIR}/build/Debug)
    file(COPY ${WINDOWSDLLDIR}/websockets.dll         DESTINATION ${PROJECT_SOURCE_DIR}/build/Debug)
    file(COPY ${WINDOWSDLLDIR}/zlib1.dll                      DESTINATION ${PROJECT_SOURCE_DIR}/build/Debug)

ELSE()
    message("LINUX")
    set(COCOS2DLIBRARYDIR ${PROJECT_SOURCE_DIR}/../Pro/LinuxBuild/lib)
    set(COCOSEX ${PROJECT_SOURCE_DIR}/../Pro/frameworks/cocos2d-x/external)
ENDIF()

######################################################################
##SRFile Project test
######################################################################
set(SRFILE SRFile)

add_executable(SRFile vs2017/NDKLIB/SRFile/main.cpp)

IF(PLATFOROM)
    target_link_libraries(SRFile
                                    PUBLIC
                                    libNDKLIBRARY
                                    ${COCOS2DLIBRARYDIR}/freetype.lib
                                    ${COCOS2DLIBRARYDIR}/glew32.lib
                                    ${COCOS2DLIBRARYDIR}/glfw3.lib
                                    ${COCOS2DLIBRARYDIR}/libbox2d.lib
                                    ${COCOS2DLIBRARYDIR}/libbullet.lib
                                    ${COCOS2DLIBRARYDIR}/libchipmunk.lib
                                    ${COCOS2DLIBRARYDIR}/libcocos2d.lib
                                    ${COCOS2DLIBRARYDIR}/libcrypto.lib
                                    ${COCOS2DLIBRARYDIR}/libcurl.lib
                                    ${COCOS2DLIBRARYDIR}/libiconv.lib
                                    ${COCOS2DLIBRARYDIR}/libjpeg.lib
                                    ${COCOS2DLIBRARYDIR}/libluacocos2d.lib
                                    ${COCOS2DLIBRARYDIR}/libmpg123.lib
                                    ${COCOS2DLIBRARYDIR}/libogg.lib
                                    ${COCOS2DLIBRARYDIR}/libpng.lib
                                    ${COCOS2DLIBRARYDIR}/librecast.lib
                                    ${COCOS2DLIBRARYDIR}/libsimulator.lib
                                    ${COCOS2DLIBRARYDIR}/libSpine.lib
                                    ${COCOS2DLIBRARYDIR}/libssl.lib
                                    ${COCOS2DLIBRARYDIR}/libtiff.lib
                                    ${COCOS2DLIBRARYDIR}/libvorbis.lib
                                    ${COCOS2DLIBRARYDIR}/libvorbisfile.lib
                                    ${COCOS2DLIBRARYDIR}/libwebp.lib
                                    ${COCOS2DLIBRARYDIR}/libzlib.lib
                                    ${COCOS2DLIBRARYDIR}/lua51.lib
                                    ${COCOS2DLIBRARYDIR}/OpenAL32.lib
                                    ${COCOS2DLIBRARYDIR}/sqlite3.lib
                                    ${COCOS2DLIBRARYDIR}/uv_a.lib
                                    ${COCOS2DLIBRARYDIR}/websockets.lib
                                    )
ELSE()
    target_link_libraries(SRFile 
                                    PUBLIC
                                    libNDKLIBRARY
                                    pthread
                                    ${COCOS2DLIBRARYDIR}/libcocos2d.a
                                    ######################
                                    GLEW GL X11 Xi Xrandr Xxf86vm Xinerama Xcursor rt m######################
                                    ######################
                                    ${COCOS2DLIBRARYDIR}/libext_clipper.a
                                    ${COCOS2DLIBRARYDIR}/libext_convertUTF.a
                                    ${COCOS2DLIBRARYDIR}/libext_edtaa3func.a
                                    ${COCOS2DLIBRARYDIR}/libexternal.a
                                    ${COCOS2DLIBRARYDIR}/libext_luasocket.a
                                    ${COCOS2DLIBRARYDIR}/libext_md5.a
                                    ${COCOS2DLIBRARYDIR}/libext_poly2tri.a
                                    ${COCOS2DLIBRARYDIR}/libext_recast.a
                                    ${COCOS2DLIBRARYDIR}/libext_tinyxml2.a
                                    ${COCOS2DLIBRARYDIR}/libext_tolua.a
                                    ${COCOS2DLIBRARYDIR}/libext_unzip.a
                                    ${COCOS2DLIBRARYDIR}/libext_xxhash.a
                                    ${COCOS2DLIBRARYDIR}/libluacocos2d.a
                                    ${COCOS2DLIBRARYDIR}/libext_xxtea.a
                                    ${COCOSEX}/freetype2/prebuilt/linux/64-bit/libfreetype.a
                                    ${COCOSEX}/jpeg/prebuilt/linux/64-bit/libjpeg.a
                                    ${COCOSEX}/tiff/prebuilt/linux/64-bit/libtiff.a
                                    ${COCOSEX}/webp/prebuilt/linux/64-bit/libwebp.a
                                    ${COCOSEX}/uv/prebuilt/linux/64-bit/libuv_a.a
                                    ${COCOSEX}/openssl/prebuilt/linux/64-bit/libcrypto.a
                                    ${COCOSEX}/openssl/prebuilt/linux/64-bit/libssl.a
                                    ${COCOSEX}/chipmunk/prebuilt/linux/64-bit/libchipmunk.a
                                    ${COCOSEX}/Box2D/prebuilt/linux/64-bit/libbox2d.a
                                    ${COCOSEX}/glfw3/prebuilt/linux/libglfw3.a
                                    ${COCOSEX}/websockets/prebuilt/linux/64-bit/libwebsockets.a
                                    ${COCOSEX}/bullet/prebuilt/linux/64-bit/libBulletCollision.a
                                    ${COCOSEX}/bullet/prebuilt/linux/64-bit/libBulletDynamics.a
                                    ${COCOSEX}/bullet/prebuilt/linux/64-bit/libBulletMultiThreaded.a
                                    ${COCOSEX}/bullet/prebuilt/linux/64-bit/libLinearMath.a
                                    ${COCOSEX}/bullet/prebuilt/linux/64-bit/libMiniCL.a
                                    c g m rt z fontconfig libpng16.a######################
                                    )
ENDIF()

######################################################################
##Client Project test
######################################################################
set(CLIENT Client)

add_executable(CLIENT vs2017/client/main.cpp)

IF(PLATFOROM)
    target_link_libraries(CLIENT 
                                        PUBLIC
                                        libNDKLIBRARY
                                        ${COCOS2DLIBRARYDIR}/freetype.lib
                                        ${COCOS2DLIBRARYDIR}/glew32.lib
                                        ${COCOS2DLIBRARYDIR}/glfw3.lib
                                        ${COCOS2DLIBRARYDIR}/libbox2d.lib
                                        ${COCOS2DLIBRARYDIR}/libbullet.lib
                                        ${COCOS2DLIBRARYDIR}/libchipmunk.lib
                                        ${COCOS2DLIBRARYDIR}/libcocos2d.lib
                                        ${COCOS2DLIBRARYDIR}/libcrypto.lib
                                        ${COCOS2DLIBRARYDIR}/libcurl.lib
                                        ${COCOS2DLIBRARYDIR}/libiconv.lib
                                        ${COCOS2DLIBRARYDIR}/libjpeg.lib
                                        ${COCOS2DLIBRARYDIR}/libluacocos2d.lib
                                        ${COCOS2DLIBRARYDIR}/libmpg123.lib
                                        ${COCOS2DLIBRARYDIR}/libogg.lib
                                        ${COCOS2DLIBRARYDIR}/libpng.lib
                                        ${COCOS2DLIBRARYDIR}/librecast.lib
                                        ${COCOS2DLIBRARYDIR}/libsimulator.lib
                                        ${COCOS2DLIBRARYDIR}/libSpine.lib
                                        ${COCOS2DLIBRARYDIR}/libssl.lib
                                        ${COCOS2DLIBRARYDIR}/libtiff.lib
                                        ${COCOS2DLIBRARYDIR}/libvorbis.lib
                                        ${COCOS2DLIBRARYDIR}/libvorbisfile.lib
                                        ${COCOS2DLIBRARYDIR}/libwebp.lib
                                        ${COCOS2DLIBRARYDIR}/libzlib.lib
                                        ${COCOS2DLIBRARYDIR}/lua51.lib
                                        ${COCOS2DLIBRARYDIR}/OpenAL32.lib
                                        ${COCOS2DLIBRARYDIR}/sqlite3.lib
                                        ${COCOS2DLIBRARYDIR}/uv_a.lib
                                        ${COCOS2DLIBRARYDIR}/websockets.lib
                                        )
ELSE()
    target_link_libraries(CLIENT 
                                        PUBLIC
                                        libNDKLIBRARY
                                        pthread
                                        ${COCOS2DLIBRARYDIR}/libcocos2d.a
                                        ######################
                                        GLEW GL X11 Xi Xrandr Xxf86vm Xinerama Xcursor rt m######################
                                        ######################
                                        ${COCOS2DLIBRARYDIR}/libext_clipper.a
                                        ${COCOS2DLIBRARYDIR}/libext_convertUTF.a
                                        ${COCOS2DLIBRARYDIR}/libext_edtaa3func.a
                                        ${COCOS2DLIBRARYDIR}/libexternal.a
                                        ${COCOS2DLIBRARYDIR}/libext_luasocket.a
                                        ${COCOS2DLIBRARYDIR}/libext_md5.a
                                        ${COCOS2DLIBRARYDIR}/libext_poly2tri.a
                                        ${COCOS2DLIBRARYDIR}/libext_recast.a
                                        ${COCOS2DLIBRARYDIR}/libext_tinyxml2.a
                                        ${COCOS2DLIBRARYDIR}/libext_tolua.a
                                        ${COCOS2DLIBRARYDIR}/libext_unzip.a
                                        ${COCOS2DLIBRARYDIR}/libext_xxhash.a
                                        ${COCOS2DLIBRARYDIR}/libluacocos2d.a
                                        ${COCOS2DLIBRARYDIR}/libext_xxtea.a
                                        ${COCOSEX}/freetype2/prebuilt/linux/64-bit/libfreetype.a
                                        ${COCOSEX}/jpeg/prebuilt/linux/64-bit/libjpeg.a
                                        ${COCOSEX}/tiff/prebuilt/linux/64-bit/libtiff.a
                                        ${COCOSEX}/webp/prebuilt/linux/64-bit/libwebp.a
                                        ${COCOSEX}/uv/prebuilt/linux/64-bit/libuv_a.a
                                        ${COCOSEX}/openssl/prebuilt/linux/64-bit/libcrypto.a
                                        ${COCOSEX}/openssl/prebuilt/linux/64-bit/libssl.a
                                        ${COCOSEX}/chipmunk/prebuilt/linux/64-bit/libchipmunk.a
                                        ${COCOSEX}/Box2D/prebuilt/linux/64-bit/libbox2d.a
                                        ${COCOSEX}/glfw3/prebuilt/linux/libglfw3.a
                                        ${COCOSEX}/websockets/prebuilt/linux/64-bit/libwebsockets.a
                                        ${COCOSEX}/bullet/prebuilt/linux/64-bit/libBulletCollision.a
                                        ${COCOSEX}/bullet/prebuilt/linux/64-bit/libBulletDynamics.a
                                        ${COCOSEX}/bullet/prebuilt/linux/64-bit/libBulletMultiThreaded.a
                                        ${COCOSEX}/bullet/prebuilt/linux/64-bit/libLinearMath.a
                                        ${COCOSEX}/bullet/prebuilt/linux/64-bit/libMiniCL.a
                                        ######################
                                        c g m rt z fontconfig libpng16.a######################
                                        ######################
                                        )
ENDIF()

 

 


}












cmake_minimum_required(VERSION 3.5)

project(libNDKLIBRARY)

######################
message("please define target platform")
add_definitions(-D WINDOWS)
#add_definitions(-D LINUX)

include_directories(../Pro/frameworks)
include_directories(../Pro/frameworks/cocos2d-x)
include_directories(../Pro/frameworks/cocos2d-x/cocos)
include_directories(../Pro/frameworks/cocos2d-x/external)
include_directories(../Pro/frameworks/cocos2d-x/external/glfw3/include/win32)
include_directories(../Pro/frameworks/cocos2d-x/external/win32-specific/gles/include/OGLES)
include_directories(../Pro/frameworks/cocos2d-x/external/lua)
include_directories(../Pro/frameworks/cocos2d-x/external/lua/cjson)
include_directories(../Pro/frameworks/cocos2d-x/external/lua/lua)
include_directories(../Pro/frameworks/cocos2d-x/external/lua/luajit)
include_directories(../Pro/frameworks/cocos2d-x/external/lua/luasocket)
include_directories(../Pro/frameworks/cocos2d-x/external/lua/tolua)
include_directories(../Pro/frameworks/cocos2d-x/external/tinyxml2)

# 根据库文件代码生成静态库
add_library(libNDKLIBRARY STATIC

            src/SOIL2/etc1_utils.c
            src/SOIL2/image_DXT.c
            src/SOIL2/image_helper.c
            src/SOIL2/SOIL2.c
            
            src/yuv/source/compare.cc
            src/yuv/source/compare.cc
            src/yuv/source/compare_common.cc
            src/yuv/source/compare_gcc.cc
            src/yuv/source/compare_mmi.cc
            src/yuv/source/compare_msa.cc
            src/yuv/source/compare_neon.cc
            src/yuv/source/compare_neon64.cc
            src/yuv/source/compare_win.cc
            src/yuv/source/convert.cc
            src/yuv/source/convert_argb.cc
            src/yuv/source/convert_from.cc
            src/yuv/source/convert_from_argb.cc
            src/yuv/source/convert_jpeg.cc
            src/yuv/source/convert_to_argb.cc
            src/yuv/source/convert_to_i420.cc
            src/yuv/source/cpu_id.cc
            src/yuv/source/mjpeg_decoder.cc
            src/yuv/source/mjpeg_validate.cc
            src/yuv/source/planar_functions.cc
            src/yuv/source/rotate.cc
            src/yuv/source/rotate_any.cc
            src/yuv/source/rotate_argb.cc
            src/yuv/source/rotate_common.cc
            src/yuv/source/rotate_gcc.cc
            src/yuv/source/rotate_mmi.cc
            src/yuv/source/rotate_msa.cc
            src/yuv/source/rotate_neon.cc
            src/yuv/source/rotate_neon64.cc
            src/yuv/source/rotate_win.cc
            src/yuv/source/row_any.cc
            src/yuv/source/row_common.cc
            src/yuv/source/row_gcc.cc
            src/yuv/source/row_mmi.cc
            src/yuv/source/row_msa.cc
            src/yuv/source/row_neon.cc
            src/yuv/source/row_neon64.cc
            src/yuv/source/row_win.cc
            src/yuv/source/scale.cc
            src/yuv/source/scale_any.cc
            src/yuv/source/scale_argb.cc
            src/yuv/source/scale_common.cc
            src/yuv/source/scale_gcc.cc
            src/yuv/source/scale_mmi.cc
            src/yuv/source/scale_msa.cc
            src/yuv/source/scale_neon.cc
            src/yuv/source/scale_neon64.cc
            src/yuv/source/scale_win.cc
            src/yuv/source/video_common.cc
            
            src/sqlite/sqlite3.c
            
            src/xml/XML.cpp
            src/xml/XML_S.cpp
            src/xml/tinyxml/tinystr.cpp
            src/xml/tinyxml/tinyxml.cpp
            src/xml/tinyxml/tinyxmlerror.cpp
            src/xml/tinyxml/tinyxmlparser.cpp
            
            src/socket/Private/Encryption.cpp
            src/socket/Private/MemoryPool.cpp
            src/socket/Private/Package.cpp
            src/socket/Private/ThreadPool.cpp
            src/socket/PlatformSocket.cpp
            src/socket/TCPSocket.cpp
            
            src/Tools/Tools.cpp
            
            src/iconv/iconv/iconv.c
            src/iconv/iconv/localcharset.c
            src/iconv/iconv/relocatable.c
            
            src/guid/guid.cpp
            
            
            #Dragon Bones Project Engine
            src/DragonBones/DragonBone_s.cpp
            src/DragonBones/lua_DragonBones.cpp
            src/DragonBones/DragonBones/animation/Animation.cpp
            src/DragonBones/DragonBones/animation/AnimationState.cpp
            src/DragonBones/DragonBones/animation/BaseTimelineState.cpp
            src/DragonBones/DragonBones/animation/TimelineState.cpp
            src/DragonBones/DragonBones/animation/WorldClock.cpp
            src/DragonBones/DragonBones/armature/Armature.cpp
            src/DragonBones/DragonBones/armature/Bone.cpp
            src/DragonBones/DragonBones/armature/Constraint.cpp
            src/DragonBones/DragonBones/armature/DeformVertices.cpp
            src/DragonBones/DragonBones/armature/Slot.cpp
            src/DragonBones/DragonBones/armature/TransformObject.cpp
            src/DragonBones/DragonBones/cocos2dx/CCArmatureDisplay.cpp
            src/DragonBones/DragonBones/cocos2dx/CCFactory.cpp
            src/DragonBones/DragonBones/cocos2dx/CCSlot.cpp
            src/DragonBones/DragonBones/cocos2dx/CCTextureAtlasData.cpp
            src/DragonBones/DragonBones/core/BaseObject.cpp
            src/DragonBones/DragonBones/core/DragonBones.cpp
            src/DragonBones/DragonBones/event/EventObject.cpp
            src/DragonBones/DragonBones/factory/BaseFactory.cpp
            src/DragonBones/DragonBones/geom/Point.cpp
            src/DragonBones/DragonBones/geom/Transform.cpp
            src/DragonBones/DragonBones/model/AnimationConfig.cpp
            src/DragonBones/DragonBones/model/AnimationData.cpp
            src/DragonBones/DragonBones/model/ArmatureData.cpp
            src/DragonBones/DragonBones/model/BoundingBoxData.cpp
            src/DragonBones/DragonBones/model/CanvasData.cpp
            src/DragonBones/DragonBones/model/ConstraintData.cpp
            src/DragonBones/DragonBones/model/DisplayData.cpp
            src/DragonBones/DragonBones/model/DragonBonesData.cpp
            src/DragonBones/DragonBones/model/SkinData.cpp
            src/DragonBones/DragonBones/model/TextureAtlasData.cpp
            src/DragonBones/DragonBones/model/UserData.cpp
            src/DragonBones/DragonBones/parser/BinaryDataParser.cpp
            src/DragonBones/DragonBones/parser/DataParser.cpp
            src/DragonBones/DragonBones/parser/JSONDataParser.cpp
            
            
            src/framework/framework.cpp


            ######################lua frame

            src/DragonBones/lua_DragonBones.cpp
            src/framework/lua_framework.cpp
            src/iconv/lua_UTF8.cpp
            src/xml/lua_XML.cpp
            src/socket/Private/lua_Encryption.cpp
            src/socket/Private/lua_Package.cpp
            src/socket/Private/lua_ThreadPool.cpp
            src/socket/Private/lua_MemoryPool.cpp
            src/socket/lua_TCPSocket.cpp


            #################################
            src/Tools/SendFile.cpp
            src/Tools/RecvFile.cpp

    )

# 包含指定头文件所在的目录
target_include_directories(libNDKLIBRARY PUBLIC  ${PROJECT_SOURCE_DIR}/src/SOIL2)
target_include_directories(libNDKLIBRARY PUBLIC  ${PROJECT_SOURCE_DIR}/src/yuv/include)
target_include_directories(libNDKLIBRARY PUBLIC  ${PROJECT_SOURCE_DIR}/src/sqlite)
target_include_directories(libNDKLIBRARY PUBLIC  ${PROJECT_SOURCE_DIR}/src/socket)
target_include_directories(libNDKLIBRARY PUBLIC  ${PROJECT_SOURCE_DIR}/src/socket/Private)
target_include_directories(libNDKLIBRARY PUBLIC  ${PROJECT_SOURCE_DIR}/src/Tools)
target_include_directories(libNDKLIBRARY PUBLIC  ${PROJECT_SOURCE_DIR}/src/iconv)
target_include_directories(libNDKLIBRARY PUBLIC  ${PROJECT_SOURCE_DIR}/src/iconv/iconv)
target_include_directories(libNDKLIBRARY PUBLIC  ${PROJECT_SOURCE_DIR}/src/guid)
target_include_directories(libNDKLIBRARY PUBLIC  ${PROJECT_SOURCE_DIR}/src/DragonBones)
target_include_directories(libNDKLIBRARY PUBLIC  ${PROJECT_SOURCE_DIR}/src/framework)
target_include_directories(libNDKLIBRARY PUBLIC  ${PROJECT_SOURCE_DIR}/src/xml)



# copy
file(COPY src/socket/PlatformSocket.h               DESTINATION ./../include/socket)
file(COPY src/socket/TCPSocket.h                        DESTINATION ./../include/socket)
file(COPY src/socket/Private/Encryption.h          DESTINATION ./../include/socket/Private)
file(COPY src/socket/Private/lua_Encryption.h   DESTINATION ./../include/socket/Private)
file(COPY src/socket/Private/lua_Package.h              DESTINATION ./../include/socket/Private)
file(COPY src/socket/Private/lua_ThreadPool.h     DESTINATION ./../include/socket/Private)
file(COPY src/socket/Private/MemoryPool.h            DESTINATION ./../include/socket/Private)
file(COPY src/socket/Private/lua_MemoryPool.h      DESTINATION ./../include/socket/Private)
file(COPY src/socket/Private/Package.h               DESTINATION ./../include/socket/Private)
file(COPY src/socket/Private/ThreadPool.h         DESTINATION ./../include/socket/Private)
file(COPY src/Tools/RecvFile.h                               DESTINATION ./../include/Tools)
file(COPY src/Tools/SendFile.h                               DESTINATION ./../include/Tools)
file(COPY src/Tools/Tools.h                                    DESTINATION ./../include/Tools)
file(COPY src/framework/framework.h                   DESTINATION ./../include/framework)
file(COPY src/framework/lua_framework.h             DESTINATION ./../include/framework)






######################################################################
######################################################################
######################################################################
######################################################################
# 1       WINDOWS
# 0       LINUX
set(PLATFOROM 1)

set(COCOS2DLIBRARYDIR ${PROJECT_SOURCE_DIR}/../Pro/frameworks/runtime-src/proj.win32/Debug.win32)

IF(PLATFOROM)
    message("WINDOWS")
    set(WINDOWSDLLDIR ${PROJECT_SOURCE_DIR}/../Pro/simulator/win32)

    file(COPY ${WINDOWSDLLDIR}/glew32.dll                 DESTINATION ${PROJECT_SOURCE_DIR}/build/Debug)
    file(COPY ${WINDOWSDLLDIR}/iconv.dll                     DESTINATION ${PROJECT_SOURCE_DIR}/build/Debug)
    file(COPY ${WINDOWSDLLDIR}/libcocos2d.dll           DESTINATION ${PROJECT_SOURCE_DIR}/build/Debug)
    file(COPY ${WINDOWSDLLDIR}/libcrypto-1_1.dll       DESTINATION ${PROJECT_SOURCE_DIR}/build/Debug)
    file(COPY ${WINDOWSDLLDIR}/libcurl.dll                   DESTINATION ${PROJECT_SOURCE_DIR}/build/Debug)
    file(COPY ${WINDOWSDLLDIR}/libmpg123.dll            DESTINATION ${PROJECT_SOURCE_DIR}/build/Debug)
    file(COPY ${WINDOWSDLLDIR}/libogg.dll                   DESTINATION ${PROJECT_SOURCE_DIR}/build/Debug)
    file(COPY ${WINDOWSDLLDIR}/libssl-1_1.dll              DESTINATION ${PROJECT_SOURCE_DIR}/build/Debug)
    file(COPY ${WINDOWSDLLDIR}/libvorbis.dll               DESTINATION ${PROJECT_SOURCE_DIR}/build/Debug)
    file(COPY ${WINDOWSDLLDIR}/libvorbisfile.dll         DESTINATION ${PROJECT_SOURCE_DIR}/build/Debug)
    file(COPY ${WINDOWSDLLDIR}/lua51.dll                     DESTINATION ${PROJECT_SOURCE_DIR}/build/Debug)
    file(COPY ${WINDOWSDLLDIR}/OpenAL32.dll              DESTINATION ${PROJECT_SOURCE_DIR}/build/Debug)
    file(COPY ${WINDOWSDLLDIR}/sqlite3.dll                  DESTINATION ${PROJECT_SOURCE_DIR}/build/Debug)
    file(COPY ${WINDOWSDLLDIR}/uv.dll                          DESTINATION ${PROJECT_SOURCE_DIR}/build/Debug)
    file(COPY ${WINDOWSDLLDIR}/websockets.dll         DESTINATION ${PROJECT_SOURCE_DIR}/build/Debug)
    file(COPY ${WINDOWSDLLDIR}/zlib1.dll                      DESTINATION ${PROJECT_SOURCE_DIR}/build/Debug)

ELSE()
    message("LINUX")
    set(COCOS2DLIBRARYDIR ${PROJECT_SOURCE_DIR}/../Pro/LinuxBuild/lib)
    set(COCOSEX ${PROJECT_SOURCE_DIR}/../Pro/frameworks/cocos2d-x/external)
ENDIF()

######################################################################
##SRFile Project test
######################################################################
set(SRFILE SRFile)

add_executable(SRFile vs2017/NDKLIB/SRFile/main.cpp)

IF(PLATFOROM)
    target_link_libraries(SRFile
                                    PUBLIC
                                    libNDKLIBRARY
                                    ${COCOS2DLIBRARYDIR}/freetype.lib
                                    ${COCOS2DLIBRARYDIR}/glew32.lib
                                    ${COCOS2DLIBRARYDIR}/glfw3.lib
                                    ${COCOS2DLIBRARYDIR}/libbox2d.lib
                                    ${COCOS2DLIBRARYDIR}/libbullet.lib
                                    ${COCOS2DLIBRARYDIR}/libchipmunk.lib
                                    ${COCOS2DLIBRARYDIR}/libcocos2d.lib
                                    ${COCOS2DLIBRARYDIR}/libcrypto.lib
                                    ${COCOS2DLIBRARYDIR}/libcurl.lib
                                    ${COCOS2DLIBRARYDIR}/libiconv.lib
                                    ${COCOS2DLIBRARYDIR}/libjpeg.lib
                                    ${COCOS2DLIBRARYDIR}/libluacocos2d.lib
                                    ${COCOS2DLIBRARYDIR}/libmpg123.lib
                                    ${COCOS2DLIBRARYDIR}/libogg.lib
                                    ${COCOS2DLIBRARYDIR}/libpng.lib
                                    ${COCOS2DLIBRARYDIR}/librecast.lib
                                    ${COCOS2DLIBRARYDIR}/libsimulator.lib
                                    ${COCOS2DLIBRARYDIR}/libSpine.lib
                                    ${COCOS2DLIBRARYDIR}/libssl.lib
                                    ${COCOS2DLIBRARYDIR}/libtiff.lib
                                    ${COCOS2DLIBRARYDIR}/libvorbis.lib
                                    ${COCOS2DLIBRARYDIR}/libvorbisfile.lib
                                    ${COCOS2DLIBRARYDIR}/libwebp.lib
                                    ${COCOS2DLIBRARYDIR}/libzlib.lib
                                    ${COCOS2DLIBRARYDIR}/lua51.lib
                                    ${COCOS2DLIBRARYDIR}/OpenAL32.lib
                                    ${COCOS2DLIBRARYDIR}/sqlite3.lib
                                    ${COCOS2DLIBRARYDIR}/uv_a.lib
                                    ${COCOS2DLIBRARYDIR}/websockets.lib
                                    )
ELSE()
    target_link_libraries(SRFile  
                                    PUBLIC
                                    libNDKLIBRARY
                                    pthread
                                    ${COCOS2DLIBRARYDIR}/libcocos2d.a
                                    ######################
                                    GLEW GL X11 Xi Xrandr Xxf86vm Xinerama Xcursor rt m######################
                                    ######################
                                    ${COCOS2DLIBRARYDIR}/libext_clipper.a
                                    ${COCOS2DLIBRARYDIR}/libext_convertUTF.a
                                    ${COCOS2DLIBRARYDIR}/libext_edtaa3func.a
                                    ${COCOS2DLIBRARYDIR}/libexternal.a
                                    ${COCOS2DLIBRARYDIR}/libext_luasocket.a
                                    ${COCOS2DLIBRARYDIR}/libext_md5.a
                                    ${COCOS2DLIBRARYDIR}/libext_poly2tri.a
                                    ${COCOS2DLIBRARYDIR}/libext_recast.a
                                    ${COCOS2DLIBRARYDIR}/libext_tinyxml2.a
                                    ${COCOS2DLIBRARYDIR}/libext_tolua.a
                                    ${COCOS2DLIBRARYDIR}/libext_unzip.a
                                    ${COCOS2DLIBRARYDIR}/libext_xxhash.a
                                    ${COCOS2DLIBRARYDIR}/libluacocos2d.a
                                    ${COCOS2DLIBRARYDIR}/libext_xxtea.a
                                    ${COCOSEX}/freetype2/prebuilt/linux/64-bit/libfreetype.a
                                    ${COCOSEX}/jpeg/prebuilt/linux/64-bit/libjpeg.a
                                    ${COCOSEX}/tiff/prebuilt/linux/64-bit/libtiff.a
                                    ${COCOSEX}/webp/prebuilt/linux/64-bit/libwebp.a
                                    ${COCOSEX}/uv/prebuilt/linux/64-bit/libuv_a.a
                                    ${COCOSEX}/openssl/prebuilt/linux/64-bit/libcrypto.a
                                    ${COCOSEX}/openssl/prebuilt/linux/64-bit/libssl.a
                                    ${COCOSEX}/chipmunk/prebuilt/linux/64-bit/libchipmunk.a
                                    ${COCOSEX}/Box2D/prebuilt/linux/64-bit/libbox2d.a
                                    ${COCOSEX}/glfw3/prebuilt/linux/libglfw3.a
                                    ${COCOSEX}/websockets/prebuilt/linux/64-bit/libwebsockets.a
                                    ${COCOSEX}/bullet/prebuilt/linux/64-bit/libBulletCollision.a
                                    ${COCOSEX}/bullet/prebuilt/linux/64-bit/libBulletDynamics.a
                                    ${COCOSEX}/bullet/prebuilt/linux/64-bit/libBulletMultiThreaded.a
                                    ${COCOSEX}/bullet/prebuilt/linux/64-bit/libLinearMath.a
                                    ${COCOSEX}/bullet/prebuilt/linux/64-bit/libMiniCL.a
                                    c g m rt z fontconfig libpng16.a######################
                                    )
ENDIF()

######################################################################
##Client Project test
######################################################################
set(CLIENT Client)

add_executable(CLIENT vs2017/client/main.cpp)

IF(PLATFOROM)
    target_link_libraries(CLIENT  
                                        PUBLIC
                                        libNDKLIBRARY
                                        ${COCOS2DLIBRARYDIR}/freetype.lib
                                        ${COCOS2DLIBRARYDIR}/glew32.lib
                                        ${COCOS2DLIBRARYDIR}/glfw3.lib
                                        ${COCOS2DLIBRARYDIR}/libbox2d.lib
                                        ${COCOS2DLIBRARYDIR}/libbullet.lib
                                        ${COCOS2DLIBRARYDIR}/libchipmunk.lib
                                        ${COCOS2DLIBRARYDIR}/libcocos2d.lib
                                        ${COCOS2DLIBRARYDIR}/libcrypto.lib
                                        ${COCOS2DLIBRARYDIR}/libcurl.lib
                                        ${COCOS2DLIBRARYDIR}/libiconv.lib
                                        ${COCOS2DLIBRARYDIR}/libjpeg.lib
                                        ${COCOS2DLIBRARYDIR}/libluacocos2d.lib
                                        ${COCOS2DLIBRARYDIR}/libmpg123.lib
                                        ${COCOS2DLIBRARYDIR}/libogg.lib
                                        ${COCOS2DLIBRARYDIR}/libpng.lib
                                        ${COCOS2DLIBRARYDIR}/librecast.lib
                                        ${COCOS2DLIBRARYDIR}/libsimulator.lib
                                        ${COCOS2DLIBRARYDIR}/libSpine.lib
                                        ${COCOS2DLIBRARYDIR}/libssl.lib
                                        ${COCOS2DLIBRARYDIR}/libtiff.lib
                                        ${COCOS2DLIBRARYDIR}/libvorbis.lib
                                        ${COCOS2DLIBRARYDIR}/libvorbisfile.lib
                                        ${COCOS2DLIBRARYDIR}/libwebp.lib
                                        ${COCOS2DLIBRARYDIR}/libzlib.lib
                                        ${COCOS2DLIBRARYDIR}/lua51.lib
                                        ${COCOS2DLIBRARYDIR}/OpenAL32.lib
                                        ${COCOS2DLIBRARYDIR}/sqlite3.lib
                                        ${COCOS2DLIBRARYDIR}/uv_a.lib
                                        ${COCOS2DLIBRARYDIR}/websockets.lib
                                        )
ELSE()
    target_link_libraries(CLIENT  
                                        PUBLIC
                                        libNDKLIBRARY
                                        pthread
                                        ${COCOS2DLIBRARYDIR}/libcocos2d.a
                                        ######################
                                        GLEW GL X11 Xi Xrandr Xxf86vm Xinerama Xcursor rt m######################
                                        ######################
                                        ${COCOS2DLIBRARYDIR}/libext_clipper.a
                                        ${COCOS2DLIBRARYDIR}/libext_convertUTF.a
                                        ${COCOS2DLIBRARYDIR}/libext_edtaa3func.a
                                        ${COCOS2DLIBRARYDIR}/libexternal.a
                                        ${COCOS2DLIBRARYDIR}/libext_luasocket.a
                                        ${COCOS2DLIBRARYDIR}/libext_md5.a
                                        ${COCOS2DLIBRARYDIR}/libext_poly2tri.a
                                        ${COCOS2DLIBRARYDIR}/libext_recast.a
                                        ${COCOS2DLIBRARYDIR}/libext_tinyxml2.a
                                        ${COCOS2DLIBRARYDIR}/libext_tolua.a
                                        ${COCOS2DLIBRARYDIR}/libext_unzip.a
                                        ${COCOS2DLIBRARYDIR}/libext_xxhash.a
                                        ${COCOS2DLIBRARYDIR}/libluacocos2d.a
                                        ${COCOS2DLIBRARYDIR}/libext_xxtea.a
                                        ${COCOSEX}/freetype2/prebuilt/linux/64-bit/libfreetype.a
                                        ${COCOSEX}/jpeg/prebuilt/linux/64-bit/libjpeg.a
                                        ${COCOSEX}/tiff/prebuilt/linux/64-bit/libtiff.a
                                        ${COCOSEX}/webp/prebuilt/linux/64-bit/libwebp.a
                                        ${COCOSEX}/uv/prebuilt/linux/64-bit/libuv_a.a
                                        ${COCOSEX}/openssl/prebuilt/linux/64-bit/libcrypto.a
                                        ${COCOSEX}/openssl/prebuilt/linux/64-bit/libssl.a
                                        ${COCOSEX}/chipmunk/prebuilt/linux/64-bit/libchipmunk.a
                                        ${COCOSEX}/Box2D/prebuilt/linux/64-bit/libbox2d.a
                                        ${COCOSEX}/glfw3/prebuilt/linux/libglfw3.a
                                        ${COCOSEX}/websockets/prebuilt/linux/64-bit/libwebsockets.a
                                        ${COCOSEX}/bullet/prebuilt/linux/64-bit/libBulletCollision.a
                                        ${COCOSEX}/bullet/prebuilt/linux/64-bit/libBulletDynamics.a
                                        ${COCOSEX}/bullet/prebuilt/linux/64-bit/libBulletMultiThreaded.a
                                        ${COCOSEX}/bullet/prebuilt/linux/64-bit/libLinearMath.a
                                        ${COCOSEX}/bullet/prebuilt/linux/64-bit/libMiniCL.a
                                        ######################
                                        c g m rt z fontconfig libpng16.a######################
                                        ######################
                                        )
ENDIF()
















以上是关于linux cocos bullet bt...::.... 未定义引用的主要内容,如果未能解决你的问题,请参考以下文章

Cocos2d-x Vector——vector iterators incompatible

cocos2dx 3.X刚体update穿透问题。刚体A在update中通过摇杆移动,设置的和刚体

cocos2d-x 3.7 飞机大战 决战南海I 游戏主场景

Linux下宝塔(BT.CN)虚拟主机管理面板开心版一键脚本

xiazai linux bt demo

万字长文带你 搞定 linux BT 宝塔面板 之外网上快速搭建苹果CMS电影网站