ฉันจะทำให้งานสร้างของ Visual Studio มีรายละเอียดมากได้อย่างไร


100

ฉันจำเป็นต้องระงับทุกแฟล็กทุกสวิตช์ที่ใช้ในกระบวนการสร้างโดยไบนารี Visual Studio ฉันพยายามรับเอาท์พุตแบบละเอียดโดยใช้vcbuildแต่ฉันไม่สามารถทำได้

ฉันต้องทำอย่างไรเพื่อดูทุกอย่างที่แสดงโดย Visual Studio สำหรับฉัน ไม่จำเป็นต้องรับเอาต์พุตในหน้าต่างบิลด์ ที่ไหนก็ได้จะดี


1
แน่นอนซ้ำstackoverflow.com/questions/823854/...
JesperE

คำตอบ:


68
  1. เปิดกล่องโต้ตอบคุณสมบัติโครงการจากนั้นเลือก

    คุณสมบัติการกำหนดค่าC / C ++ทั่วไป

  2. เปลี่ยนการตั้งค่าสำหรับSuppress Startup Bannerเป็นNo

  3. clบรรทัดคำสั่ง (s) จะแสดงในหน้าต่างการแสดงผล


1
สิ่งนี้มีผลเฉพาะกับคอมไพลเลอร์ไม่ใช่ตัวเชื่อมโยงหรือทรัพยากร
user2284570

6
ใน VS2017 'เคล็ดลับ' นี้ดูเหมือนจะใช้ไม่ได้อีกต่อไป อย่างไรก็ตามการสร้างในพรอมต์ของนักพัฒนาโดยใช้ msbuild กับโซลูชันหรือชื่อไฟล์โครงการเนื่องจากอาร์กิวเมนต์ cli จะแสดงการเรียกใช้ cl พร้อมอาร์กิวเมนต์
Emile Vrijdags

@EmileVrijdags ฉันสามารถดูclผลลัพธ์คำสั่งได้อย่างสมบูรณ์แบบด้วย VS2017 ตามขั้นตอนเหล่านั้น ดังนั้น "เคล็ดลับ" ใช้ได้ผลสำหรับฉัน
nephewtom

158

เครื่องมือเมนู→ ตัวเลือกโครงการและแนวทางแก้ไขสร้างและเรียกใช้โครงการ MSBuild สร้างคำฟุ่มเฟือยเอาต์พุต : การวินิจฉัย


2
สิ่งนี้ไม่ได้เปลี่ยนแปลงอะไร ฉันยังคงได้รับผลลัพธ์เดียวกันในหน้าต่างเอาต์พุต
Geo

3
ใช้งานได้ดีสำหรับฉันใน VC10
abergmeier

2
@Geo จะมีผลเมื่อคุณรีสตาร์ท Visual Studio
absynce

@absynce ใน VS 2017 สิ่งนี้จะไม่มีผลแม้จะรีสตาร์ท Visual Studi0 2017 ฉันใช้ VS 2017 community edition ดังนั้นฟังก์ชันนี้ดูเหมือนจะใช้ไม่ถูกต้องใน VS 2017
Sunil

ใช้งานได้ใน VS 2019 ด้วย!
Prabal Kajla

67

Visual Studio 2008:

ไปที่เมนูToolsOptionsจากนั้นProject and SolutionsBuild and Runส่วน คุณมีกล่องคำสั่งผสมสำหรับฟุ่มเฟื่อย

ตัวเลือกคอมไพเลอร์ C ++ (คุณสมบัติโครงการ):

  • ตัวประมวลผลล่วงหน้า - สร้างไฟล์ที่ประมวลผลล่วงหน้าเพื่อดูหน่วยการแปลที่สร้างโดยตัวประมวลผลล่วงหน้า
  • ขั้นสูง - แสดงประกอบด้วย - แสดงชื่อไฟล์ที่รวมไว้ที่เอาต์พุตของคอมไพเลอร์

1
สิ่งนี้ไม่แสดงแฟล็กคอมไพล์และลิงค์เกอร์เฉพาะชื่อไฟล์ที่กำลังประมวลผล เป็นไปได้หรือไม่ที่จะเห็นคำสั่งที่ถูกเรียกใช้งานจริงหรือ VS เป็นไปไม่ได้
stefanB

2
@stefanB: คุณไม่ต้องการแฟล็กพิเศษสำหรับสิ่งนี้ บรรทัดคำสั่งสำหรับการเรียกใช้คอมไพลเลอร์และตัวเชื่อมโยงสามารถพบได้ในไดอะล็อกอ็อพชันหรือในบิลด์ล็อกที่เขียนลงในไดเร็กทอรีกลาง
Yakov Galka

8

หากคุณใช้ MSBuild คุณสามารถตั้งค่าแฟล็ก / v: diag


ฉันจะเรียกใช้ MSBuild ได้อย่างไร
Geo

เริ่มพรอมต์คำสั่งสตูดิโอภาพ (อยู่ในเมนูเริ่ม) จากนั้นดำเนินการโปรเจ็กต์สตูดิโอภาพด้วย MSBuild {ProjectName}
โจ

เช่น MsBuild myProject.csproj
Joe

ฉันเห็นการเรียก MSBuild vcbuildแต่ vcbuild ไม่แสดงแฟล็ก / สวิตช์ที่ใช้
Geo

นี่คือคำตอบที่เหมาะสมที่ฉันเชื่อ เพียงแค่ปิดการปราบปรามแบนเนอร์ต่างๆก็ยังไม่ส่งผลทุกอย่าง โดยเฉพาะอย่างยิ่งขั้นตอนการรวบรวมทรัพยากรคือสิ่งที่ฉันกำลังมองหา
ยอห์น

5

ใน Visual Studio ไปที่โครงการของคุณแล้วคลิกขวาที่โครงการแล้วเลือกคุณสมบัติ ใน Linker มีตัวเลือกบรรทัดคำสั่ง คุณมีตัวเลือกทั้งหมดและคุณสามารถเพิ่มตัวเลือกที่กำหนดเองได้ เพิ่ม/VERBOSEและเมื่อเชื่อมโยง Visual Studio จะแสดงข้อมูลเพิ่มเติมมากมาย


1
จะแสดงข้อมูลเพิ่มเติม แต่ไม่แสดงเครื่องมือที่ถูกเรียกให้รวบรวม
Geo

2
Visual Studio มีเครื่องมือสร้างชื่อ nmake คุณสามารถส่งออกโครงการของคุณ makefiles เหล่านั้นและและสร้างมันขึ้นมาจากดอสคอนโซลmsdn.microsoft.com/en-us/library/txcwa2xx(VS.80).aspx ครั้งที่แล้วฉันทำสิ่งที่คล้ายกัน (แต่ฉันใช้ CMake เพื่อสร้าง nmake makefiles) คำสั่งทั้งหมดถูกพิมพ์ออกมาในจอแสดงผลคอนโซล
javier-sanz
โดยการใช้ไซต์ของเรา หมายความว่าคุณได้อ่านและทำความเข้าใจนโยบายคุกกี้และนโยบายความเป็นส่วนตัวของเราแล้ว
Licensed under cc by-sa 3.0 with attribution required.