Настройка GTKmm в Eclipse для C++

Я пытаюсь создать графический интерфейс, используя GTKmm в Eclipse, однако я не могу заставить работать конфигурацию. Для справки, вот мой фактический код:

#include <gtkmm.h>

using namespace std;

int main(int argc, char **argv) {
    Gtk::Main kit(argc,argv);
    Gtk::Window frmMain;

    kit.run(frmMain);

    return 0;
}

Это настройки, которые я ввел в разделе компилятора GCC C++. Все варианты:

-I/usr/include/gtkmm-3.0 -I/usr/include/gdkmm-3.0 -I/usr/include/gtk-3.0 -O0 -g3 -Wall

и для шаблона командной строки:

${COMMAND} `pkg-config gtkmm-3.0 --cflags` ${FLAGS} ${OUTPUT_FLAG} ${OUTPUT_PREFIX}${OUTPUT} ${INPUTS}

Наконец, в разделе компоновщика GCC G++ я ввел это для шаблона командной строки:

${COMMAND} `pkg-config gtkmm-3.0 --libs` ${OUTPUT_FLAG} ${OUTPUT_PREFIX}${OUTPUT} ${INPUTS} ${FLAGS}

Вот ссылка на мой журнал компиляции: http://pastebin.com/tfqv97w6


person Andrew Regan    schedule 27.09.2014    source источник
comment
Похоже, что вставить pkg-config gtkmm-3.0 --libs в команду недостаточно, чтобы это сработало. У меня есть хорошее решение для этого, дайте мне пару минут, чтобы получить информацию   -  person Galik    schedule 28.09.2014
comment
Я установил плагин для eclipse, который взаимодействует с pkg-config и позволяет вам выбрать пакет из списка, и вуаля! code.google.com/p/pkg-config-support -for-eclipse-cdt   -  person Galik    schedule 28.09.2014
comment
@Galik Вау, этот быстрый ответ ... потратьте столько времени, сколько вам нужно :)   -  person Andrew Regan    schedule 28.09.2014
comment
Я добавил плагин, который вы предложили, и установил несколько флажков, которые выглядели уместными, но, похоже, это ничего не изменило.   -  person Andrew Regan    schedule 28.09.2014
comment
Вы вернули шаблон командной строки к тому, что было раньше?   -  person Galik    schedule 28.09.2014
comment
Нет, но позвольте мне попробовать это сейчас.   -  person Andrew Regan    schedule 28.09.2014
comment
Кажется, это немного исправило ситуацию, но он не может найти glibmm.h pastebin.com/7YrJiNNn.   -  person Andrew Regan    schedule 28.09.2014
comment
Вы установили библиотеки разработки для gtkmm-3.0? Обычно они совпадают с именем пакета библиотеки с добавлением -devel или -dev в конец.   -  person Galik    schedule 28.09.2014
comment
На самом деле похоже, что вы не отметили параметр glibmm-2.4 в pkg-config.   -  person Galik    schedule 28.09.2014
comment
Предложенный вами плагин, похоже, не работает... Я начал вручную добавлять вывод из pkg-config gtkmm-3.0 --cflags во включения, и, похоже, он исправляет ошибки, которые я получаю по одной за раз. Если вы знаете более простой способ, дайте мне знать. Вот последний вывод компилятора кстати. pastebin.com/9142UxNQ   -  person Andrew Regan    schedule 28.09.2014


Ответы (3)


Я не могу оставить это в комментариях, они слишком ограничительны. Это шаги, которые я только что проделал, чтобы создать программу gtkmm в моем eclipse. Я повторил процедуру дважды, и оба раза она сработала.

Создать проект:

Файл -> Создать -> Проект C++

Тип проекта: Исполняемый -> Проект Hellow World Gtkmm

Наборы инструментов: Linux GCC

Свойства проекта:

Сборка C/C++ -> Настройки -> Pkg-config -> gtkmm-3.0

Посмотрите, работает ли это для вас.

person Galik    schedule 28.09.2014

У меня есть краткая статья об этом (со скриншотами), смотрите ее здесь:

http://www.hamedandobaideh.com/index.php/9-uncategorized/73-gtkmm-with-eclipse

person Hamed Mohammadi    schedule 05.08.2015
comment
Ссылка на потенциальное решение всегда приветствуется, но, пожалуйста, добавьте контекст вокруг ссылки, чтобы у ваших коллег-пользователей представление о том, что это такое и зачем оно там. Всегда цитируйте наиболее релевантную часть важной ссылки на случай, если целевой сайт недоступен или навсегда отключится. Учтите, что не более чем ссылка на внешний сайт является возможной причиной почему и как некоторые ответы удалены?. - person Xavi López; 05.08.2015

Я провел два теста. Один с вашим исходным экземпляром и один с экземпляром из простого файла с сайта. Оба работали безупречно в первый раз, используя шаги, описанные ниже.

Пример Hello World с веб-сайта gtkmm с Success: https://git.gnome.org/browse/gtkmm-documentation/tree/examples/book/helloworld

Сначала я установил подключаемый модуль Eclipse pkg-config:
https://code.google.com/p/pkg-config-support-for-eclipse-cdt/

Потом:

  • Создан новый пустой проект C++ в Eclipse
  • В проект добавлены три файла (helloworld.cpp, helloworld.h, main.cc)
  • В проект добавлена ​​поддержка pkg-config: [(правый клик по Project) -> Properties -> C++ Build -> Settings -> Pkg-config -> (галочка) gtkmm-3.0 -> OK
  • Из Eclipse я Cleaned, потом Build all, потом смог Run пример.
person L. D. James    schedule 03.08.2015