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


Считаете, что Ubuntu недостаточно дружелюбна к новичкам?
Помогите создать новое Руководство для новичков!

Автор Тема: Hello, World на GTK+ (компиляция)  (Прочитано 2304 раз)

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

Оффлайн MaximKaz

  • Автор темы
  • Участник
  • *
  • Сообщений: 206
  • С++ forever!
    • Просмотр профиля
Hello, World на GTK+ (компиляция)
« : 03 Июнь 2012, 18:46:01 »
Использую Geany 0.21 для программирования на С++ и Pascal. Очень захотелось запилить Hello World (C++) с кнопочками и окошком на GTK. Проблема в отсутствии нужных библиотек. Сам интерфейс нарисовал в Glade.
#include <gtkmm.h>
#include <libglademm/xml.h>
Ошибка:
фатальная ошибка: libglademm/xml.h: Нет такого файла или каталога.
фатальная ошибка: gtkmm.h: Нет такого файла или каталога.
sudo apt-get install libgtkmm-2.4-dev не помогает!
Догадываюсь, что эти библиотеки нужно скачать из репозитория. Знатоки, не подскажете как это сделать??? Заранее спасибо!  :)
« Последнее редактирование: 03 Июнь 2012, 19:10:52 от MaximKaz »
Fedora 17 | KDE | Intel Core i3 3.1 Ghz | RAM 2x2 | nVidia GeForce GTS 250 (1 Gb) | 620 Gb HDD (SATA & IDE) | DSL - 8 Mb/sec

Оффлайн RazrFalcon

  • O_o
  • Старожил
  • *
  • Сообщений: 3144
  • Zombie Mod
    • Просмотр профиля
    • Я на GitHub
Re: Hello, World на GTK+ (компиляция)
« Ответ #1 : 03 Июнь 2012, 20:48:41 »
а вы либу залинковали?
Gentoo + KDE, Official Windows Hater
Хотите помочь нашей вики: http://help.ubuntu.ru/wiki/fixme

Оффлайн Чистый

  • Почётный модератор
  • Старожил
  • *
  • Сообщений: 3474
  • nix - вот оно счастье...
    • Просмотр профиля
Re: Hello, World на GTK+ (компиляция)
« Ответ #2 : 03 Июнь 2012, 23:17:24 »
укажите что бы он подключил библиотеки:
g++ simple.cc -o simple `pkg-config gtkmm-3.0 --cflags --libs`
Тестовый репозиторий kdeNeur ppa:devcode/kdeneur
各々が死ぬことをどのように決定する

Оффлайн MaximKaz

  • Автор темы
  • Участник
  • *
  • Сообщений: 206
  • С++ forever!
    • Просмотр профиля
Re: Hello, World на GTK+ (компиляция)
« Ответ #3 : 04 Июнь 2012, 13:04:34 »
укажите что бы он подключил библиотеки:
g++ simple.cc -o simple `pkg-config gtkmm-3.0 --cflags --libs`
Этих билиотек не было. Сделал так:
sudo apt-get install libgtkmm-3.0-devНашлась билиотека gtkmm.h а что делать с libglademm/xml.h? Я же рисую в Glade и одной gtkmm.h нехватает, нужны ещё библиотеки для подключения уже рисованных интерфесов. Огромное вам спасибо, но вопросики не закончились.  :D
а вы либу залинковали?
Да, линковал.
« Последнее редактирование: 04 Июнь 2012, 13:16:07 от MaximKaz »
Fedora 17 | KDE | Intel Core i3 3.1 Ghz | RAM 2x2 | nVidia GeForce GTS 250 (1 Gb) | 620 Gb HDD (SATA & IDE) | DSL - 8 Mb/sec

Оффлайн mkarasik

  • Участник
  • *
  • Сообщений: 163
    • Просмотр профиля
Re: Hello, World на GTK+ (компиляция)
« Ответ #4 : 04 Июнь 2012, 17:03:37 »
фатальная ошибка: libglademm/xml.h: Нет такого файла или каталога.
фатальная ошибка: gtkmm.h: Нет такого файла или каталога.
sudo apt-get install libgtkmm-2.4-dev не помогает!
...

Ну где, блин, логика? Отсутствует заголовок из библиотеки libglademm поэтому libgtkmm должен помочь.
Ну и до кучи, каким боком линковка относится к отсутствию заголовка или неправильному пути к нему в процессе компиляции?

Оффлайн MaximKaz

  • Автор темы
  • Участник
  • *
  • Сообщений: 206
  • С++ forever!
    • Просмотр профиля
Re: Hello, World на GTK+ (компиляция)
« Ответ #5 : 04 Июнь 2012, 20:22:53 »
фатальная ошибка: libglademm/xml.h: Нет такого файла или каталога.
фатальная ошибка: gtkmm.h: Нет такого файла или каталога.
sudo apt-get install libgtkmm-2.4-dev не помогает!
...
Ну где, блин, логика? Отсутствует заголовок из библиотеки libglademm поэтому libgtkmm должен помочь.
Вы умеете читать мои ответы и ответы других форумчан? Эта библиотека и так помогла, только начиная с 3 версии и при подключении этой библиотеки при компиляции.
Fedora 17 | KDE | Intel Core i3 3.1 Ghz | RAM 2x2 | nVidia GeForce GTS 250 (1 Gb) | 620 Gb HDD (SATA & IDE) | DSL - 8 Mb/sec

Оффлайн mkarasik

  • Участник
  • *
  • Сообщений: 163
    • Просмотр профиля
Re: Hello, World на GTK+ (компиляция)
« Ответ #6 : 04 Июнь 2012, 20:33:30 »
Вы умеете читать мои ответы и ответы других форумчан? Эта библиотека и так помогла, только начиная с 3 версии и при подключении этой библиотеки при компиляции.

Что я не так прочитал?

...
Нашлась билиотека gtkmm.h а что делать с libglademm/xml.h?
...

Мыши плакали кололись, но продолжали есть кактус.

Оффлайн MaximKaz

  • Автор темы
  • Участник
  • *
  • Сообщений: 206
  • С++ forever!
    • Просмотр профиля
Re: Hello, World на GTK+ (компиляция)
« Ответ #7 : 04 Июнь 2012, 21:18:54 »
Цитировать
Что я не так прочитал?
Цитировать
Сделал так:
sudo apt-get install libgtkmm-3.0-dev
Это вы не читали? Вы же сказали что
Цитировать
libgtkmm должен помочь.
Дык он уже и так помог, зачем мне 2 раз это говорить?
Цитировать
Мыши плакали кололись, но продолжали есть кактус.
Лучше бы помогли, чем подкалывать, я пока ещё мало понимаю в Linux (переходил с окошек потому что). Если это делается с помощью всё той же libgtkmm, то тогда компилировалось бы нормально, а этот заголовочный файл всё равно не найден.
Fedora 17 | KDE | Intel Core i3 3.1 Ghz | RAM 2x2 | nVidia GeForce GTS 250 (1 Gb) | 620 Gb HDD (SATA & IDE) | DSL - 8 Mb/sec

Оффлайн mkarasik

  • Участник
  • *
  • Сообщений: 163
    • Просмотр профиля
Re: Hello, World на GTK+ (компиляция)
« Ответ #8 : 04 Июнь 2012, 21:47:35 »
:) немного раночтения у нас. Не должна она помочь, это сарказм был. Нужна какая нибудь dev  библиотека libglademm.

aptitude search libglademm
Ну и оттуда какая есть, не знаю какая версия у меня к примеру

p   libglademm-2.4-1c2a                                     - C++ wrappers for libglade2 (shared library)
p   libglademm-2.4-dbg                                      - C++ wrappers for libglade2 (debug symbols)
p   libglademm-2.4-dev                                      - C++ wrappers for libglade2 (development files)
p   libglademm-2.4-doc                                      - C++ wrappers for libglade2 (documentation)

apt-get install libglademm-2.4-dev

Оффлайн Softwayer

  • Активист
  • *
  • Сообщений: 706
  • Arch Linux
    • Просмотр профиля
Re: Hello, World на GTK+ (компиляция)
« Ответ #9 : 05 Июнь 2012, 12:34:29 »
Мне одному кажется, что с C++ лучше использовать Qt?

Оффлайн MaximKaz

  • Автор темы
  • Участник
  • *
  • Сообщений: 206
  • С++ forever!
    • Просмотр профиля
Re: Hello, World на GTK+ (компиляция)
« Ответ #10 : 05 Июнь 2012, 13:52:34 »
Вот так ещё сделал:
sudo apt-get install libglade2-devИ теперь совершенно все библиотеки нашлись (и gtkmm.h и libglademm/xml.h). Только как правильно компилировать теперь, подключив и libgtkmm-3.0-dev и libglade2-dev?
Fedora 17 | KDE | Intel Core i3 3.1 Ghz | RAM 2x2 | nVidia GeForce GTS 250 (1 Gb) | 620 Gb HDD (SATA & IDE) | DSL - 8 Mb/sec

Оффлайн Чистый

  • Почётный модератор
  • Старожил
  • *
  • Сообщений: 3474
  • nix - вот оно счастье...
    • Просмотр профиля
Re: Hello, World на GTK+ (компиляция)
« Ответ #11 : 05 Июнь 2012, 14:38:52 »
Мне одному кажется, что с C++ лучше использовать Qt?
Одному, каждой задачи свой интструмент, если пишется под Ubuntu и для Gnome то смысла в Qt нет никакого.....
Тестовый репозиторий kdeNeur ppa:devcode/kdeneur
各々が死ぬことをどのように決定する

Оффлайн MaximKaz

  • Автор темы
  • Участник
  • *
  • Сообщений: 206
  • С++ forever!
    • Просмотр профиля
Re: Hello, World на GTK+ (компиляция)
« Ответ #12 : 05 Июнь 2012, 16:45:26 »
Одному, каждой задачи свой интструмент, если пишется под Ubuntu и для Gnome то смысла в Qt нет никакого.....
Я пишу под Ubuntu и для Unity. И всё же, как правильно компилировать, подскажите плиз.
Fedora 17 | KDE | Intel Core i3 3.1 Ghz | RAM 2x2 | nVidia GeForce GTS 250 (1 Gb) | 620 Gb HDD (SATA & IDE) | DSL - 8 Mb/sec

Оффлайн mkarasik

  • Участник
  • *
  • Сообщений: 163
    • Просмотр профиля

Оффлайн MaximKaz

  • Автор темы
  • Участник
  • *
  • Сообщений: 206
  • С++ forever!
    • Просмотр профиля
Re: Hello, World на GTK+ (компиляция)
« Ответ #14 : 05 Июнь 2012, 21:15:26 »
https://forum.ubuntu.ru/index.php?topic=100976.0
То есть (как я понял) компилировать Makefile`ом мои исходники тоже можно, невзирая на библиотеки, которые я подключил к исходнику?
А если такой командой делать:
g++ Hello.cpp -o Hello `pkg-config gtkmm-3.0 --cflags --libs`то что в эту команду добавить, чтобы и libglade2 подключился???
« Последнее редактирование: 05 Июнь 2012, 21:25:00 от MaximKaz »
Fedora 17 | KDE | Intel Core i3 3.1 Ghz | RAM 2x2 | nVidia GeForce GTS 250 (1 Gb) | 620 Gb HDD (SATA & IDE) | DSL - 8 Mb/sec

 

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