LINUX.ORG.RU

Куда устанавливать приложения.


0

0

Написал приложение на qt, система сборки cmake. Не могу определится, куда должны расскидываться файлы при make install?

Файлы следующие:
1)Сам бинарник
2).desktop
3)иконка для desktop
4)Есть еще файл с переводом, но его наверное лучше вшить в программу.


Ответ на: комментарий от placement_new

А если устанавливать .desktop в home юзера, а сам бинарник в /usr/bin то получится что без sudo приложение установится не сможет, а если выполнять sudo make install то .desktop в хомяке будет принадлежать руту. Вот в арче .desktop вроде лежат в /usr/share/applications но я не уверен что так во всех дистрах.

n4ela
() автор топика
Ответ на: комментарий от n4ela

.desktop — в /usr/share/applications (никоим разом не в хомяк)
иконку — в /usr/share/pixmaps
бинарник — в /usr/bin

И при всем этом крайне желательно учесть возможность DESTDIR, отличного от /

dexpl ★★★★★
()

Никуда. Выкиньте cmake. Достаточно qmake.

Распихивание по каталогам - забота создателей дистрибтивов.

Сделайте явным бинарник, данные, десктоп-файлы, и напишите вменяемый INSTALL.

ip1981 ☆☆
()
Ответ на: комментарий от alex_custov

Спасибо, вроде ясно стало.

Выкиньте cmake. Достаточно qmake.

cmake стал использовать потому что не срет файлами компиляции в дерево исходников

n4ela
() автор топика
Ответ на: комментарий от n4ela

> cmake стал использовать потому что не срет файлами компиляции в дерево исходников

qmake разве так не умеет?

azure ★★
()

Linux Filesystem Hierarchy Standard гугли

init_6 ★★★★★
()
Ответ на: комментарий от n4ela

>cmake стал использовать потому что не срет файлами компиляции в дерево исходников

Только поэтому ? :))

Добавь в .pro:

OBJECTS_DIR = .objects
MOC_DIR = $$OBJECTS_DIR
UI_HEADERS_DIR = $$OBJECTS_DIR
UI_SOURCES_DIR = $$OBJECTS_DIR
RCC_DIR = $$OBJECTS_DIR

alex_custov ★★★★★
()
Ответ на: комментарий от alex_custov

> 1) /usr/bin

${CMAKE_INSTALL_PREFIX} не?

может оказаться и /usr/local/bin, и вообще жёстко прописывать не надо, пользователь может захотеть выставить CMAKE_INSTALL_PREFIX и ожидать установки по указанному в нём пути

unC0Rr ★★★★★
()

не понял, в cmake нет $PREFIX? я всё ставлю исключительно в /opt, что мне прикажете делать с вашим приложением?

guttalinux2088
()
Ответ на: комментарий от troorl

> Здесь никто про prefix не слышал?

во-во, такое ощущение, что нас ждёт линуксокапец, что кроме профессиональных троллей ms наняла ещё и профессиональных программистов, которые топчутся по истокам, и профессиональных пользователей, которые этим пользуются и хвалят.

guttalinux2088
()
Ответ на: комментарий от unC0Rr

я не знаю как в cmake. В qmake например ты пишешь абсолютные пути, а установить в другой префикс можно через make install INSTALL_ROOT=<...>

alex_custov ★★★★★
()
Ответ на: комментарий от troorl

>Здесь никто про prefix не слышал?

+1 не одного вас тревожит этот вопрос!

Ingwar ★★★★★
()
Вы не можете добавлять комментарии в эту тему. Тема перемещена в архив.