Как скомпилировать простое приложение на Qt и c ++, используя g ++ на Mac OS X? - PullRequest
20 голосов
/ 14 января 2009

Я пытаюсь использовать Qt для школьного проекта, но у меня проблемы. Я начал следовать учебным пособиям и столкнулся с проблемами в Makefile. В большинстве уроков написано, что нужно запустить qmake -project, затем qmake и наконец make. Но когда я пытаюсь это сделать, я сталкиваюсь с ошибкой make: *** No targets specified and no makefile found. Stop.. Я действительно мало знаю о Makefiles Может ли кто-нибудь помочь направить меня в правильном направлении?

Ответы [ 5 ]

24 голосов
/ 14 января 2009

qmake на OS X создает файлы проекта Xcode. Вы можете создать Makefile с помощью:

qmake -spec macx-g++

Если вы не хотите, чтобы Makefile создавал пакет приложений, вы также можете удалить 'app_bundle' из вашей конфигурации, например, добавив следующие строки в файл проекта.

mac {
  CONFIG -= app_bundle
}
10 голосов
/ 03 апреля 2009

Как отмечали другие авторы, стандартное поведение qmake на Mac - создание файлов проекта xCode. Вы можете вводить что-то особенное каждый раз, когда запускаете qmake, или добавлять несколько строк в каждый файл проекта. Существует более постоянное решение. Я сталкиваюсь с этим каждый раз, когда устанавливаю Qt на свой Mac. В командной строке введите следующее:

cd /usr/local/Qt4.5/mkspecs/

sudo rm по умолчанию

sudo ln -sf macx-g ++ default

Каталог, указанный в первой онлайн-команде, может потребовать некоторой настройки. Первое «sudo» потребует административный пароль.

То, что это делает, это удаляет нарушающий файл, который указывает, что ключом -spec по умолчанию является mac-xcode или что-то в этом роде. Затем мы заменим его на файл, указывающий, что по умолчанию мы используем переключатель macx-g ++.

2 голосов
/ 08 сентября 2011

configure -platform macx-g ++ gmake

этого должно хватить на все вопросы

2 голосов
/ 14 января 2009

Прошло немного времени, но я думаю, что ваша проблема в том, что qmake в Mac OS X по умолчанию создает файлы проекта xcode вместо make-файлов. Вот почему при запуске make не было найдено ни одного make-файла. Вместо этого посмотрите в командной строке qmake, чтобы указать, как нацеливать make-файлы. Кроме того, может быть опция, которую вы можете добавить в .pro-файл для принудительного вывода вывода make-файла каждый раз.

2 голосов
/ 14 января 2009

Похоже, может быть проблема с вашей установкой Qt. Вы собрали его самостоятельно или установили сборку от кого-то другого? Кроме того, у вас есть пример файла .pro, который доставляет вам эту проблему?

...