Предположим, у меня есть файл C++ с именем animals.cpp
. Как сгенерировать moc-файл (moc_animals.cpp
) с помощью CMake?
Как сгенерировать файлы moc_*.cpp с помощью CMake
Ответы (2)
Есть несколько способов. если вы используете версию CMAKE выше 2.8.6, вы можете использовать AUTOMOC который должен делать все автоматически за вас.
Здесь есть хороший учебник .
Как указывает @spectras, это предполагает соблюдение их соглашения об именах. Если вы хотите использовать свое конкретное имя, вы, конечно, можете использовать ручной механизм, просто вызвав qt4_wrap_cpp
или qt5_wrap_cpp
. Это также то, что вы должны сделать, если вы привязаны к более старым версиям CMAKE.
person
Stefano
schedule
01.09.2017
Это правильный путь, если следовать номенклатуре, которая с ним связана. Если по какой-то причине вы этого не сделаете, вы все равно можете прибегнуть к ручному
qt4_wrap_cpp
или qt5_wrap_cpp
.
- person spectras; 01.09.2017
да ... тогда я добавлю ваш комментарий к своему ответу ... спасибо!
- person Stefano; 01.09.2017
В каталоге bin вашей установки Qt есть команда moc.
/Пользователи/имя/Qt 5.7/...../bin
Если вы добавите его с помощью execute_process() или add_custom_command(), вы сможете делать то, что собираетесь делать. Вы также можете использовать AUTOMOC.
person
Paltoquet
schedule
01.09.2017