undefined reference to wxGrid/wxPGProperty

83
06 марта 2022, 22:30

Работаю над проектом Cmake с использование библиотеки wxWidgets версии 3.0.2 и при сборке исполняемого файла на Linux выходит следующее:

undefined reference to `wxGrid::...`
undefined reference to `wxPGProperty::...`
и тогдалее по всем используемым функциям

И раньше вылезали подобные ошибки, но они устранились добавив в поиск модулей wxWidgeta - adv и propgrid. Проект состоит из пары библиотек и исполняемого файла, библиотеки собираются без проблем, хотя в них и не используются эти контролы. CMakeList исполняемого файла:

project(Test)
set(HEADER  CMakeLists.txt 
            test.h 
            myMath.h)
set(SOURCE  test.cpp
            myMath.cpp) 
find_package(wxWidgets COMPONENTS core base adv propgrid )
include(${wxWidgets_USE_FILE})

add_executable( ${PROJECT_NAME} ${HEADER} ${SOURCE} )
target_include_directories( ${PROJECT_NAME} PRIVATE 
                            ${TEST_LIB1_DIR}
                            ${TEST_LIB2_DIR})
target_link_libraries(  ${PROJECT_NAME}
                        ${wxWidgets_LIBRARIES}
                        Lib1
                        Lib2 )
set_target_properties( ${PROJECT_NAME} PROPERTIES 
            RUNTIME_OUTPUT_DIRECTORY_DEBUG      ${TEST_DIR} 
            RUNTIME_OUTPUT_DIRECTORY_RELEASE    ${TEST_DIR} )

Я просто не могу понять, в чем может быть проблема (может в CMakeList). В инете нашёл схожие вопросы, но ответы на них сводились к наличию этих библиотек (adv и propgrid) на Linux'е. И да они есть в папке:

wxWidgets-3.0.2/debug/lib

Answer 1

Вся проблема в моей невнимательности... Подключив новую библиотеку я забыл посмотреть подключенные модули wxWidgets в CMakeList

find_package(wxWidgets COMPONENTS core base adv propgrid )
READ ALSO
Передача массива в функцию используя ссылку

Передача массива в функцию используя ссылку

Есть массив, состоящий из 3-х элементовНужно передать массив в функцию(которая посчитает сумму элементов) тремя разными способами

98
как передать класс как массив?

как передать класс как массив?

Я использую для программирования в opengl библиотеку glmЯ смотрел в glm и так и не понял как это делается

69
заполнение массива в зависимости от введённого типа данных

заполнение массива в зависимости от введённого типа данных

Пользователь должен вводить данные с клавиатуры, а программа должна их заносить в массив в зависимости от типа введённых данных (int, double, char)Как...

164