This commit is contained in:
Andrei Astafev 2020-04-13 12:06:11 +03:00
parent bdda710617
commit e9970d2b2b

View File

@ -1,7 +1,8 @@
= Программный проект и иерархия каталогов = Программный проект и иерархия каталогов
:title-separator: {sp}| :title-separator: {sp}|
:category: Программирование :category: Программирование
:tags: Linux, программирование, cmake :tags: Linux, файлы, каталоги, программирование, cmake
:toc:
Для операционных систем типа Linux принят стандарт Для операционных систем типа Linux принят стандарт
https://ru.wikipedia.org/wiki/FHS[FHS] («стандарт иерархии файловой https://ru.wikipedia.org/wiki/FHS[FHS] («стандарт иерархии файловой
@ -215,7 +216,7 @@ qDebug() << paths.systemConstDataDirectory().path();
Если исполняемый файл находится в каталоге `bin` и при этом окружение не совпадает Если исполняемый файл находится в каталоге `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
|===