diff --git a/wiki/Prog/Development/Программные проект и иерархия каталогов.adoc b/wiki/Prog/Development/Программные проект и иерархия каталогов.adoc index 9508a94..c677c38 100644 --- a/wiki/Prog/Development/Программные проект и иерархия каталогов.adoc +++ b/wiki/Prog/Development/Программные проект и иерархия каталогов.adoc @@ -1,7 +1,8 @@ = Программный проект и иерархия каталогов :title-separator: {sp}| :category: Программирование -:tags: Linux, программирование, cmake +:tags: Linux, файлы, каталоги, программирование, cmake +:toc: Для операционных систем типа Linux принят стандарт https://ru.wikipedia.org/wiki/FHS[FHS] («стандарт иерархии файловой @@ -215,7 +216,7 @@ qDebug() << paths.systemConstDataDirectory().path(); Если исполняемый файл находится в каталоге `bin` и при этом окружение не совпадает ни с одним из перечисленных выше, то делается предположение, что исполняемый файл запускается из окружения, сформированного системой управления проектом, и в данный -момент разработчик ведёт отладку приложения. В этом случае целесообразно считать +момент идёт разработка (отладка) приложения. В этом случае целесообразно считать системными каталогами те, которые находятся внутри иерархии каталогов программного проекта. Если присутствуют каталоги, созданные системой управления проекта, то принимается решение, что окружение сформировано правильно, @@ -235,3 +236,19 @@ qDebug() << paths.systemConstDataDirectory().path(); |=== +==== Расположение в одном каталоге + +Если в ходе перечисленных выше проверок не удалось найти правильно +сформированное окружение, то применяется настройка по умолчанию, +которая соответствует ситуации, когда все типы файлов расположены +в одном каталоге с исполняемым файлом. Пример для такого случая приведён в таблице. + +[cols="4,4m,6m",options="header"] +|=== +| Назначение файла / каталога | Метод | Значение +| Исполняемый файл | executableFilePath() | /home/user/work/project/application +| Файлы настройки | systemConfigDirectory() | /home/user/work/project +| Неизменяемые файлы | systemConstDataDirectory() | /home/user/work/project +| Изменяемые файлы | systemVarDataDirectory() | /home/user/work/project +| Журналы работы | systemLogDirectory() | /home/user/work/project +|===