[C++] [Qt] QMainWindow: No such file or directory

Bonjour,

J’ai voulu recompiler un programme (de moi ^^) pour un peu l’améliorer, mais quand je lance la compilation, j’obtiens QMainWindow: No such file or directory. J’ai vu que ce message d’erreur était courant, j’ai ouvert 10 000 pages mais à part ajouter QT += widgets (qui ne marche pas) j’ai rien trouvé. Vous avez la réponse ?

Code mainwindow.h (ou est indiqué l’erreur en premier) :

#ifndef MAINWINDOW_H
#define MAINWINDOW_H

#include "mapeditor.h"
#include <QMainWindow>
#include <QtGui>

namespace Ui {
class MainWindow;
}

class MainWindow : public QMainWindow
{
	Q_OBJECT

public:
	explicit MainWindow(QWidget *parent = 0);
	~MainWindow();

private slots:
	void nouveauFichier();
	void ouvrirFichier();
	void enregistrerFichier();
	void activerSpinBoxCategorie(int id);
	void activerDepart(false);
	void activerFinish(false);

private:
	Ui::MainWindow *ui;
	MapEditor *mapEditor;
	QTableWidget *table;
	QLabel *visualisationIcone;
	QLabel *visualisationNom;
	QCheckBox *comboBoxIcon;
	QSpinBox *spinBoxCategorie;
	QLineEdit *lineEditName;
	QDoubleSpinBox *spinBoxLatitude;
	QDoubleSpinBox *spinBoxLongitude;
	QDoubleSpinBox *spinBoxAltitude;
	QDoubleSpinBox *spinBoxDistanceDepart;
};

#endif // MAINWINDOW_H

Merci, Thib’

Salut,

C’est que les fichiers entêtes de Qt ne sont pas/plus disponibles sur ton système. Ou bien que ton compilateur n’a pas le chemin à ces fichiers dans sa commande compilation. Le projet peut être mal configuré. Avec QT Creator, il me semble qu’à chaque fois il utilise un kit pour les compilations. Peut-être regarder là.

https://doc.qt.io/qtcreator/creator-configuring-projects.html

1 Like

Merci, j’ai donc regardé dans les kits et remarqué qu’ils manquait certains trucs. J’ai donc réinstallé tout un tas de paquets Qt, et je peux enfin recompiler mes programmes. Par contre, je suis sous Trisquel 8.0, et la mise à jour vers la 9 et pas encore disponible à cause de problèmes, et j’ai pas envie d’installer l’ISO, d’où peut-être le manque de paquets.