libstdc++: l'ASM manque de ligne de commande

J'ai du mal à mettre en œuvre un z gtkmm application du makefile. J'ai mis en place une solution simple, cependant, j'obtiens l'erreur suivante:

g++ -Wall-std=c++11 pkg-config gtkmm-3.0 --cflags -c main.cpp

cc principal.o pkg-config gtkmm-3.0 --libs -o

/usr/bin/ld: principal.o: undefined reference to symbole '__gxx_personality_v0@@CXXABI_1.3'

/usr/lib/x86_64-linux-gnu/libstdc++..6: erreur lors de l'ajout de symboles: l'ASM manque de ligne de commande

collect2: erreur: ld a retourné 1 code de sortie

: recette pour cible "principale" a échoué

faire: *** [main] Erreur 1

Makefile:

# Compiler
CXX = g++
CXXFLAGS = -Wall -std=c++11 `pkg-config gtkmm-3.0 --cflags`

# gtkmm library flags
LDLIBS = `pkg-config gtkmm-3.0 --libs`

PROGRAM = main
SRCS = $(wildcard *.cpp)
OBJS = $(SRCS:.cpp=.o)
DEPEND = .depend

.PHONY: clean

$(PROG): $(OBJS)
    $(CXX) $^ -o $@ $(LDLIBS)

# Object file rules:
.cpp.o:
    $(CXX) $(CXXFLAGS) -c $<

# Dependencies
.depend:
    rm -f ./.depend
    $(CXX) $(CXXFLAGS) -MM $(SRCS) > $(DEPEND)

all: .depend $(PROGRAM)

clean:
    rm -f $(OBJS)
    rm -f $(PROGRAM)
    rm -f $(DEPEND)

-include $(DEPEND)

main.cpp:

#include <gtkmm/application.h>

#include "MainWindow.hpp"

int main(int argc, char *argv[]) {
  Glib::RefPtr<Gtk::Application> app = Gtk::Application::create(argc, argv, "org.gtkmm.examples.base");

  MainWindow window;

  //Show windows and return when closed
  return app->run(window);
}

MainWindow.hpp:

#ifndef GUI_MAIN_WINDOW_H
#define GUI_MAIN_WINDOW_H

#include <gtkmm.h>

class MainWindow: public Gtk::Window {

  public:
    MainWindow();
    virtual ~MainWindow();

  protected:
    Gtk::Frame frame;

};

#endif //GUI_MAIN_WINDOW_H

MainWindow.cpp:

#include "MainWindow.hpp"

MainWindow::MainWindow() {
  //Set window properties
  set_title("Main window");
  set_size_request(300, 300);

  //Set window border width
  set_border_width(10);

  //Add frame
  add(frame);

  //Set frame's label
  frame.set_label("Frame");

  //Align the label at the right of the frame
  frame.set_label_align(Gtk::ALIGN_END, Gtk::ALIGN_START);

  //Set the style of the frame
  frame.set_shadow_type(Gtk::SHADOW_ETCHED_OUT);

  show_all_children();
}

MainWindow::~MainWindow() {
  //Nothing to do here
}

Ce que je fais mal?

comment sur la liaison contre libstdc++ en ajoutant -L/usr/lib64 -lstdc++?
L'éditeur de liens d'erreur, avez-vous essayé de compiler manuellement ? Essayez de spécifier libstdc++..6 à la fin de la commande.
Lien avec g++ pas de gcc. Ne pas ajouter manuellement libstdc++ à la ligne de commande. Juste un lien avec g++.
Je ne suis pas à l'aide de g++ dans le makefile?
Apparemment vous essayez d'utiliser g++, mais il y a une faute d'orthographe dans la règle (PROG vs PROGRAMME).

OriginalL'auteur wolx | 2015-10-21