Coding Global Background
Coding Global

cmake giving a bunch of undefined reference errors

Archiviert 2 months ago
2 Nachrichten
2 Mitglieder
Erstellt 4 months ago
Aktualisiert 4 months ago
In Discord öffnen
D
DevLop games
Verified
I been getting a bunch of undefined reference errors coming from the sol2 library and have been unable to figure out why. I don't have much information because I was unable to find out much. Can someone please help me?
cmake_minimum_required(VERSION 3.19)

project(InteractiveStoryCreator)

set(CMAKE_CXX_STANDARD 20)
set(CMAKE_CXX_STANDARD_REQUIRED True)

if (WIN32)
    set(SDL3_DIR lib/cmake/SDL3)
    set(SDL3_image_DIR lib/cmake/SDL3_image)
    set(SDL3_ttf_DIR lib/cmake/SDL3_ttf)
endif()

find_package(SDL3 REQUIRED)
find_package(SDL3_image REQUIRED)
find_package(SDL3_ttf REQUIRED)
find_package(Lua REQUIRED)

include_directories(include/imgui)
include_directories(include/miniaudio)
include_directories(${LUA_INCLUDE_DIR})

file(GLOB_RECURSE ENGINE
    "${CMAKE_SOURCE_DIR}/src/engine/*.cpp"
)

file(COPY "Isc" DESTINATION "${CMAKE_SOURCE_DIR}/build")

add_executable(${PROJECT_NAME}
    src/Main.cpp
    src/Ui.cpp
    src/StoryCard.cpp
    src/Story.cpp
    include/imgui/imgui.cpp
    include/imgui/imgui_stdlib.cpp
    include/imgui/imgui_tables.cpp
    include/imgui/imgui_widgets.cpp
    include/imgui/imgui_draw.cpp
    include/imgui/backends/imgui_impl_sdl3.cpp
    include/imgui/backends/imgui_impl_sdlrenderer3.cpp
    include/miniaudio/miniaudio.c
    ${ENGINE}
    icon.rc
)

if (WIN32)
    add_custom_command(
           TARGET ${PROJECT_NAME}
           POST_BUILD
           COMMAND ${CMAKE_COMMAND} -E copy_if_different $<TARGET_RUNTIME_DLLS:${PROJECT_NAME}> $<TARGET_FILE_DIR:${PROJECT_NAME}>
           COMMAND_EXPAND_LISTS
       )
endif()

target_include_directories(${CMAKE_PROJECT_NAME} PRIVATE ${CMAKE_SOURCE_DIR}/src)
target_link_libraries(${PROJECT_NAME} PRIVATE SDL3::SDL3)
target_link_libraries(${PROJECT_NAME} PRIVATE SDL3_image::SDL3_image)
target_link_libraries(${PROJECT_NAME} PRIVATE SDL3_ttf::SDL3_ttf)
target_link_libraries(${PROJECT_NAME} PRIVATE ${LUA_LIBRARIES})

Antworten (1)