Здравствуйте, гость ( Вход | Регистрация )
![]() ![]() |
|
ViGOur |
11.1.2009, 18:04
Сообщение
#31
|
![]() Мастер ![]() ![]() ![]() ![]() ![]() ![]() Группа: Модератор Сообщений: 3296 Регистрация: 9.10.2007 Из: Москва Пользователь №: 4 Спасибо сказали: 231 раз(а) Репутация: 40
|
А вот это не знаю, возможно никак!
|
|
|
|
|
AD |
11.1.2009, 18:14
Сообщение
#32
|
|
Профессионал ![]() ![]() ![]() ![]() ![]() Группа: Участник Сообщений: 2003 Регистрация: 4.2.2008 Из: S-Petersburg Пользователь №: 84 Спасибо сказали: 70 раз(а) Репутация: 17
|
Цитата(ViGOur @ 11.1.2009, 18:04) Link А вот это не знаю, возможно никак! ну есть один способ. Но он для извращенцев. Перейти на статическую сборку. Добавить еще один проект, выкинуть из него все файлы. Добавить нужные файлы и собрать. Но опять же это через голову! |
|
|
|
|
Litkevich Yuriy |
11.1.2009, 18:22
Сообщение
#33
|
![]() разработчик РЭА ![]() ![]() ![]() ![]() ![]() ![]() ![]() Группа: Сомодератор Сообщений: 9669 Регистрация: 9.1.2008 Из: Тюмень Пользователь №: 64 Спасибо сказали: 807 раз(а) Репутация: 94
|
а каким образом студия вообще реализует сборку в разных режимах, т.е. чем для студии (ее параметры) отличаются отладочная и релизная сборки?
|
|
|
|
|
AD |
11.1.2009, 18:32
Сообщение
#34
|
|
Профессионал ![]() ![]() ![]() ![]() ![]() Группа: Участник Сообщений: 2003 Регистрация: 4.2.2008 Из: S-Petersburg Пользователь №: 84 Спасибо сказали: 70 раз(а) Репутация: 17
|
Цитата(Litkevich Yuriy @ 11.1.2009, 18:22) Link а каким образом студия вообще реализует сборку в разных режимах, т.е. чем для студии (ее параметры) отличаются отладочная и релизная сборки? Странный вопрос. А чем отличается для MinGW? Ты в pro-файле указываешь, какие необходимо подключить библиотеке. В студии также. При разных сборках проекта подключаются разные библиотеки. |
|
|
|
|
Litkevich Yuriy |
11.1.2009, 18:39
Сообщение
#35
|
![]() разработчик РЭА ![]() ![]() ![]() ![]() ![]() ![]() ![]() Группа: Сомодератор Сообщений: 9669 Регистрация: 9.1.2008 Из: Тюмень Пользователь №: 64 Спасибо сказали: 807 раз(а) Репутация: 94
|
Цитата(AD @ 11.1.2009, 21:32) Link Ты в pro-файле указываешь, какие необходимо подключить библиотеке. нет, qmake знает какие dll'ки отладочные, а какие релизные и засовывает пути к ним в make-файлы. Отдельный файл для релизной сборки, отдельный для отладочной.А студия не пользуется qmake'ом и не создает make-файлы, значит держит настройки отдельно для релизной версии отдельно для отладочной. |
|
|
|
|
AD |
11.1.2009, 18:56
Сообщение
#36
|
|
Профессионал ![]() ![]() ![]() ![]() ![]() Группа: Участник Сообщений: 2003 Регистрация: 4.2.2008 Из: S-Petersburg Пользователь №: 84 Спасибо сказали: 70 раз(а) Репутация: 17
|
Хорошо, а что значат тогда строки:
and ? Поясни пожалуйста. А твое объяснение для студии в принципе правильное, кроме одного, она не может не пользоваться qmake-ом. Просто создаваемые файлы пихаются либо в какой-то не видимый для пользователя файл, либо бинарный кой-нибудь.АААА, понял. В студии при создании проекта используется как раз qmake. Но содержимое помещается не в makefile, а в xml файл формата .vcprj (формат проекта для Visual Studio, начиная с 7 версии). |
|
|
|
|
Litkevich Yuriy |
11.1.2009, 19:00
Сообщение
#37
|
![]() разработчик РЭА ![]() ![]() ![]() ![]() ![]() ![]() ![]() Группа: Сомодератор Сообщений: 9669 Регистрация: 9.1.2008 Из: Тюмень Пользователь №: 64 Спасибо сказали: 807 раз(а) Репутация: 94
|
Цитата(AD @ 11.1.2009, 21:43) Link CONFIGURE=shared CONFIG += sharedэта запись присутствует в файле %QTDIR%\mkspecs\qconfig.pri я ее просто оттуда украл qmake для случая с MinGW работает так: читает %QTDIR%\mkspecs\win32-g++\qmake.conf, в котором указан %QTDIR%\mkspecs\qconfig.pri, затем мой файл проекта foo.pro. Путь к %QTDIR% зашит в самом qmake. И на основе этих данных генерирует три мэйкфайла: Makefile - неизменные данные для разных видов сборок Makefile.Debug - данные специфичные для отладочной сборки Makefile.Release - данные специфичные для релизной сборки спцифичными являются библиотеки, например: обрати внимание на путь и на имена в переменной LIBS (для релизного файла там будет: -lQtGui4 -lQtCore4 )когда я командую make debug программа make читает первый мэйк файл, находит в нем точку входа debug, а в ней написано: т.е. $(MAKEFILE).Debug FORCE после подстановки переменной получается Makefile.Debug FORCE. Ну а в этом файле уже записаны все пути.Цитата(AD @ 11.1.2009, 21:43) Link кроме одного, она не может не пользоваться qmake-ом студия скорее всего неимеет ни малейшего представления об этой программе. И IDE обычно не работают с мэйкфайлами, т.к. могут сами выполнять все команды (запускать программы) которые в мэйкфайле записаны.Вывод6 надо разобратся с тем где и что записано в студии |
|
|
|
|
AD |
11.1.2009, 19:08
Сообщение
#38
|
|
Профессионал ![]() ![]() ![]() ![]() ![]() Группа: Участник Сообщений: 2003 Регистрация: 4.2.2008 Из: S-Petersburg Пользователь №: 84 Спасибо сказали: 70 раз(а) Репутация: 17
|
Я тебе и ответил, что все данные, как собирать записываются в файл формата .vcprj! А этот файл является файлом проекта. При нажатии на F7 или как-о по-другому студия считывает эти данные и в соответствии с ними компилирует. Как понимаешь, одновременно проект для статики и для динамики создать нельзя, поэтому можно сделать ход конем, как я и объяснил. Создать второй файл проекта, добавить в него нужные исходники и скомпилировать. Дома я эту технологию и попробую!
Сообщение отредактировал AD - 11.1.2009, 19:08 |
|
|
|
|
Litkevich Yuriy |
11.1.2009, 19:24
Сообщение
#39
|
![]() разработчик РЭА ![]() ![]() ![]() ![]() ![]() ![]() ![]() Группа: Сомодератор Сообщений: 9669 Регистрация: 9.1.2008 Из: Тюмень Пользователь №: 64 Спасибо сказали: 807 раз(а) Репутация: 94
|
Цитата(AD @ 11.1.2009, 22:08) Link Как понимаешь, одновременно проект для статики и для динамики создать нельзя А файл этот, при наличии интегратора создает интегратор?Цитата(AD @ 11.1.2009, 22:08) Link Создать второй файл проекта, добавить в него нужные исходники впринципе можно руками претащить из двух файлов в третий нучные части.можешь дать свой файл проекта для студии |
|
|
|
|
AD |
11.1.2009, 19:24
Сообщение
#40
|
|
Профессионал ![]() ![]() ![]() ![]() ![]() Группа: Участник Сообщений: 2003 Регистрация: 4.2.2008 Из: S-Petersburg Пользователь №: 84 Спасибо сказали: 70 раз(а) Репутация: 17
|
Цитата(Litkevich Yuriy @ 11.1.2009, 19:21) Link А файл этот, при наличии интегратора создает интегратор? впринципе можно руками претащить из двух файлов в третий нучные части. Да, он и создает и модифицирует, если ты добавляешь модуль, файлы и т.п. Можно. Но мое решение ничем не хуже тогда! Головной боли будет одинаковое количество! |
|
|
|
![]() ![]() ![]() |
|
Текстовая версия | Сейчас: 28.12.2025, 3:06 |