نظرة عامة حول MSBuild (Visual C + +)
MSBuild هو النظام البناء القياسي ل Visual C++مشروعات. عند قيامك بإنشاء مشروع في بيئة التطوير المتكاملة Visual Studio (IDE)، فإنه يستخدم الأداة MSBuild.exe، مشروع يستند إلى XML ملف، وإعدادات اختيارية ملف s. وتشغيل الرغم من أنه يمكنك استخدام MSBواجه المستخدمld.exe وملف مشروع تشغيل سطر الأوامر، IDE يوفر واجهة مستخدم (واجه المستخدم) حتى يمكنك ببسهولة تكوين إعدادات وبنية مشروع. نظرة عامة حول هذا يصف كيفية استخدام Visual C + + النظام MSBuild.
المتطلبات الأساسية
قراءة مستندات التالية حول MSBuild.
MSBuild
نظرة عامة حول المفاهيم MSBuild.مرجع MSBuild
معلومات مرجعية حول النظام MSBuild.مرجع مخطط ملف Project MSBuild
قم بسرد عناصر مخطط XML MSBuild، مع السمات الخاصة بها، و الأصل و العناصر التابعة. ملاحظة خاصة ItemGroup PropertyGroup، الهدف ، و عناصر المهام .مرجع سطر الأوامر MSBuild
وصف للوسائط commو-line و الخيارات التي يمكنك استخدامها مع MSBuild.exe.مرجع MSBuild المهام
وصف المهام MSBuild. ملاحظة خاصة لهذه المهام، والتي تكون محددة إلى Visual C + +: BscMake Task, CL Task, CPPClean Task, LIB Task, Link Task, MIDL Task, MT Task, RC Task, SetEnv Task, VCMessage Task, XDCMake Task, XSD Task.
MSBuild تشغيل خط الأمر
العبارة التالية من مرجع سطر الأوامر MSBuildمستند يوضح أن الأداة MSBuild.exe له ضمني أو صريح project fileوسيطة (ملف.vcxproj لمشاريع Visual C + +) و commو-line صفر أو أكثر من options.
msbuild.exe [project file] [options]
استخدم /target(أو**/t**) و /property(أو**/p**) الأمر-خط خيارات لتجاوز الخصائص والأهداف التي تم تحديدها في ملف مشروع.
دالة أساسية من ملف مشروع هو لتعيين على الهدف ، الذي هو تطبيق إلى مشروع الخاص بك، والإدخالات والإخراجات اللازمة لتنفيذ هذه تشغيل عملية معينة. يمكنك تعيين ملف مشروع واحد أو أكثر من الهدف s، التي يمكن أن تضمين افتراضي الهدف.
يتكون كل هدف من سلسلة من واحد أو المزيد المهام . يتم تمثيل كل مهمة بواسطة.NET Framework للفئات التي يحتوي على أمر قابل للتنفيذ. على سبيل المثال، يحتوي مهمة CL الأمر cl.exe.
على المهام معلمة هو خاصية فئة مهمة ويمثل خيار سطر أوامر للأمر القابل للتنفيذ بشكل عام. على سبيل المثال، FavorSizeOrSpeedمعلمة CLيتوافق مع المهام إلى /Osو /Otالخيارات المترجم.
معلمات إضافى مهمة دعم MSBuild البنية التحتية. ل مثال، Sourcesتعين معلمة مهمة التعيين من المهام التي يمكن أن تكون المستهلكة من قبل مهام غير ذلك. لمزيد من المعلومات حول المهام MSBuild، راجع مرجع MSBuild المهام.
معظم المهام تتطلب الإدخالات والإخراجات، مثل ملف أسماء المسارات والسلسلة، ومعلمات رقمية أو قيمة منطقية. على سبيل المثال، إدخال شائعة هو اسم ملف مصدر.cpp إلى الترجمة. معلمة إدخال هامة هو سلسلة تحدد تكوين البنية و النظام الأساسي، على سبيل المثال، "يصحح|Win32". إدخالات و الإخراج المحددة بواحد أو المزيد المعرفة من قبل مستخدم XML Itemالعناصر الموجودة في ItemGroupالعنصر.
A project file can also specify user-defined properties and item-definition-group items. خصائص وعناصر النموذج زوج الاسم/القيمه التي يمكن استخدامها كـ المتغيرات في الإنشاء. يعرف اسم مكوّن لزوج على الماكرو ، و التصريح مكوّن الالقيمة القيمة الماكرو . يتم الوصول إلى خاصية ماكرو باستخدام منهج $ ( اسم )، و الوصول إلى ماكرو عنصر باستخدام اسم %() منهج.
عناصر XML غير ذلك في ملف مشروع يمكنك اختبار وحدات الماكرو، ثم مشروط بتعيين القيمة لأي ماكرو أو التحكم في التنفيذ بنية. يمكن أن تكون متصلاً أسماء وحدات الماكرو والسلاسل الحرفية لإنشاء بنيات مثل مسار و ملف اسم. تشغيل سطر الأوامر، /propertyخيار تعيين أو يتجاوز خاصية مشروع. لا يمكن مشار إليها عناصر تشغيل الأمر خط.
يمكن ينفذ النظام MSBuild شرطيا هدف قبل أو بعد هدف آخر. أيضا، يمكن للنظام بنية هدف استناداً إلى ما إذا كان يجب ملفات الذي يستهلك الهدف هي أحدث من ملفات emits.
MSBuild في IDE
عند قيامك بتعيين خصائص مشروع في IDE و ثم قمت بحفظ مشروع، Visual C + + بكتابة إعدادات مشروع إلى ملف مشروع. يحتوي ملف مشروع على إعدادات فريدة للمشروع الخاص بك، ولكن لا يحتوي على الجميع الإعدادات التي يتم مطلوب لبناء مشروع الخاص بك. ملف مشروع يحتوي على Importالعناصر التي تضمين شبكة من إضافى تعتمد الملفات. تتضمن ملفات الدعم المتبقية الخصائص والأهداف والإعدادات المطلوبة إلى بناء مشروع.
توجد معظم الأهداف والخصائص في ملفات الدعم فقط إلى تطبيق النظام الإنشاء. يناقش القسم التالي بعض أهداف مفيدة و خصائص التي يمكنك تحديدها في سطر الأوامر MSBuild. لاكتشاف المزيد من الأهداف والخصائص، قم باستكشاف s ملف بالدعم ملف الدلائل.
دعم ملف الدلائل
عن طريق الافتراضي، ملفات دعم Visual C + + الأساسية الموجودة في الدلائل التالية.
الدليل |
الوصف |
---|---|
محرك أقراص:\برنامج ملفات\MSBuild\Microsoft.Cpp\v4.0\ |
يحتوي على الملفات الهدف الأساسي (.targets) و ملفات الخاصية (.props) التي تستخدم بواسطة الأهداف. بواسطة الماكرو $(VCTargetsPath) افتراضي، يشير هذا الدليل. |
محرك أقراص:النظام الأساسي\برنامج ملفات\MSBuild\Microsoft.Cpp\v4.0\الأنظمة الأساسية\ \ |
يحتوي على الهدف الخاصة بالنظام الأساسي و ملفات خاصية تجاوز الأهداف و الخصائص في الدليل الأصل الخاصة به. هذا الدليل أيضا يحتوي على ملف.dll الذي يقوم بتعريف المهام التي يستخدمها الأهداف في هذا الدليل. النظام الأساسي عنصر نائب تمثل Itanium، Win32، أو x86مجلد فرعي. |
محرك أقراص:<النظام الأساسي> \برنامج ملفات\MSBuild\Microsoft.Cpp\v4.0\الأنظمة الأساسية\\مجموعة الأدوات PlatformToolsets\\ |
يحتوي على direcإلىries التي تمكن التوليد إلى توليد الإصدار 9.0 أو 10.0 C + + Visual Basic للتطبيقات. النظام الأساسي عنصر نائب تمثل Itanium، Win32، أو x86مجلد فرعي. يمثل العنصر النائب مجموعة الأدوات v90أو v100مجلد فرعي مجموعة الأدوات. |
دعم الملفات
الدعم ملف دلائل تحتوي على s ملف ذات الملحقات التالية.
الملحق |
الوصف |
---|---|
.targets |
يحتوي على Targetعناصر XML التي تحدد المهام التي يتم تنفيذها بواسطة الهدف. قد تتضمن أيضا Property Group، Item Group، Item Definition Group، و المعرفة من قبل مستخدم Itemالعناصر مستخدمة لتعيين ملفات و خيارات commو-line للمهمة معلمات. لمزيد من المعلومات، راجع عنصر هدف (MSBuild). |
.props |
يحتوي على Property Groupو معرّفة بواسطة مستخدم Propertyعناصر XML التي تحدد الملفات وإعدادات المعلمات التي تستخدم أثناء الإنشاء. قد تتضمن أيضا Item Definition Groupوالمعرفة من قبل مستخدم Itemعناصر XML التي تحدد إعدادات إضافى. تتشابه مع خصائص عناصر المعرفة في مجموعة بتعريف عنصر، ولكن لا يمكن الوصول إليه من الأمر خط. ملفات مشروع C + + المرئية بدلاً من خصائص كثيرا ما يستخدم عناصر إلى تمثل الإعدادات. لمزيد من المعلومات، راجع عنصر ItemGroup (MSBuild) ، عنصر ItemDefinitionGroup (MSBuild) ، و عنصر العنصر (MSBuild). |
.xml |
يحتوي على عناصر XML التي تقوم بتعريف ويهيّئ IDE عناصر واجهة مستخدم مثل كـ أوراق الخصائص وصفحات الخصائص، وعناصر القوائم ومربع التحكم صندوق نص. ملفات.xml شكل مباشر دعم IDE، لا MSBuild. ومع ذلك، يتم تعيين قيم خصائص IDE إلى بنية الخصائص وعناصر. تكون معظم ملفات xml في دليل فرعي خاص بالإعدادات المحلية. على سبيل المثال، تكون ملفات المنطقة الإنكليزية-الولايات المتحدة في\1033\$ (VCTargetsPath). |
الأهداف و خصائص مستخدم
إلى استخدام MSBuild الأكثر فاعلية في سطر الأوامر، فإنه يساعد إلى معرفة الخصائص والأهداف التي تكون مفيدة وذات الصلة. معظم الخصائص والأهداف المساعدة في تطبيق النظام بناء Visual C + +، ولذلك ليست ذات الصلة إلى المستخدم. يصف هذا القسم بعض خصائص الموجه إلى مستخدم worthwhile و الأهداف.
خاصية PlatformToolset
PlatformToolsetخاصية ما إذا كان Visual C++ 2010أو مجموعة الأدوات Vهوual C + + 2008 من هو المستخدمة في البنية. القيمة الخاصية هو متصلاً بالسلاسل الحرفية لتشكيل مسار الدليل الذي يحتوي على ملفات خاصية وهدف مطلوبة لإنشاء مشروع لنظام أساسي معينة.
قم بتعيين في PlatformToolsetخاصية إلى v100 استخدام Visual C++ 2010أدوات ل بنية تطبيق الخاص بك.
msbuild myProject.vcxproj /p:PlatformToolset=v100
قم بتعيين v90PlatformToolset خاصية إلى إلى أدوات 2008 استخدم Visual C + + لإنشاء تطبيق الخاص بك. 2008 C + + Visual Basic إلى olset يجب أن تكون مثبتة بالفعل تشغيل جهاز الكمبيوتر الخاص بك لهذه خاصية إلى تصبح سارية المفعول.
msbuild myProject.vcxproj /p:PlatformToolset=v90
خاصية UseEnv
عن طريق الافتراضي، تتجاوز الإعدادات الخاصة بالنظام الأساسي للمشروع الحالي متغيرات بيئة مسار تضمين، LIB، LIBمسار، تكوين والنظام الأساسي. قم بتعيين UseEnvخاصية إلى trueلضمان أنه لم يتم تجاوز متغيرات بيئة.
msbuild myProject.vcxproj /p:UseEnv=true
الأهداف
هناك مئات أهداف في Visual C + + ملفات الدعم. ومع ذلك، معظمها أهداف موجهة إلى النظام يمكن تجاهل مستخدم. تكون مسبوقة معظم أهداف النظام مع تسطير أسفل السطر (_)، أو أن اسم الذي يبدأ ب "PrepareFor"، "حساب"، "قبل"، "بعد"، "ما قبل" أو "ينشر".
يسرد الجدول التالي أهداف موجهة للمستخدم worthwhile متعددة.
الهدف |
الوصف |
---|---|
BscMake |
تنفيذ الأداة المساعدة لصيانة معلومات استعراض Microsoft Office 2010 Suite أداة، bscmake.exe. |
البنية |
قم بإنشاء مشروع. هذا هو الهدف الافتراضي لمشروع. |
ClCompile |
ينفذ المحول البرمجي Visual C + + أداة، cl.exe. |
نظيف |
يحذف المؤقتة و المتوسط بنية الملفات. |
lib |
أداة إدارة مكتبة Microsoft Office 2010 Suite 32-بت، لتنفيذ lib.exe. |
الارتباط |
ينفذ الرابط Visual C + + أداة، ارتباط.exe. |
ManifestResourceCompile |
استخراج قائمة بالموارد من بيان و ثم تنفيذ الأداة "المحول البرمجي لمورد Windows Microsoft Office 2010 Suite"، rc.exe. |
Midl |
أداة المترجم لغة تعريف واجهة Microsoft Office 2010 Suite "(MIDL)، لتنفيذ midl.exe. |
إعادة بناء |
مسح و ثم بناء مشروع الخاص بك. |
ResourceCompile |
ينفذ المحول البرمجي لمورد Windows Microsoft Office 2010 Suite أداة، rc.exe. |
XdcMake |
تنفيذ الأداة وثائق XML، xdcmake.exe. |
xsd |
أداة تعريف مخطط XML، لتنفيذ xsd.exe. |