Форум русскоязычного сообщества Ubuntu


Увидели сообщение с непонятной ссылкой, спам, непристойность или оскорбление?
Воспользуйтесь ссылкой «Сообщить модератору» рядом с сообщением!

Автор Тема: Иконка приложения[c++/qt/ubuntu 9.10]  (Прочитано 5136 раз)

0 Пользователей и 1 Гость просматривают эту тему.

Оффлайн breeve

  • Автор темы
  • Любитель
  • *
  • Сообщений: 60
    • Просмотр профиля
Иконка приложения[c++/qt/ubuntu 9.10]
« : 28 Марта 2010, 14:05:30 »
Добрый день уважаемые!
Существует проблема. Пишу в связке с++/Qt, не могу иконку на приложение установить. В документации множество ссылок:
вот и вот. Вроде как нужно создать файл либо .theme либо .desktop(не понятно) в нем прописать директории к иконкам, и т.д. Потом этот файл куда-то сунуть и каким-то образов связать с моим приложением..
Есть ли знающие люди? может кто-нибудь объяснить как устроена система с точки зрения конфигов, иконок. 
Ubuntu 10.04
Dual 1.6гГц
Nvidia GF 8600 gts 512mb Ram 2Gb

Оффлайн Mam(O)n

  • Старожил
  • *
  • Сообщений: 5855
    • Просмотр профиля
Re: Иконка приложения[c++/qt/ubuntu 9.10]
« Ответ #1 : 28 Марта 2010, 14:26:05 »
Допустим разберём пакет mozilla-firefix-build. Там есть такие файлы:

/usr/share/applications/firefox-mozilla-build.desktop
/usr/share/pixmaps/firefox-mozilla-build.png

Код: (/usr/share/applications/firefox-mozilla-build.desktop) [Выделить]
[Desktop Entry]
Encoding=UTF-8
Name=Mozilla Build of Firefox
GenericName=Browser
Comment=Web Browser
Exec=firefox %u
Icon=firefox-mozilla-build
Terminal=false
X-MultipleArgs=false
StartupNotify=true
StartupWMClass=Firefox
Type=Application
Categories=Network;WebBrowser;

Думаю, что этой информации должно хватить...

Оффлайн breeve

  • Автор темы
  • Любитель
  • *
  • Сообщений: 60
    • Просмотр профиля
Re: Иконка приложения[c++/qt/ubuntu 9.10]
« Ответ #2 : 28 Марта 2010, 14:57:21 »
Файлы то эти я видел. Там все понятно, не понятно следующее:
 - В самой программе(в исходном коде)должна быть связь с этими файлами? Не понятно как они связаны.
 - В какую директорию помещать эти конфиги?
Ubuntu 10.04
Dual 1.6гГц
Nvidia GF 8600 gts 512mb Ram 2Gb

Оффлайн Mam(O)n

  • Старожил
  • *
  • Сообщений: 5855
    • Просмотр профиля
Re: Иконка приложения[c++/qt/ubuntu 9.10]
« Ответ #3 : 28 Марта 2010, 14:59:32 »
- В самой программе(в исходном коде)должна быть связь с этими файлами?
Нет. Файлы должны быть в дистрибутивном пакете и прописываться в систему по тем путям.
- В какую директорию помещать эти конфиги?
См. прошлый пост.

Оффлайн breeve

  • Автор темы
  • Любитель
  • *
  • Сообщений: 60
    • Просмотр профиля
Re: Иконка приложения[c++/qt/ubuntu 9.10]
« Ответ #4 : 28 Марта 2010, 15:29:19 »
Нет. Файлы должны быть в дистрибутивном пакете и прописываться в систему по тем путям.
У меня нет никаких пакетов. Есть бинарник и все. И что значит прописываться в систему по тем путям?
Ubuntu 10.04
Dual 1.6гГц
Nvidia GF 8600 gts 512mb Ram 2Gb

Оффлайн Mam(O)n

  • Старожил
  • *
  • Сообщений: 5855
    • Просмотр профиля
Re: Иконка приложения[c++/qt/ubuntu 9.10]
« Ответ #5 : 28 Марта 2010, 15:38:45 »
У меня нет никаких пакетов. Есть бинарник и все.
Так, если хочешь, чтоб программа умела устанавливаться и интегрироваться в Ubuntu, то придётся пакетировать в .deb. Если же этого не хочешь, то:

И что значит прописываться в систему по тем путям?
Просто кинь файлик с иконкой (.png) в /usr/share/pixmaps и файл с описанием программы (.desktop) в /usr/share/applications

Оффлайн breeve

  • Автор темы
  • Любитель
  • *
  • Сообщений: 60
    • Просмотр профиля
Re: Иконка приложения[c++/qt/ubuntu 9.10]
« Ответ #6 : 28 Марта 2010, 15:40:08 »
А насчет директорий у меня в апликейшенз лежат бинарники и ни одного desktop'а. Еще тут есть список всех desktop'ов с путями только не понятно куда они ведут..
Ubuntu 10.04
Dual 1.6гГц
Nvidia GF 8600 gts 512mb Ram 2Gb

Оффлайн Mam(O)n

  • Старожил
  • *
  • Сообщений: 5855
    • Просмотр профиля
Re: Иконка приложения[c++/qt/ubuntu 9.10]
« Ответ #7 : 28 Марта 2010, 15:42:11 »
А насчет директорий у меня в апликейшенз лежат бинарники и ни одного desktop'а.
У тебя точно ubuntu? Или ты не туда смотришь, ибо у меня:
(Нажмите, чтобы показать/скрыть)

Оффлайн breeve

  • Автор темы
  • Любитель
  • *
  • Сообщений: 60
    • Просмотр профиля
Re: Иконка приложения[c++/qt/ubuntu 9.10]
« Ответ #8 : 28 Марта 2010, 15:52:24 »
Просто кинь файлик с иконкой (.png) в /usr/share/pixmaps и файл с описанием программы (.desktop) в /usr/share/applications
Собственно что я и пытаюсь сделать.. У меня в ресурсах залита иконка и я пытаюсь программно скинуть ее в папку /usr/.. но не получается поскольку нет доступа к этой папке.. Если в ручную все это сделать то иконка устанавливается)

Цитировать
У тебя точно ubuntu? Или ты не туда смотришь, ибо у меня:
Уппс.. У меня тоже самое просто я видимо до этого как то криво посморел..  ???
Ubuntu 10.04
Dual 1.6гГц
Nvidia GF 8600 gts 512mb Ram 2Gb

Оффлайн Mam(O)n

  • Старожил
  • *
  • Сообщений: 5855
    • Просмотр профиля
Re: Иконка приложения[c++/qt/ubuntu 9.10]
« Ответ #9 : 28 Марта 2010, 15:56:20 »
У меня в ресурсах залита иконка и я пытаюсь программно скинуть ее в папку /usr/.. но не получается поскольку нет доступа к этой папке.. Если в ручную все это сделать то иконка устанавливается)
Из бинарника чтоль пытаешься в систему запихать файл? Так никто не делает. Бинарники отдельно, иконки отдельно, описалово отдельно. И это собирают уже в установочном пакете.

Оффлайн breeve

  • Автор темы
  • Любитель
  • *
  • Сообщений: 60
    • Просмотр профиля
Re: Иконка приложения[c++/qt/ubuntu 9.10]
« Ответ #10 : 28 Марта 2010, 16:21:25 »
Из бинарника чтоль пытаешься в систему запихать файл? Так никто не делает. Бинарники отдельно, иконки отдельно, описалово отдельно. И это собирают уже в установочном пакете.
Я конечно согласен так никто не делает. Не знаю как можно сделать по другому.. Нужно было всего лишь иконку добавить, а если подумать то тут хорошо было бы разобраться в том как пакеты создавать. А это не так просто, и не так быстро я думаю... Читал по этому поводу мануал ничего не понял. Может есть какая книжка толковая?

Я тут от скуки пытался в бинарник залить скрипт, который после запуска программы копирует файлы. но что-то он не хочет работать)
« Последнее редактирование: 28 Марта 2010, 16:24:31 от breeve »
Ubuntu 10.04
Dual 1.6гГц
Nvidia GF 8600 gts 512mb Ram 2Gb

Оффлайн Mam(O)n

  • Старожил
  • *
  • Сообщений: 5855
    • Просмотр профиля
Re: Иконка приложения[c++/qt/ubuntu 9.10]
« Ответ #11 : 28 Марта 2010, 16:28:28 »
Да, тема с первого взгляда не простая. Но, если понять основы, то в дальнейшем можно быстро разобраться. Книжек я не видел. А сам, для пакетирования пользуюсь dh_make, которая создаёт костяк конфиг-файлов и пакетных скриптов и dpkg-buildpackage для сборки из исходников в бинарный пакет .deb.

Вот пара перывх попавшихся ссылок из гугля:
http://www.openkazan.info/node/3635
http://habrahabr.ru/blogs/linux/78086/#habracut

Оффлайн breeve

  • Автор темы
  • Любитель
  • *
  • Сообщений: 60
    • Просмотр профиля
Re: Иконка приложения[c++/qt/ubuntu 9.10]
« Ответ #12 : 28 Марта 2010, 17:45:57 »
Нашел тут достаточно полное описание по созданию пакета, вот.  Если я правильно понял цепочку действий то необходимо:
 - Написать программу
 - autoconf/automake
 - далее из makefile сделать deb
Не совсем ясен 2-ой шаг. Писал все время на QtCreator ни когда не сталкивался с makefile'ами. Все за меня делала среда.
Вот есть у меня исходники, файл проектов и т.д.
захожу в директорию со всем добром пишу:
qmake -project
qmake
make
Далее появляется makefile. Что делать? По ссылочке написано надо изменить некоторые параметры в makefile'е. У меня таких параметров нет..
Ubuntu 10.04
Dual 1.6гГц
Nvidia GF 8600 gts 512mb Ram 2Gb

Оффлайн Mam(O)n

  • Старожил
  • *
  • Сообщений: 5855
    • Просмотр профиля
Re: Иконка приложения[c++/qt/ubuntu 9.10]
« Ответ #13 : 28 Марта 2010, 19:16:33 »
Второй шаг это qmake, что у тебя. Тобишь нужно настроить систему сборки.

Далее появляется makefile. Что делать? По ссылочке написано надо изменить некоторые параметры в makefile'е. У меня таких параметров нет..
Там смысл, чтоб установка по make install шла в каталог, заданный какой-то там переменной. Сейчас не вспомню и найти в доках не могу... Про qmake я незнаю, но может там както выставить её можно...

 

Страница сгенерирована за 0.029 секунд. Запросов: 25.