Ошибка компоновщика после перехода от QMake к CMakeC++

Программы на C++. Форум разработчиков
Ответить
Anonymous
 Ошибка компоновщика после перехода от QMake к CMake

Сообщение Anonymous »

Я пытаюсь перейти с qmake на CMake. При этом у меня не так много опыта написания файлов CMakeLists, и я использовал Python-скрипт qmake2cmake для создания исходного файла CMakeLists.txt.
Кажется, что код компилируется нормально, однако на этапе компоновки Я получаю неопределенную ссылку:
/usr/bin/ld: CMakeFiles/GerberStencilGenerator.dir/GerberStencilGenerator_autogen/mocs_compilation.cpp.o: in function `GerberStencilGenerator::qt_static_metacall(QObject*, QMetaObject::Call, int, void**)':
mocs_compilation.cpp:(.text+0xc375): undefined reference to `GerberStencilGenerator::afterWindowIsShown()'

afterWindowIsShown является частным слотом основного класса и существует, и при использовании qmake код прекрасно компилируется и связывается.
Я предполагаю, что есть некоторая проблема с moc-компиляцией но это все. Я здесь совершенно потерялся.
Это мой CMakeLists.txt:
cmake_minimum_required(VERSION 3.16)
project(GerberStencilGenerator VERSION 1.0 LANGUAGES C CXX)

set(CMAKE_INCLUDE_CURRENT_DIR ON)
set(CMAKE_AUTOUIC ON)
set(CMAKE_AUTOMOC ON)
add_definitions(-DQT_NO_KEYWORDS)
list(APPEND CMAKE_AUTOUIC_SEARCH_PATHS "ui" "src")

find_package(QT NAMES Qt5 Qt6 REQUIRED COMPONENTS Core)
find_package(Qt${QT_VERSION_MAJOR} REQUIRED COMPONENTS Gui Xml)
find_package(Qt${QT_VERSION_MAJOR} OPTIONAL_COMPONENTS Widgets)

find_package(PkgConfig REQUIRED)

qt_standard_project_setup()
qt_add_executable(GerberStencilGenerator WIN32 MACOSX_BUNDLE
src/apertureeditview.cpp src/apertureeditview.h

... all the other source files ...

ui/settingsdialog.ui
)
target_include_directories(GerberStencilGenerator PRIVATE
src
ui
)

target_compile_definitions(GerberStencilGenerator PRIVATE
QT_DEPRECATED_WARNINGS
QT_NO_KEYWORDS
)
target_link_libraries(GerberStencilGenerator PRIVATE
Qt::Core
Qt::Gui
Qt::Xml
)

pkg_check_modules(GTK2 REQUIRED gtk+-2.0)
pkg_check_modules(LIBGERBV REQUIRED libgerbv)
pkg_check_modules(CAIRO REQUIRED cairo)
pkg_check_modules(PIXMAN REQUIRED pixman-1)
target_include_directories(GerberStencilGenerator PUBLIC
${GTK2_INCLUDE_DIRS}
${LIBGERBV_INCLUDE_DIRS}
${CAIRO_INCLUDE_DIRS}
${PIXMAN_INCLUDE_DIRS}
)
target_link_libraries(GerberStencilGenerator PUBLIC
${GTK2_LIBRARIES}
${LIBGERBV_LIBRARIES}
${CAIRO_LIBRARIES}
${PIXMAN_LIBRARIES}
)
target_compile_options(GerberStencilGenerator PUBLIC
${GTK2_CFLAGS_OTHER}
${LIBGERBV_CFLAGS_OTHER}
${CAIRO_CFLAGS_OTHER}
${PIXMAN_CFLAGS_OTHER}
)

# Resources:
set_source_files_properties("resources/apertures/circle.svg"
PROPERTIES QT_RESOURCE_ALIAS "circle"
)

... all the other resources ...

)

if((QT_VERSION_MAJOR GREATER 4))
target_link_libraries(GerberStencilGenerator PRIVATE
Qt::Widgets
)
endif()
install(TARGETS GerberStencilGenerator
BUNDLE DESTINATION .
RUNTIME DESTINATION ${CMAKE_INSTALL_BINDIR}
)

qt_generate_deploy_app_script(
TARGET GerberStencilGenerator
OUTPUT_SCRIPT deploy_script
NO_UNSUPPORTED_PLATFORM_ERROR
)
install(SCRIPT ${deploy_script})

и соответствующий слот в файле заголовка определяется с использованием соответствующего макроса No-Keyword-Macro следующим образом:
private Q_SLOTS:
void afterWindowIsShown( void );

и, как я уже говорил ранее, при использовании qmake этот код работает отлично.
Любая помощь приветствуется!
---Редактировать : подробный вывод CMake ---
$ cmake --build . --verbose
Change Dir: '/home/tobias/src/git/GerberStencilGenerator/build'

Run Build Command(s): /usr/bin/cmake -E env VERBOSE=1 /usr/bin/gmake -f Makefile
/usr/bin/cmake -S/home/tobias/src/git/GerberStencilGenerator -B/home/tobias/src/git/GerberStencilGenerator/build --check-build-system CMakeFiles/Makefile.cmake 0
/usr/bin/cmake -E cmake_progress_start /home/tobias/src/git/GerberStencilGenerator/build/CMakeFiles /home/tobias/src/git/GerberStencilGenerator/build//CMakeFiles/progress.marks
/usr/bin/gmake -f CMakeFiles/Makefile2 all
gmake[1]: Entering directory '/home/tobias/src/git/GerberStencilGenerator/build'
/usr/bin/gmake -f CMakeFiles/GerberStencilGenerator_autogen_timestamp_deps.dir/build.make CMakeFiles/GerberStencilGenerator_autogen_timestamp_deps.dir/depend
gmake[2]: Entering directory '/home/tobias/src/git/GerberStencilGenerator/build'
cd /home/tobias/src/git/GerberStencilGenerator/build && /usr/bin/cmake -E cmake_depends "Unix Makefiles" /home/tobias/src/git/GerberStencilGenerator /home/tobias/src/git/GerberStencilGenerator /home/tobias/src/git/GerberStencilGenerator/build /home/tobias/src/git/GerberStencilGenerator/build /home/tobias/src/git/GerberStencilGenerator/build/CMakeFiles/GerberStencilGenerator_autogen_timestamp_deps.dir/DependInfo.cmake "--color="
gmake[2]: Leaving directory '/home/tobias/src/git/GerberStencilGenerator/build'
/usr/bin/gmake -f CMakeFiles/GerberStencilGenerator_autogen_timestamp_deps.dir/build.make CMakeFiles/GerberStencilGenerator_autogen_timestamp_deps.dir/build
gmake[2]: Entering directory '/home/tobias/src/git/GerberStencilGenerator/build'
gmake[2]: Nothing to be done for 'CMakeFiles/GerberStencilGenerator_autogen_timestamp_deps.dir/build'.
gmake[2]: Leaving directory '/home/tobias/src/git/GerberStencilGenerator/build'
[ 0%] Built target GerberStencilGenerator_autogen_timestamp_deps
/usr/bin/gmake -f CMakeFiles/GerberStencilGenerator_autogen.dir/build.make CMakeFiles/GerberStencilGenerator_autogen.dir/depend
gmake[2]: Entering directory '/home/tobias/src/git/GerberStencilGenerator/build'
cd /home/tobias/src/git/GerberStencilGenerator/build && /usr/bin/cmake -E cmake_depends "Unix Makefiles" /home/tobias/src/git/GerberStencilGenerator /home/tobias/src/git/GerberStencilGenerator /home/tobias/src/git/GerberStencilGenerator/build /home/tobias/src/git/GerberStencilGenerator/build /home/tobias/src/git/GerberStencilGenerator/build/CMakeFiles/GerberStencilGenerator_autogen.dir/DependInfo.cmake "--color="
gmake[2]: Leaving directory '/home/tobias/src/git/GerberStencilGenerator/build'
/usr/bin/gmake -f CMakeFiles/GerberStencilGenerator_autogen.dir/build.make CMakeFiles/GerberStencilGenerator_autogen.dir/build
gmake[2]: Entering directory '/home/tobias/src/git/GerberStencilGenerator/build'
[ 2%] Automatic MOC and UIC for target GerberStencilGenerator
/usr/bin/cmake -E cmake_autogen /home/tobias/src/git/GerberStencilGenerator/build/CMakeFiles/GerberStencilGenerator_autogen.dir/AutogenInfo.json ""
AutoGen: Refreshing parse cache because it doesn't exist.
AutoMoc: Generating "SRC:/build/GerberStencilGenerator_autogen/moc_predefs.h", because it doesn't exist.
/usr/bin/c++ -dM -E -c /usr/share/cmake-3.28/Modules/CMakeCXXCompilerABI.cpp -DQT_CORE_LIB -DQT_DEPRECATED_WARNINGS -DQT_GUI_LIB -DQT_NO_DEBUG -DQT_NO_KEYWORDS -DQT_WIDGETS_LIB -DQT_XML_LIB -I/home/tobias/src/git/GerberStencilGenerator/build -I/home/tobias/src/git/GerberStencilGenerator -I/home/tobias/src/git/GerberStencilGenerator/src -I/home/tobias/src/git/GerberStencilGenerator/ui -I/usr/include/gtk-2.0 -I/usr/lib/x86_64-linux-gnu/gtk-2.0/include -I/usr/include/pango-1.0 -I/usr/include/glib-2.0 -I/usr/lib/x86_64-linux-gnu/glib-2.0/include -I/usr/include/harfbuzz -I/usr/include/freetype2 -I/usr/include/libpng16 -I/usr/include/libmount -I/usr/include/blkid -I/usr/include/fribidi -I/usr/include/cairo -I/usr/include/pixman-1 -I/usr/include/gdk-pixbuf-2.0 -I/usr/include/webp -I/usr/include/atk-1.0 -I/usr/include/gerbv- -I/home/tobias/src/git/GerberStencilGenerator/3rdparty/Qt-Color-Widgets-master/include -I/home/tobias/src/git/GerberStencilGenerator/3rdparty/Qt-Color-Widgets-master/src -I/home/tobias/Qt/6.5.3/gcc_64/include/QtCore -I/home/tobias/Qt/6.5.3/gcc_64/include -I/home/tobias/Qt/6.5.3/gcc_64/mkspecs/linux-g++ -I/home/tobias/Qt/6.5.3/gcc_64/include/QtGui -I/home/tobias/Qt/6.5.3/gcc_64/include/QtXml -I/home/tobias/Qt/6.5.3/gcc_64/include/QtWidgets -I/usr/include -I/usr/include/x86_64-linux-gnu -I/usr/include/c++/13 -I/usr/include/x86_64-linux-gnu/c++/13 -I/usr/include/c++/13/backward -I/usr/lib/gcc/x86_64-linux-gnu/13/include -I/usr/local/include
AutoGen: Parsing "SRC:/3rdparty/Qt-Color-Widgets-master/include/QtColorWidgets/abstract_widget_list.hpp"
AutoGen: Parsing "SRC:/3rdparty/Qt-Color-Widgets-master/include/QtColorWidgets/color_dialog.hpp"
AutoGen: Parsing "SRC:/3rdparty/Qt-Color-Widgets-master/include/QtColorWidgets/color_delegate.hpp"
AutoGen: Parsing "SRC:/3rdparty/Qt-Color-Widgets-master/include/QtColorWidgets/bound_color_selector.hpp"
AutoGen: Parsing "SRC:/3rdparty/Qt-Color-Widgets-master/include/QtColorWidgets/color_2d_slider.hpp"
AutoGen: Parsing "SRC:/3rdparty/Qt-Color-Widgets-master/include/QtColorWidgets/color_line_edit.hpp"
AutoGen: Parsing "SRC:/3rdparty/Qt-Color-Widgets-master/include/QtColorWidgets/color_list_widget.hpp"
AutoGen: Parsing "SRC:/3rdparty/Qt-Color-Widgets-master/include/QtColorWidgets/color_names.hpp"
AutoGen: Parsing "SRC:/3rdparty/Qt-Color-Widgets-master/include/QtColorWidgets/color_palette.hpp"
AutoGen: Parsing "SRC:/3rdparty/Qt-Color-Widgets-master/include/QtColorWidgets/color_palette_model.hpp"
AutoGen: Parsing "SRC:/3rdparty/Qt-Color-Widgets-master/include/QtColorWidgets/color_palette_widget.hpp"
AutoGen: Parsing "SRC:/3rdparty/Qt-Color-Widgets-master/include/QtColorWidgets/color_preview.hpp"
AutoGen: Parsing "SRC:/3rdparty/Qt-Color-Widgets-master/include/QtColorWidgets/color_selector.hpp"
AutoGen: Parsing "SRC:/3rdparty/Qt-Color-Widgets-master/include/QtColorWidgets/color_utils.hpp"
AutoGen: Parsing "SRC:/3rdparty/Qt-Color-Widgets-master/include/QtColorWidgets/color_wheel.hpp"
AutoGen: Parsing "SRC:/3rdparty/Qt-Color-Widgets-master/include/QtColorWidgets/color_wheel_private.hpp"
AutoGen: Parsing "SRC:/3rdparty/Qt-Color-Widgets-master/include/QtColorWidgets/colorwidgets_global.hpp"
AutoGen: Parsing "SRC:/3rdparty/Qt-Color-Widgets-master/include/QtColorWidgets/gradient_delegate.hpp"
AutoGen: Parsing "SRC:/3rdparty/Qt-Color-Widgets-master/include/QtColorWidgets/gradient_editor.hpp"
AutoGen: Parsing "SRC:/3rdparty/Qt-Color-Widgets-master/include/QtColorWidgets/gradient_helper.hpp"
AutoGen: Parsing "SRC:/3rdparty/Qt-Color-Widgets-master/include/QtColorWidgets/gradient_list_model.hpp"
AutoGen: Parsing "SRC:/3rdparty/Qt-Color-Widgets-master/include/QtColorWidgets/gradient_slider.hpp"
AutoGen: Parsing "SRC:/3rdparty/Qt-Color-Widgets-master/include/QtColorWidgets/harmony_color_wheel.hpp"
AutoGen: Parsing "SRC:/3rdparty/Qt-Color-Widgets-master/include/QtColorWidgets/hue_slider.hpp"
AutoGen: Parsing "SRC:/3rdparty/Qt-Color-Widgets-master/include/QtColorWidgets/swatch.hpp"
AutoGen: Parsing "SRC:/src/apertureeditview.h"
AutoGen: Parsing "SRC:/src/aperturelistwidget.h"
AutoGen: Parsing "SRC:/src/color.h"
AutoGen: Parsing "SRC:/src/enums.h"
AutoGen: Parsing "SRC:/src/floatcompare.h"
AutoGen: Parsing "SRC:/src/gerberplotterdialog.h"
AutoGen: Parsing "SRC:/src/gerberstencilgenerator.h"
AutoGen: Parsing "SRC:/src/hollowgraphicsobrounditem.h"
AutoGen: Parsing "SRC:/src/hollowgraphicsellipseitem.h"
AutoGen: Parsing "SRC:/src/hollowgraphicspolygonitem.h"
AutoGen: Parsing "SRC:/src/hollowgraphicsrectitem.h"
AutoGen: Parsing "SRC:/src/hollowroundedgraphicspolygonitem.h"
AutoGen: Parsing "SRC:/src/renderthread.h"
AutoGen: Parsing "SRC:/src/hollowroundedgraphicsrectitem.h"
AutoGen: Parsing "SRC:/src/settingsdialog.h"
AutoGen: Parsing "SRC:/src/shapeicon.h"
AutoGen: Parsing "SRC:/src/slidersizelabel.h"
AutoGen: Parsing "SRC:/src/snapslider.h"
AutoGen: Parsing "SRC:/src/tipoftheday.h"
AutoGen: Parsing "SRC:/3rdparty/Qt-Color-Widgets-master/src/QtColorWidgets/abstract_widget_list.cpp"
AutoGen: Parsing "SRC:/3rdparty/Qt-Color-Widgets-master/src/QtColorWidgets/bound_color_selector.cpp"
AutoGen: Parsing "SRC:/3rdparty/Qt-Color-Widgets-master/src/QtColorWidgets/color_2d_slider.cpp"
AutoGen: Parsing "SRC:/3rdparty/Qt-Color-Widgets-master/src/QtColorWidgets/color_delegate.cpp"
AutoGen: Parsing "SRC:/3rdparty/Qt-Color-Widgets-master/src/QtColorWidgets/color_dialog.cpp"
AutoGen: Parsing "SRC:/3rdparty/Qt-Color-Widgets-master/src/QtColorWidgets/color_line_edit.cpp"
AutoGen: Parsing "SRC:/3rdparty/Qt-Color-Widgets-master/src/QtColorWidgets/color_list_widget.cpp"
AutoGen: Parsing "SRC:/3rdparty/Qt-Color-Widgets-master/src/QtColorWidgets/color_names.cpp"
AutoGen: Parsing "SRC:/3rdparty/Qt-Color-Widgets-master/src/QtColorWidgets/color_palette.cpp"
AutoGen: Parsing "SRC:/3rdparty/Qt-Color-Widgets-master/src/QtColorWidgets/color_palette_model.cpp"
AutoGen: Parsing "SRC:/3rdparty/Qt-Color-Widgets-master/src/QtColorWidgets/color_palette_widget.cpp"
AutoGen: Parsing "SRC:/3rdparty/Qt-Color-Widgets-master/src/QtColorWidgets/color_preview.cpp"
AutoGen: Parsing "SRC:/3rdparty/Qt-Color-Widgets-master/src/QtColorWidgets/color_selector.cpp"
AutoGen: Parsing "SRC:/3rdparty/Qt-Color-Widgets-master/src/QtColorWidgets/color_utils.cpp"
AutoGen: Parsing "SRC:/3rdparty/Qt-Color-Widgets-master/src/QtColorWidgets/color_wheel.cpp"
AutoGen: Parsing "SRC:/3rdparty/Qt-Color-Widgets-master/src/QtColorWidgets/gradient_editor.cpp"
AutoGen: Parsing "SRC:/3rdparty/Qt-Color-Widgets-master/src/QtColorWidgets/gradient_list_model.cpp"
AutoGen: Parsing "SRC:/3rdparty/Qt-Color-Widgets-master/src/QtColorWidgets/gradient_slider.cpp"
AutoGen: Parsing "SRC:/3rdparty/Qt-Color-Widgets-master/src/QtColorWidgets/harmony_color_wheel.cpp"
AutoGen: Parsing "SRC:/3rdparty/Qt-Color-Widgets-master/src/QtColorWidgets/hue_slider.cpp"
AutoGen: Parsing "SRC:/3rdparty/Qt-Color-Widgets-master/src/QtColorWidgets/swatch.cpp"
AutoGen: Parsing "SRC:/src/apertureeditview.cpp"
AutoGen: Parsing "SRC:/src/aperturelistwidget.cpp"
AutoGen: Parsing "SRC:/src/gerberplotterdialog.cpp"
AutoGen: Parsing "SRC:/src/gerberstencilgenerator.cpp"
AutoGen: Parsing "SRC:/src/hollowgraphicsellipseitem.cpp"
AutoGen: Parsing "SRC:/src/hollowgraphicsobrounditem.cpp"
AutoGen: Parsing "SRC:/src/hollowgraphicspolygonitem.cpp"
AutoGen: Parsing "SRC:/src/hollowgraphicsrectitem.cpp"
AutoGen: Parsing "SRC:/src/hollowroundedgraphicspolygonitem.cpp"
AutoGen: Parsing "SRC:/src/hollowroundedgraphicsrectitem.cpp"
AutoGen: Parsing "SRC:/src/main.cpp"
AutoGen: Parsing "SRC:/src/renderthread.cpp"
AutoGen: Parsing "SRC:/src/settingsdialog.cpp"
AutoGen: Parsing "SRC:/src/shapeicon.cpp"
AutoGen: Parsing "SRC:/src/slidersizelabel.cpp"
AutoGen: Parsing "SRC:/src/snapslider.cpp"
AutoGen: Parsing "SRC:/src/tipoftheday.cpp"
AutoMoc: Generating "SRC:/build/GerberStencilGenerator_autogen/OK2KHPFT73/moc_abstract_widget_list.cpp", because it doesn't exist, from "SRC:/3rdparty/Qt-Color-Widgets-master/include/QtColorWidgets/abstract_widget_list.hpp"
/home/tobias/Qt/6.5.3/gcc_64/./libexec/moc -DQT_CORE_LIB -DQT_DEPRECATED_WARNINGS -DQT_GUI_LIB -DQT_NO_DEBUG -DQT_NO_KEYWORDS -DQT_WIDGETS_LIB -DQT_XML_LIB -I/home/tobias/src/git/GerberStencilGenerator/build -I/home/tobias/src/git/GerberStencilGenerator -I/home/tobias/src/git/GerberStencilGenerator/src -I/home/tobias/src/git/GerberStencilGenerator/ui -I/usr/include/gtk-2.0 -I/usr/lib/x86_64-linux-gnu/gtk-2.0/include -I/usr/include/pango-1.0 -I/usr/include/glib-2.0 -I/usr/lib/x86_64-linux-gnu/glib-2.0/include -I/usr/include/harfbuzz -I/usr/include/freetype2 -I/usr/include/libpng16 -I/usr/include/libmount -I/usr/include/blkid -I/usr/include/fribidi -I/usr/include/cairo -I/usr/include/pixman-1 -I/usr/include/gdk-pixbuf-2.0 -I/usr/include/webp -I/usr/include/atk-1.0 -I/usr/include/gerbv- -I/home/tobias/src/git/GerberStencilGenerator/3rdparty/Qt-Color-Widgets-master/include -I/home/tobias/src/git/GerberStencilGenerator/3rdparty/Qt-Color-Widgets-master/src -I/home/tobias/Qt/6.5.3/gcc_64/include/QtCore -I/home/tobias/Qt/6.5.3/gcc_64/include -I/home/tobias/Qt/6.5.3/gcc_64/mkspecs/linux-g++ -I/home/tobias/Qt/6.5.3/gcc_64/include/QtGui -I/home/tobias/Qt/6.5.3/gcc_64/include/QtXml -I/home/tobias/Qt/6.5.3/gcc_64/include/QtWidgets -I/usr/include -I/usr/include/x86_64-linux-gnu -I/usr/include/c++/13 -I/usr/include/x86_64-linux-gnu/c++/13 -I/usr/include/c++/13/backward -I/usr/lib/gcc/x86_64-linux-gnu/13/include -I/usr/local/include --include /home/tobias/src/git/GerberStencilGenerator/build/GerberStencilGenerator_autogen/moc_predefs.h --output-dep-file -o /home/tobias/src/git/GerberStencilGenerator/build/GerberStencilGenerator_autogen/OK2KHPFT73/moc_abstract_widget_list.cpp /home/tobias/src/git/GerberStencilGenerator/3rdparty/Qt-Color-Widgets-master/include/QtColorWidgets/abstract_widget_list.hpp
AutoMoc: Generating "SRC:/build/GerberStencilGenerator_autogen/OK2KHPFT73/moc_color_delegate.cpp", because it doesn't exist, from "SRC:/3rdparty/Qt-Color-Widgets-master/include/QtColorWidgets/color_delegate.hpp"
/home/tobias/Qt/6.5.3/gcc_64/./libexec/moc -DQT_CORE_LIB -DQT_DEPRECATED_WARNINGS -DQT_GUI_LIB -DQT_NO_DEBUG -DQT_NO_KEYWORDS -DQT_WIDGETS_LIB -DQT_XML_LIB -I/home/tobias/src/git/GerberStencilGenerator/build -I/home/tobias/src/git/GerberStencilGenerator -I/home/tobias/src/git/GerberStencilGenerator/src -I/home/tobias/src/git/GerberStencilGenerator/ui -I/usr/include/gtk-2.0 -I/usr/lib/x86_64-linux-gnu/gtk-2.0/include -I/usr/include/pango-1.0 -I/usr/include/glib-2.0 -I/usr/lib/x86_64-linux-gnu/glib-2.0/include -I/usr/include/harfbuzz -I/usr/include/freetype2 -I/usr/include/libpng16 -I/usr/include/libmount -I/usr/include/blkid -I/usr/include/fribidi -I/usr/include/cairo -I/usr/include/pixman-1 -I/usr/include/gdk-pixbuf-2.0 -I/usr/include/webp -I/usr/include/atk-1.0 -I/usr/include/gerbv- -I/home/tobias/src/git/GerberStencilGenerator/3rdparty/Qt-Color-Widgets-master/include -I/home/tobias/src/git/GerberStencilGenerator/3rdparty/Qt-Color-Widgets-master/src -I/home/tobias/Qt/6.5.3/gcc_64/include/QtCore -I/home/tobias/Qt/6.5.3/gcc_64/include -I/home/tobias/Qt/6.5.3/gcc_64/mkspecs/linux-g++ -I/home/tobias/Qt/6.5.3/gcc_64/include/QtGui -I/home/tobias/Qt/6.5.3/gcc_64/include/QtXml -I/home/tobias/Qt/6.5.3/gcc_64/include/QtWidgets -I/usr/include -I/usr/include/x86_64-linux-gnu -I/usr/include/c++/13 -I/usr/include/x86_64-linux-gnu/c++/13 -I/usr/include/c++/13/backward -I/usr/lib/gcc/x86_64-linux-gnu/13/include -I/usr/local/include --include /home/tobias/src/git/GerberStencilGenerator/build/GerberStencilGenerator_autogen/moc_predefs.h --output-dep-file -o /home/tobias/src/git/GerberStencilGenerator/build/GerberStencilGenerator_autogen/OK2KHPFT73/moc_color_delegate.cpp /home/tobias/src/git/GerberStencilGenerator/3rdparty/Qt-Color-Widgets-master/include/QtColorWidgets/color_delegate.hpp

--- snip ---

[ 88%] Building CXX object CMakeFiles/GerberStencilGenerator.dir/build/.rcc/qrc_color_widgets.cpp.o
/usr/bin/c++ -DQT_CORE_LIB -DQT_DEPRECATED_WARNINGS -DQT_GUI_LIB -DQT_NO_DEBUG -DQT_NO_KEYWORDS -DQT_WIDGETS_LIB -DQT_XML_LIB -I/home/tobias/src/git/GerberStencilGenerator/build -I/home/tobias/src/git/GerberStencilGenerator -I/home/tobias/src/git/GerberStencilGenerator/build/GerberStencilGenerator_autogen/include -I/home/tobias/src/git/GerberStencilGenerator/src -I/home/tobias/src/git/GerberStencilGenerator/ui -I/usr/include/gtk-2.0 -I/usr/lib/x86_64-linux-gnu/gtk-2.0/include -I/usr/include/pango-1.0 -I/usr/include/glib-2.0 -I/usr/lib/x86_64-linux-gnu/glib-2.0/include -I/usr/include/harfbuzz -I/usr/include/freetype2 -I/usr/include/libpng16 -I/usr/include/libmount -I/usr/include/blkid -I/usr/include/fribidi -I/usr/include/cairo -I/usr/include/pixman-1 -I/usr/include/gdk-pixbuf-2.0 -I/usr/include/webp -I/usr/include/atk-1.0 -I/usr/include/gerbv- -I/home/tobias/src/git/GerberStencilGenerator/3rdparty/Qt-Color-Widgets-master/include -I/home/tobias/src/git/GerberStencilGenerator/3rdparty/Qt-Color-Widgets-master/src -isystem /home/tobias/Qt/6.5.3/gcc_64/include/QtCore -isystem /home/tobias/Qt/6.5.3/gcc_64/include -isystem /home/tobias/Qt/6.5.3/gcc_64/mkspecs/linux-g++ -isystem /home/tobias/Qt/6.5.3/gcc_64/include/QtGui -isystem /home/tobias/Qt/6.5.3/gcc_64/include/QtXml -isystem /home/tobias/Qt/6.5.3/gcc_64/include/QtWidgets -pthread -fPIC -MD -MT CMakeFiles/GerberStencilGenerator.dir/build/.rcc/qrc_color_widgets.cpp.o -MF CMakeFiles/GerberStencilGenerator.dir/build/.rcc/qrc_color_widgets.cpp.o.d -o CMakeFiles/GerberStencilGenerator.dir/build/.rcc/qrc_color_widgets.cpp.o -c /home/tobias/src/git/GerberStencilGenerator/build/.rcc/qrc_color_widgets.cpp
[ 90%] Linking CXX executable GerberStencilGenerator
/usr/bin/cmake -E cmake_link_script CMakeFiles/GerberStencilGenerator.dir/link.txt --verbose=1
/usr/bin/c++ CMakeFiles/GerberStencilGenerator.dir/GerberStencilGenerator_autogen/mocs_compilation.cpp.o CMakeFiles/GerberStencilGenerator.dir/src/apertureeditview.cpp.o CMakeFiles/GerberStencilGenerator.dir/src/aperturelistwidget.cpp.o CMakeFiles/GerberStencilGenerator.dir/src/gerberplotterdialog.cpp.o CMakeFiles/GerberStencilGenerator.dir/src/gerberstencilgenerator.cpp.o CMakeFiles/GerberStencilGenerator.dir/src/hollowgraphicsellipseitem.cpp.o CMakeFiles/GerberStencilGenerator.dir/src/hollowgraphicsobrounditem.cpp.o CMakeFiles/GerberStencilGenerator.dir/src/hollowgraphicspolygonitem.cpp.o CMakeFiles/GerberStencilGenerator.dir/src/hollowgraphicsrectitem.cpp.o CMakeFiles/GerberStencilGenerator.dir/src/hollowroundedgraphicspolygonitem.cpp.o CMakeFiles/GerberStencilGenerator.dir/src/hollowroundedgraphicsrectitem.cpp.o CMakeFiles/GerberStencilGenerator.dir/src/main.cpp.o CMakeFiles/GerberStencilGenerator.dir/src/renderthread.cpp.o CMakeFiles/GerberStencilGenerator.dir/src/settingsdialog.cpp.o CMakeFiles/GerberStencilGenerator.dir/src/shapeicon.cpp.o CMakeFiles/GerberStencilGenerator.dir/src/slidersizelabel.cpp.o CMakeFiles/GerberStencilGenerator.dir/src/snapslider.cpp.o CMakeFiles/GerberStencilGenerator.dir/src/tipoftheday.cpp.o CMakeFiles/GerberStencilGenerator.dir/build/.rcc/qrc_resources.cpp.o CMakeFiles/GerberStencilGenerator.dir/build/.rcc/qrc_resources1.cpp.o CMakeFiles/GerberStencilGenerator.dir/build/.rcc/qrc_resources2.cpp.o "CMakeFiles/GerberStencilGenerator.dir/3rdparty/Qt-Color-Widgets-master/src/QtColorWidgets/abstract_widget_list.cpp.o" "CMakeFiles/GerberStencilGenerator.dir/3rdparty/Qt-Color-Widgets-master/src/QtColorWidgets/bound_color_selector.cpp.o" "CMakeFiles/GerberStencilGenerator.dir/3rdparty/Qt-Color-Widgets-master/src/QtColorWidgets/color_2d_slider.cpp.o" "CMakeFiles/GerberStencilGenerator.dir/3rdparty/Qt-Color-Widgets-master/src/QtColorWidgets/color_delegate.cpp.o" "CMakeFiles/GerberStencilGenerator.dir/3rdparty/Qt-Color-Widgets-master/src/QtColorWidgets/color_dialog.cpp.o" "CMakeFiles/GerberStencilGenerator.dir/3rdparty/Qt-Color-Widgets-master/src/QtColorWidgets/color_line_edit.cpp.o" "CMakeFiles/GerberStencilGenerator.dir/3rdparty/Qt-Color-Widgets-master/src/QtColorWidgets/color_list_widget.cpp.o" "CMakeFiles/GerberStencilGenerator.dir/3rdparty/Qt-Color-Widgets-master/src/QtColorWidgets/color_names.cpp.o" "CMakeFiles/GerberStencilGenerator.dir/3rdparty/Qt-Color-Widgets-master/src/QtColorWidgets/color_palette.cpp.o" "CMakeFiles/GerberStencilGenerator.dir/3rdparty/Qt-Color-Widgets-master/src/QtColorWidgets/color_palette_model.cpp.o" "CMakeFiles/GerberStencilGenerator.dir/3rdparty/Qt-Color-Widgets-master/src/QtColorWidgets/color_palette_widget.cpp.o" "CMakeFiles/GerberStencilGenerator.dir/3rdparty/Qt-Color-Widgets-master/src/QtColorWidgets/color_preview.cpp.o" "CMakeFiles/GerberStencilGenerator.dir/3rdparty/Qt-Color-Widgets-master/src/QtColorWidgets/color_selector.cpp.o" "CMakeFiles/GerberStencilGenerator.dir/3rdparty/Qt-Color-Widgets-master/src/QtColorWidgets/color_utils.cpp.o" "CMakeFiles/GerberStencilGenerator.dir/3rdparty/Qt-Color-Widgets-master/src/QtColorWidgets/color_wheel.cpp.o" "CMakeFiles/GerberStencilGenerator.dir/3rdparty/Qt-Color-Widgets-master/src/QtColorWidgets/gradient_editor.cpp.o" "CMakeFiles/GerberStencilGenerator.dir/3rdparty/Qt-Color-Widgets-master/src/QtColorWidgets/gradient_list_model.cpp.o" "CMakeFiles/GerberStencilGenerator.dir/3rdparty/Qt-Color-Widgets-master/src/QtColorWidgets/gradient_slider.cpp.o" "CMakeFiles/GerberStencilGenerator.dir/3rdparty/Qt-Color-Widgets-master/src/QtColorWidgets/harmony_color_wheel.cpp.o" "CMakeFiles/GerberStencilGenerator.dir/3rdparty/Qt-Color-Widgets-master/src/QtColorWidgets/hue_slider.cpp.o" "CMakeFiles/GerberStencilGenerator.dir/3rdparty/Qt-Color-Widgets-master/src/QtColorWidgets/swatch.cpp.o" CMakeFiles/GerberStencilGenerator.dir/build/.rcc/qrc_color_widgets.cpp.o -o GerberStencilGenerator -Wl,-rpath,/home/tobias/Qt/6.5.3/gcc_64/lib: -lgtk-x11-2.0 -lgdk-x11-2.0 -lpangocairo-1.0 -latk-1.0 -lcairo -lgdk_pixbuf-2.0 -lgio-2.0 -lpangoft2-1.0 -lpango-1.0 -lgobject-2.0 -lglib-2.0 -lharfbuzz -lfontconfig -lfreetype -lgerbv -lgtk-x11-2.0 -lgdk-x11-2.0 -lpangocairo-1.0 -latk-1.0 -lcairo -lgdk_pixbuf-2.0 -lgio-2.0 -lpangoft2-1.0 -lpango-1.0 -lgobject-2.0 -lglib-2.0 -lharfbuzz -lfontconfig -lfreetype -lcairo -lpixman-1 /home/tobias/Qt/6.5.3/gcc_64/lib/libQt6Xml.so.6.5.3 -lgerbv -lpixman-1 /home/tobias/Qt/6.5.3/gcc_64/lib/libQt6Widgets.so.6.5.3 /home/tobias/Qt/6.5.3/gcc_64/lib/libQt6Gui.so.6.5.3 /home/tobias/Qt/6.5.3/gcc_64/lib/libQt6Core.so.6.5.3 /usr/lib/x86_64-linux-gnu/libGL.so
/usr/bin/ld: CMakeFiles/GerberStencilGenerator.dir/GerberStencilGenerator_autogen/mocs_compilation.cpp.o: in function `GerberStencilGenerator::qt_static_metacall(QObject*, QMetaObject::Call, int, void**)':
mocs_compilation.cpp:(.text+0xc375): undefined reference to `GerberStencilGenerator::afterWindowIsShown()'
collect2: error: ld returned 1 exit status
gmake[2]: *** [CMakeFiles/GerberStencilGenerator.dir/build.make:865: GerberStencilGenerator] Error 1
gmake[2]: Leaving directory '/home/tobias/src/git/GerberStencilGenerator/build'
gmake[1]: *** [CMakeFiles/Makefile2:86: CMakeFiles/GerberStencilGenerator.dir/all] Error 2
gmake[1]: Leaving directory '/home/tobias/src/git/GerberStencilGenerator/build'
gmake: *** [Makefile:136: all] Error 2



Подробнее здесь: https://stackoverflow.com/questions/793 ... e-to-cmake
Ответить

Быстрый ответ

Изменение регистра текста: 
Смайлики
:) :( :oops: :roll: :wink: :muza: :clever: :sorry: :angel: :read: *x)
Ещё смайлики…
   
К этому ответу прикреплено по крайней мере одно вложение.

Если вы не хотите добавлять вложения, оставьте поля пустыми.

Максимально разрешённый размер вложения: 15 МБ.

Вернуться в «C++»