Russian Qt Forum
Март 29, 2024, 14:27
Добро пожаловать,
Гость
. Пожалуйста,
войдите
или
зарегистрируйтесь
.
Вам не пришло
письмо с кодом активации?
1 час
1 день
1 неделя
1 месяц
Навсегда
Войти
Начало
Форум
WIKI (Вики)
FAQ
Помощь
Поиск
Войти
Регистрация
Russian Qt Forum
>
Forum
>
Qt
>
Qt-инструментарий
>
qbs как начать
Страниц:
1
2
[
3
]
Вниз
« предыдущая тема
следующая тема »
Печать
Автор
Тема: qbs как начать (Прочитано 26253 раз)
__Heaven__
Джедай : наставник для всех
Offline
Сообщений: 2130
Re: qbs как начать
«
Ответ #30 :
Декабрь 28, 2016, 15:04 »
Попробовал создать модуль для библиотеки. Его подключение происходит успешно при указании пути к нему непосредственно в проекте
Код
Javascript
import
qbs
Project
{
qbsSearchPaths
:
"C:/Development/my-qbs-extensions"
....
}
Модуль считывается из C:\Development\my-qbs-extensions\modules
При попытке убрать указанное свойство и скопировать модуль в профиль (C:\Users\username\AppData\Roaming\QtProject\qtcreator\qbs\1.7.0\profiles\qtc_Desktop__135af0bf\modules), где уже лежит Qt происходит ошибка, то есть, модуль не найден.
Быть может как-то можно через этап сборки задавать qbsSearchPaths ?
Записан
__Heaven__
Джедай : наставник для всех
Offline
Сообщений: 2130
Re: qbs как начать
«
Ответ #31 :
Декабрь 28, 2016, 15:17 »
Ой. Запутался в дирректориях.
В общем, работает всё при копировании модуля в папку с профилем.
Записан
__Heaven__
Джедай : наставник для всех
Offline
Сообщений: 2130
Re: qbs как начать
«
Ответ #32 :
Декабрь 28, 2016, 15:21 »
Остаётся неудобство в том, что при обновлении qbs придётся перекидывать модули в новые папки профилей.
Записан
ViTech
Гипер активный житель
Offline
Сообщений: 858
Re: qbs как начать
«
Ответ #33 :
Декабрь 28, 2016, 15:51 »
При запуске qbs в параметре "--settings-dir" можно указать путь, где хранится конфигурация qbs и с которой выполняется работа. Собственно, QtCreator так и делает. Добавить общий путь qbsSearchPaths можно
командой
. В этом "settings-dir" есть файл qbs.conf, в котором, как я понимаю, описываются основные настройки. Чтобы не возиться с командами, его можно и руками изменить:
Код:
[org]
qt-project\qbs\preferences\qbsSearchPaths=C:/Development/my-qbs-extensions
...
И тогда собственные модули могут постоянно в одном месте храниться, никуда их копировать не придётся.
Записан
Пока сам не сделаешь...
__Heaven__
Джедай : наставник для всех
Offline
Сообщений: 2130
Re: qbs как начать
«
Ответ #34 :
Декабрь 28, 2016, 17:10 »
Добавить общий путь можно и в настройках QtCreator/вкладка qbs, значение preferences.qbsSearchPaths. Но тогда теряются модули Qt, в связи с чем в список необходимо ещё добавлять и прежнюю папку с профилем.
Кажется нельзя заставить QtCreator вызывать qbs со своим --settings-dir
Записан
ViTech
Гипер активный житель
Offline
Сообщений: 858
Re: qbs как начать
«
Ответ #35 :
Декабрь 28, 2016, 18:37 »
Цитата: __Heaven__ от Декабрь 28, 2016, 17:10
Добавить общий путь можно и в настройках QtCreator/вкладка qbs, значение preferences.qbsSearchPaths. Но тогда теряются модули Qt, в связи с чем в список необходимо ещё добавлять и прежнюю папку с профилем.
Похоже в этом случае qbsSearchPaths добавляется для конкретного профиля, а не для общих настроек qbs в этом settings-dir.
Записан
Пока сам не сделаешь...
Авварон
Джедай : наставник для всех
Offline
Сообщений: 3257
Re: qbs как начать
«
Ответ #36 :
Декабрь 29, 2016, 11:39 »
А зачем класть модули в общее место, если можно положить прямо в проект и сделать, скажем, гит сабмодулем и шарить между проектами.
Записан
__Heaven__
Джедай : наставник для всех
Offline
Сообщений: 2130
Re: qbs как начать
«
Ответ #37 :
Декабрь 29, 2016, 18:59 »
Авварон, проблема в том, что модули содержат абсолютные пути, которые могут отличаться на 2 машинах.
Записан
Авварон
Джедай : наставник для всех
Offline
Сообщений: 3257
Re: qbs как начать
«
Ответ #38 :
Декабрь 29, 2016, 23:02 »
Цитата: __Heaven__ от Декабрь 29, 2016, 18:59
Авварон, проблема в том, что модули содержат абсолютные пути, которые могут отличаться на 2 машинах.
Кажется, можно сделать переменную модуля и конфигурить её извне (а-ля cpp.includePaths: [...])
Записан
ViTech
Гипер активный житель
Offline
Сообщений: 858
Re: qbs как начать
«
Ответ #39 :
Декабрь 30, 2016, 11:44 »
Цитата: Авварон от Декабрь 29, 2016, 23:02
Кажется, можно сделать переменную модуля и конфигурить её извне (а-ля cpp.includePaths: [...])
Можно. Но настроить библиотеку надо на одной машине для нескольких проектов. Поэтому проще один раз в qbs-модуле библиотеки пути к ней прописать, чем в каждом проекте это делать.
Записан
Пока сам не сделаешь...
__Heaven__
Джедай : наставник для всех
Offline
Сообщений: 2130
Re: qbs как начать
«
Ответ #40 :
Январь 27, 2017, 08:00 »
ViTech, а зачем такое разделение h и cpp на группы? Это специально сделано для случая, когда все исходники в одной директории?
Я создал проект с папками src и include. Получил дерево
Include
->MyProject.qbs
->include
---->MyClass.h
Source
->MyProject.qbs
->src
---->MyClass.cpp
Имхо многовато листьев, либо что-то делаю не так. Хотелось бы не видеть папки include и src, а сразу их содержимое.
Записан
ViTech
Гипер активный житель
Offline
Сообщений: 858
Re: qbs как начать
«
Ответ #41 :
Январь 27, 2017, 13:45 »
Цитата: __Heaven__ от Январь 27, 2017, 08:00
ViTech, а зачем такое разделение h и cpp на группы? Это специально сделано для случая, когда все исходники в одной директории?
Разделять файлы на группы можно по всякому, в зависимости от структуры проекта и личных предпочтений.
Цитата: __Heaven__ от Январь 27, 2017, 08:00
Я создал проект с папками src и include. Получил дерево
...
Можно посмотреть, как выглядит MyProject.qbs? И лучше проект целиком показать.
Записан
Пока сам не сделаешь...
__Heaven__
Джедай : наставник для всех
Offline
Сообщений: 2130
Re: qbs как начать
«
Ответ #42 :
Январь 27, 2017, 19:56 »
https://github.com/dsbabkov/MeshTranslator
Залил
Записан
ViTech
Гипер активный житель
Offline
Сообщений: 858
Re: qbs как начать
«
Ответ #43 :
Январь 28, 2017, 13:15 »
Если немного отвлечься и поразмышлять, то получается такая картина: Qbs - это система сборки и существует сама по себе, без привязки к какой-либо IDE. В такой "самостоятельной" системе сборки не должно быть фишек, специфичных для IDE, даже такой "родной", как Qt Creator. Потому что потом одни разработчики захотят фишек для KDevelop, другие для Visual Studio и т.д. При таком раскладе получается, что отображение структуры проекта в IDE должно настраиваться в ней самой, на основе проектных файлов систем сборки. Соответственно храниться эти настройки будут в специфичных файлах IDE (как например *.user в QtCreator), которые индивидуальны для разработчика и не хранятся в системах контроля версий.
Qt Creator отображает файлы по группам, описанным в Qbs. По идее, должны быть расширенные настройки в IDE, позволяющие отображать файлы проекта по желаниям пользователя, но в Qt Creator я такого особо не нашёл. Поэтому остаётся довольствоваться тем, что есть
.
Чтобы немного уменьшить дерево файлов, можно организовать исходники в одной группе, а не в двух:
Код:
Group {
name: "Sources"
prefix: "./**/"
files: [ "*.h", "*.cpp" ]
}
Можно ещё по другому организовать структуру файлов самого проекта, когда в папке
source
файлы
*.h
лежат рядом с
*.cpp
, а в
include
лежат "ссылки" в виде
#include "../source/GeometryReader.h"
, но это уже от политики партии зависит
.
Записан
Пока сам не сделаешь...
Страниц:
1
2
[
3
]
Вверх
Печать
« предыдущая тема
следующая тема »
Перейти в:
Пожалуйста, выберите назначение:
-----------------------------
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 сферы
=> Говорилка
=> Юмор
=> Объявления
Загружается...