Russian Qt Forum
Ноябрь 22, 2024, 16:28
Добро пожаловать,
Гость
. Пожалуйста,
войдите
или
зарегистрируйтесь
.
Вам не пришло
письмо с кодом активации?
1 час
1 день
1 неделя
1 месяц
Навсегда
Войти
Начало
Форум
WIKI (Вики)
FAQ
Помощь
Поиск
Войти
Регистрация
Russian Qt Forum
>
Forum
>
Программирование
>
Общий
>
Единая рабочая среда на нескольких системах (Windows, Linux, Mac)
Страниц: [
1
]
Вниз
« предыдущая тема
следующая тема »
Печать
Автор
Тема: Единая рабочая среда на нескольких системах (Windows, Linux, Mac) (Прочитано 8322 раз)
Akon
Гость
Единая рабочая среда на нескольких системах (Windows, Linux, Mac)
«
:
Май 21, 2016, 11:43 »
Собственно, кто как организовывает свою рабочую среду (компиляторы, IDE, и т.д.), если нужно разрабатывать на C++/Qt из под нескольких ОСей, установленных на одной машине. Основными критериями эффективности выступают:
1. Исключение дублирования информации (например, сорцы библиотек - они будут одними и теми же для всех ОСей, или, например, конфигурационные файлы IDE).
2. Быстродействие (т.е., например, использовать прямой доступ к файловой системе, а не через git).
Например (сложный случай), установили мы Android SDK. Там помино бинарей, которые, ес-но, свои под каждую ОСь, есть сорцы и образы Android систем (здоровые ГБ файлы), которые могут быть едиными для всех ОСей. Опять же, произвели какие-нибудь манипуляции с Android SDK из под одной ОСи, желательно иметь эти же манипуляции совершенными и в других ОСях (общие конфиги).
Записан
Racheengel
Джедай : наставник для всех
Offline
Сообщений: 2679
Я работал с дискетам 5.25 :(
Re: Единая рабочая среда на нескольких системах (Windows, Linux, Mac)
«
Ответ #1 :
Май 21, 2016, 12:04 »
Эх, больная и для нас тема....
Решили так.
Сырцы либ лежат в одном репозитории.
Дллки и бинарники отдельно для каждой оси и компилятора в других репах.
На рабочие машины отдельно качаются исходники и отдельно бинарники.
При сборке юзаем qmake, в которых прописаны правила для каждой оси и компиля отдельно для всех либ и инклудов (пути, имена, версии...)
Как то так.
Записан
What is the 11 in the C++11? It’s the number of feet they glued to C++ trying to obtain a better octopus.
COVID не волк, в лес не уйдёт
Igors
Джедай : наставник для всех
Offline
Сообщений: 11445
Re: Единая рабочая среда на нескольких системах (Windows, Linux, Mac)
«
Ответ #2 :
Май 21, 2016, 15:29 »
Цитата: Akon от Май 21, 2016, 11:43
1. Исключение дублирования информации (например, сорцы библиотек - они будут одними и теми же для всех ОСей,
Выглядит весьма логично, но меня всегда останавливало включение "сетевых" файлов в проект.
Записан
vipet
Бывалый
Offline
Сообщений: 452
Re: Единая рабочая среда на нескольких системах (Windows, Linux, Mac)
«
Ответ #3 :
Май 21, 2016, 21:15 »
юзать кросс-платформенный менеджер-билдер проектов, напр. CMake. (А qmake - это имхо слабовато.)
IDE - это вторично и на выбор каждого девелопера. Кому-то vim за малину, кому-то гуевый подавай.
Записан
Racheengel
Джедай : наставник для всех
Offline
Сообщений: 2679
Я работал с дискетам 5.25 :(
Re: Единая рабочая среда на нескольких системах (Windows, Linux, Mac)
«
Ответ #4 :
Май 21, 2016, 22:32 »
cmake, vim... Вообще-то уже 21-й век на дворе
Записан
What is the 11 in the C++11? It’s the number of feet they glued to C++ trying to obtain a better octopus.
COVID не волк, в лес не уйдёт
vipet
Бывалый
Offline
Сообщений: 452
Re: Единая рабочая среда на нескольких системах (Windows, Linux, Mac)
«
Ответ #5 :
Май 22, 2016, 13:24 »
Цитата: Racheengel от Май 21, 2016, 22:32
cmake, vim... Вообще-то уже 21-й век на дворе
И?
Записан
Racheengel
Джедай : наставник для всех
Offline
Сообщений: 2679
Я работал с дискетам 5.25 :(
Re: Единая рабочая среда на нескольких системах (Windows, Linux, Mac)
«
Ответ #6 :
Май 22, 2016, 21:13 »
Как бы работать в 21 веке принято в IDE, а не в блокноте
Но это так, оффтоп.
Записан
What is the 11 in the C++11? It’s the number of feet they glued to C++ trying to obtain a better octopus.
COVID не волк, в лес не уйдёт
qate
Супер
Offline
Сообщений: 1177
Re: Единая рабочая среда на нескольких системах (Windows, Linux, Mac)
«
Ответ #7 :
Май 22, 2016, 22:55 »
Основная система linux (qtcreator, git), основная разработка и отладка в ней
Под венду собирается кросскомпиляцией mingw
Возможностей qmake+bash хватает
Под android пока только тесты(изучение), но в qtcreator проект собирался и на устройство устанавливался, т.е. процесс сборки похож
Записан
vipet
Бывалый
Offline
Сообщений: 452
Re: Единая рабочая среда на нескольких системах (Windows, Linux, Mac)
«
Ответ #8 :
Май 23, 2016, 14:53 »
Цитата: Racheengel от Май 22, 2016, 21:13
Как бы работать в 21 веке принято в IDE, а не в блокноте
Но это так, оффтоп.
vim - это блокнот?
это намного мощнее любого GUI-IDE.
Но, повторюсь, проект не должен привязывать к какой-либо IDE. Выбор того, в чем пишется код должен быть индивидуален.
P.S. Путешествие в увлекательный мир vim'a можно начать, например, с этого:
https://www.quora.com/How-can-I-be-a-faster-programmer/answer/Tommy-Ip?srid=oNPp
Записан
Racheengel
Джедай : наставник для всех
Offline
Сообщений: 2679
Я работал с дискетам 5.25 :(
Re: Единая рабочая среда на нескольких системах (Windows, Linux, Mac)
«
Ответ #9 :
Май 23, 2016, 15:44 »
Цитата: vipet от Май 23, 2016, 14:53
vim - это блокнот?
это намного мощнее любого GUI-IDE.
Вы серьезно?
Нет, я понимаю, там, скрипт поправить, питоном поиграться...
Ну а как насчет более трудоемких задач? Рефакторинг, отладка, например?
Цитата: vipet от Май 23, 2016, 14:53
Но, повторюсь, проект не должен привязывать к какой-либо IDE. Выбор того, в чем пишется код должен быть индивидуален.
Это спорный момент. Опять же, для питонов-пхп, наверное, непринципиально.
Но C++ проекты, как правило, собираются с помощью конкретных тулчейнов и отлаживаются с учетом тех инструментов, которые предоставляются производителями IDE. Например, Visual Studio. Там отладчик прибит гвоздями к IDE. Какой смысл разработчику использовать что-то другое?
Цитата: vipet от Май 23, 2016, 14:53
P.S. Путешествие в увлекательный мир vim'a можно начать, например, с этого:
https://www.quora.com/How-can-I-be-a-faster-programmer/answer/Tommy-Ip?srid=oNPp
Чисто практический вопрос.
Смотрите, вот есть, допустим, фирма, пишущая софт на C++/Qt. Каким образом переход на vim "с прыжка" улучшит производительность компании? Что там есть такого, что "родная" IDE предоставить не сможет?
(Речь идет о профессиональной разработке, большой отдел, большие проекты, большие деньги - как следствие, "переучивать" людей добро никто не даст).
Записан
What is the 11 in the C++11? It’s the number of feet they glued to C++ trying to obtain a better octopus.
COVID не волк, в лес не уйдёт
qate
Супер
Offline
Сообщений: 1177
Re: Единая рабочая среда на нескольких системах (Windows, Linux, Mac)
«
Ответ #10 :
Май 23, 2016, 20:42 »
Цитата: vipet от Май 23, 2016, 14:53
P.S. Путешествие в увлекательный мир vim'a можно начать, например, с этого:
https://www.quora.com/How-can-I-be-a-faster-programmer/answer/Tommy-Ip?srid=oNPp
т.е. чтобы довести vim до уровня креатора нужно ставить кучу плагинов, наверно даже чтобы просто мышь подвести к макросу и отобразить его нужен плагин
псевдографика тоже не красит внешний вид, и не сможет тягаться с графикой ибо она "псевдо"
двухрежимность (редактор и команды) vim на любителя, мне не неудобна
если кому нравится vim - я не против, не буду уговаривать на чтото иное, главное чтобы код был написан )
но новичкам vim я не посоветую
соглашусь с тем, что сборка не должна быть привязна к ide, и в qt она и не привязана
Записан
_Bers
Бывалый
Offline
Сообщений: 486
Re: Единая рабочая среда на нескольких системах (Windows, Linux, Mac)
«
Ответ #11 :
Май 24, 2016, 02:23 »
Цитата: Akon от Май 21, 2016, 11:43
Собственно, кто как организовывает свою рабочую среду (компиляторы, IDE, и т.д.), если нужно разрабатывать на C++/Qt из под нескольких ОСей, установленных на одной машине. Основными критериями эффективности выступают:
1. Исключение дублирования информации (например, сорцы библиотек - они будут одними и теми же для всех ОСей, или, например, конфигурационные файлы IDE).
все как обычно:
родные исходники - в одной репе,
external (готовые сборки сторонних библиотек) - в другой. можно хранить на фтп.
thirdparty (исходники сторонних библиотек) - в третьей.
ресурсы обычно на фтп живут.
и все это выкачивается в какой то рабочий каталог.
система сборки - cmake.
если хочется реально поиметь независимость от IDE.
если не хочется, тогда можно сидеть на qmake.
Цитата: Akon от Май 21, 2016, 11:43
2. Быстродействие (т.е., например, использовать прямой доступ к файловой системе, а не через git).
этот бред даже комментировать не хочется.
Записан
Страниц: [
1
]
Вверх
Печать
« предыдущая тема
следующая тема »
Перейти в:
Пожалуйста, выберите назначение:
-----------------------------
Qt
-----------------------------
=> Вопросы новичков
=> Уроки и статьи
=> Установка, сборка, отладка, тестирование
=> Общие вопросы
=> Пользовательский интерфейс (GUI)
=> Qt Quick
=> Model-View (MV)
=> Базы данных
=> Работа с сетью
=> Многопоточное программирование, процессы
=> Мультимедиа
=> 2D и 3D графика
=> OpenGL
=> Печать
=> Интернационализация, локализация
=> QSS
=> XML
=> Qt Script, QtWebKit
=> ActiveX
=> Qt Embedded
=> Дополнительные компоненты
=> Кладовая готовых решений
=> Вклад сообщества в Qt
=> Qt-инструментарий
-----------------------------
Программирование
-----------------------------
=> Общий
=> С/C++
=> Python
=> Алгоритмы
=> Базы данных
=> Разработка игр
-----------------------------
Компиляторы и платформы
-----------------------------
=> Linux
=> Windows
=> Mac OS X
=> Компиляторы
===> Visual C++
-----------------------------
Разное
-----------------------------
=> Новости
===> Новости Qt сообщества
===> Новости IT сферы
=> Говорилка
=> Юмор
=> Объявления
Загружается...