سؤال

أنا أستخدم QtCreator على Windows باستخدام برنامج التحويل البرمجي MSVC (برنامج التحويل البرمجي من Visual C ++ Express Edition) و QT 4.5.2 مفتوح المصدر.

عندما أقوم بتعديل رأسه في المشروع واضغط على Build ALL، لا يوجد شيء مبني فعلا، فقط إذا قمت بتعديل ملف .cpp يتم تجميعها CPP المعدلة.

يؤدي ذلك إلى أنه في كل مرة يجب علي تغيير بعض ملفات الرأس المستخدمة من قبل عدة ملفات .cpp، يجب إعادة إنشاء مشروع كامل. هناك طريقة لتجنب هذا السلوك؟

شكرا مقدما

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

المحلول

هل ملفات رأسك المدرجة في متغير الرؤوس في ملف .pro الخاص بك؟ أعتقد أن ملفات رأس الإدراج في الرؤوس مطلوبة أيضا للحصول على فصول داخلها moc'ed.

** [edit] ** nevermind، قمت باختبار ذلك باستخدام Creator QT 1.2.1 من QT 4.5.2 SDK على نظام Linux، وعندما أتسوق "ملف رأس"، فإن CPPS يعتمد على إعادة ترجمة، أو لا يتم سرد الرأس في قائمة الرأس.

في QMAKE MICEFILE يولد، تحتوي ملفات CPP الخاصة بي التي تتضمن ملف H في سؤال قاعدة تسردها بشكل صريح ملف H كعدد. لست متأكدا من كيفية قيام Qmake بذلك. أود أن أقترح النظر في QMAKE MICFILE الناتجة عنك، ورؤية ما يبدو عليه القاعدة لأحد ملفات CPP./تعديل

عددا مرة أخرى، النزول من الموضوع الآن] ** عادة في نظام الإنشاء المستند إلى صنع الخليج الذي يستدعي دول مجلس التعاون الخليجي، يمكنك إنشاء معلومات التبعية لملفات الرأس المضمنة بواسطة CPPS عن طريق طلب دول مجلس التعاون الخليجي للقيام بذلك من أجلك، مع العلم -M. CL.EXE (مترجم Microsoft C ++) لن تنتج ملف .d بغض النظر عن مدى تفسيرها بشكل جيد، لذلك فهو شائع إلى حد ما لاستخدامه / ShowinCludes الخيار، ثم تحليل الإخراج باستخدام برنامج نصي لتحويله إلى أ. يمكن أن يشمل ملف D حتى يتضمنه (الكثير من الأشخاص تخطي هذه الخطوة، ولن يكون لديك التحقق من التبعية المناسبة في الإنشاءات التي تعتمد على صنع CL.EXE، لأنه نوع من Pita). ومع ذلك, ، لا أعتقد أن Qmake لا يفعل أي شيء من هذا القبيل للحصول على معلومات التبعية، لأن Qmake تقوم بتوليد MICFFILE التي تستدعي المحول البرمجي، وفي هذه المرحلة، معلومات التبعية (على الأقل في Makefile التي نظرت إليها) أمر صعب مشفرة./تعديل]**

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