سؤال

لقد جعلت تطبيق كيو تي صغير وأنا أحاول تشغيله من خلال موجه الأوامر على ويندوز:

#include <QMainWindow>
#include <QLabel>

int main(int argc,char* argv[])
{
    QMainWindow a(argc,argv)
    QLabel *NewLabel = new QLabel("Hi i am a label");
    NewLabel->show();
    return a.exec();
}

بعد القيام qmake -project ثم qmake -TestPrg.pro ثم أحاول make، هنا يفشل مع الخطأ التالي:

D:\TestPrg>make
make -f Makefile.Debug
make[1]: Entering directory `D:/TestPrg'
Makefile.Debug:58: *** missing separator.  Stop.
make[1]: Leaving directory `D:/TestPrg'
make: *** [debug] Error 2

إذا نظرنا إلى makefile.debug ، السطر رقم 58 وإضافة علامة تبويب قبل "<<"،يشكو في خط آخر number.So أشعر أن هناك شيئا خاطئا في خيارات المترجم ، هل يمكن لشخص ما توجيه كيفية جعله يعمل.

شكرا جزيلا

هل كانت مفيدة؟

المحلول

لقد قدمت للتو مثالا على العمل على الجهاز الخاص بي.يذهب الرمز أدناه ، ولكن لديك على الأقل بعض الأخطاء ، وهي:

  • يمكنك استخدام كمينويندو لكونه التطبيق كما يبدو بدلا من كابليكاتيون.هذا لن تجميع.

  • على التوالي ، سوف تحتاج إلى تضمين كابليكاتيون بدلا من كمينويندو.

  • كنت أفتقد شبه القولون بعد البيان الأول في الوظيفة الرئيسية.

  • يمكنك بناء QLabel على كومة دون داع.في هذا السيناريو بالذات ، يمكن أن يكون كائن مكدس بسيط.

  • يمكنك استخدام استدعاء كماك كما qmake -foo بدلا من مجرد qmake أو make foo.

  • تحاول استخدام" جعل " في موجه الأوامر ويندوز بدلا من nmake أو jom.إذا كنت تستخدم فيسوال ستوديو و مسفك ، لا مزجها مع مينغو ، سيغوين وأشياء أخرى.مجرد استخدام نماك ، وإلا ، نعم ، استخدام جعل للخيارات الأخيرة.

الرئيسية.حزب الشعب الكمبودي

#include <QApplication>
#include <QLabel>

int main(int argc, char **argv)
{
    QApplication a(argc, argv);
    QLabel NewLabel("Hi i am a label");
    NewLabel.show();
    return a.exec();
}

main.pro

TEMPLATE = app
TARGET = main
greaterThan(QT_MAJOR_VERSION, 4): QT += widgets
SOURCES += main.cpp

بناء وتشغيل

* qmake
* nmake
* main.exe
مرخصة بموجب: CC-BY-SA مع الإسناد
لا تنتمي إلى StackOverflow
scroll top