LLVM C ++ IDE สำหรับ Windows


92

มี C / C ++ IDE สำหรับ Windows ซึ่งรวมเข้ากับคอมไพเลอร์ LLVM (และตัววิเคราะห์ Clang C / C ++) เช่นเดียวกับ Xcode สมัยใหม่หรือไม่

ฉันมี Dev-Cpp (ใช้ GCC ที่ล้าสมัย) และCode :: Blocks (กับ GCC บางส่วน) แต่ GCC ให้ข้อความแสดงข้อผิดพลาดที่คลุมเครือมาก ฉันต้องการรับข้อความแสดงข้อผิดพลาดที่เป็นมิตรกับผู้ใช้มากขึ้นจากส่วนหน้าเสียงดัง

ใช่ Clang ไม่สามารถใช้กับโค้ด C ++ ที่ซับซ้อนได้ แต่ trunk Clang สามารถคอมไพล์ LLVM เองได้แล้ว ดังนั้นฉันจึงสงสัยว่ามี LLVM IDE ในการพัฒนาหรือในเวอร์ชันเบต้าหรือไม่

ใช่ฉันสามารถใช้ Clang เป็นคอมไพเลอร์อื่นที่มี IDE ที่เข้ากันได้กับ GCC แต่มี IDE ใดบ้างที่รวมเข้ากับ Clang? เสียงดังมีรูปแบบเอาต์พุตที่แตกต่างกันดังนั้น IDE จึงต้องแยกวิเคราะห์ เสียงดังสามารถให้การแยกวิเคราะห์แหล่งที่มาของ IDE Clang มีตัวเลือกการวิเคราะห์ซึ่งต้องได้รับการสนับสนุนใน IDE ลองดูเช่นhttp://iosdevelopertips.com/xcode/static-code-analysis-clang-and-xcode-3-2.html

และคุณลักษณะที่ต้องการมากที่สุดของเสียงดัง - คือการเติมข้อความอัตโนมัติอย่างชาญฉลาดดังนั้น IDE จึงสามารถแนะนำเฉพาะตัวแปรที่ถูกต้องตามหลักไวยากรณ์เช่นแสดงเฉพาะฟิลด์ของโครงสร้างคลาสนี้

ผลลัพธ์: (รวมจากคำตอบ):


3
ฉันสงสัยว่าในอนาคต Emacs จะได้รับการสนับสนุนจาก Clang หรือไม่ Btw มีโหมดย่อย emacs อยู่ที่นี่llvm.org/svn/llvm-project/cfe/trunk/utils/…แม้ว่าฉันจะไม่ได้ทดสอบด้วยตัวเอง
ustun

Code :: Blocks ทำงานร่วมกับ Clang
James Harper

คำตอบ:


59

LLVM ได้รับการสนับสนุนในEclipse CDTผ่านปลั๊กอิน ( llvm4eclipsecdt ) เป็นIDE ที่รองรับ Windows เท่านั้นที่รองรับ LLVMเท่าที่ฉันรู้ ฉันเป็นผู้เขียนปลั๊กอินหลักดังนั้นคุณสามารถถามคำถามที่เกี่ยวข้องกับมันได้

ปลั๊กอินนำเสนอฟังก์ชันพื้นฐานสำหรับการคอมไพล์ Clang และ llvm-gcc และรองรับ Linux และ Windows (w / Cygwin & MiNGW) เครื่องมือ LLVM เช่นแอสเซมเบลอร์ตัวเก็บถาวรตัวเชื่อมโยงและคอมไพเลอร์สแตติก (llc) ได้รับการกำหนดค่าและสามารถปรับแต่งได้ผ่าน UI ปลั๊กอินนำเสนอประโยชน์ทั้งหมดที่ IDE สามารถนำเสนอเช่นการกำหนดค่าที่ง่ายและการสร้างด้วยการดำเนินการเดียว

ข้อเสียเปรียบเพียงประการเดียวคือยังไม่พร้อมเนื่องจากยังขาดคุณสมบัติขั้นสูงบางอย่างที่ LLVM สามารถนำเสนอได้เช่นการวิเคราะห์เสียงดังและการเติมข้อความอัตโนมัติอย่างชาญฉลาด ปลั๊กอินยังไม่ได้รับการทดสอบอย่างดีและอาจทำงานได้ไม่สมบูรณ์ดังนั้นฉันหวังว่าฉันจะได้รับคำติชมของผู้ใช้ผ่านรายชื่ออีเมลที่พบจากไซต์การพัฒนาโค้ดของ Google (ตามรายการด้านล่าง) ฉันหวังว่าฉันจะมีเวลาพัฒนามันต่อไป ฉันพัฒนามันเฉพาะในเวลาว่างซึ่งมี จำกัด มาก ฉันยินดีต้อนรับนักพัฒนาทุกคนที่เข้าร่วมและมีส่วนร่วมในโครงการ

ไซต์การพัฒนา:
http://code.google.com/p/llvm4eclipsecdt/
https://github.com/TuononenP/llvm4eclipsecdt

ตลาด Eclipse (ฟรี 100% และโอเพ่นซอร์ส):
http://marketplace.eclipse.org/content/llvm-toolchain-eclipse-cdt

UPDATE: ปลั๊กอินเลิกใช้งานแล้ว แทนที่จะติดตั้ง "C / C ++ LLVM-Family Compiler Build Support" ภายใต้ Programming Languages ​​โดยใช้ไซต์อัพเดต Eclipse อย่างเป็นทางการเช่นhttp://download.eclipse.org/releases/mars


สวัสดี. ดีใจที่ได้พบคุณที่นี่! คุณพูดว่า "ไบนารี MinGW มีไว้สำหรับ LLVM และส่วนหน้า" - คุณสามารถเพิ่มลิงก์ไปยังไบนารี mingw ของ LLVM ได้หรือไม่
osgx

1
นอกจากนี้เกี่ยวกับวิทยานิพนธ์จากบล็อกของคุณ เสียงดังไม่ได้ใช้สำหรับ ada หรือ Fortran: "สำหรับภาษาอื่น ๆ รวมถึง Java, Fortran และ Ada LLVM ยังคงขึ้นอยู่กับ GCC"
osgx

2
คุณสามารถรับไบนารี mingw สำหรับ LLVM 2.9 ได้จากที่นี่: llvm.org/releases/download.html#2.9
Petri Tuononen

1
หมายเหตุ: คุณคิดถูกแล้วที่ LLVM-GCC ใช้สำหรับภาษาอื่น ๆ ฉันควรจะเขียนว่า "LLVM compiles" โดยไม่มีส่วนหน้าที่ระบุไว้ แต่ฉันจะลบ Fortran และ Ada ออกจากบทคัดย่อ
Petri Tuononen

คุณยังสามารถรวมคอมไพเลอร์ LLVM กับ Microsoft VS. นี่คือลิงค์llvm.org/docs/GettingStartedVS.html หวังว่านี่จะช่วยได้
Krishna Oza

21

Dan Gohman ผู้สนับสนุน LLVM เพิ่งเพิ่มการเติมรหัส Clang ให้เป็นกลุ่มเป็นกลุ่ม

http://llvm.org/viewvc/llvm-project/llvm/trunk/utils/vim/vimrcมีไว้เพื่อใช้ในการพัฒนา LLVM เองและช่วยในรูปแบบการเข้ารหัส LLVM แต่ส่วนการเติมโค้ดควรง่ายพอที่จะแยกออก .

ใช่ใช่กลุ่มไม่ใช่ IDE แต่อาจเป็นประโยชน์ที่จะทราบ

[แก้ไข] https://llvm.org/svn/llvm-project/cfe/trunk/utils/clang-completion-mode.elให้เป็นตัวเลือกที่คล้ายกันสำหรับemacs


11

Qt Creatorทำงานร่วมกับ Clang ...


ขอบคุณเพิ่มในคำถาม คุณสามารถพูดได้ไหมว่า QTcreator รุ่นใดที่รองรับการส่งเสียงดัง?
osgx

1
2.4.1 จะทำ .. บน linux คุณไม่จำเป็นต้องเพิ่ม clang tool chain ด้วยตนเอง .. นี่คือข้อมูลวิธีเพิ่ม toolchain หากคุณใช้ windows: doc.qt.nokia.com/qtcreator-2.4/ Creator-tool-chains.html
Kokizzu

แต่ใช้สำหรับการเติมข้อความอัตโนมัติและการแยกวิเคราะห์เท่านั้น
James Harper

9

ตอนนี้พวกเขากำลังเพิ่มการสนับสนุนสำหรับสตูดิโอภาพการเชื่อมโยง ก็สามารถดาวน์โหลดได้ที่นี่


5

ไม่มีสำหรับ windows แต่ถ้าคุณต้องการการเติมข้อความอัตโนมัติอย่างชาญฉลาด netbeans มีหนึ่งในการเติมโค้ดที่ดีที่สุดสำหรับ C ++ มันแยกวิเคราะห์มาโครคอนเทนเนอร์ทั่วไปและตัวชี้อัจฉริยะ นอกจากนี้ยังมีการปรับโครงสร้างการแทรกโค้ดของตัวสร้างและตัวรับและตัวตั้งค่า มันใช้งานได้ดีจริงๆ อย่างไรก็ตามเนื่องจากยังคงใช้ตัวแยกวิเคราะห์สำหรับ C ++ จึงไม่พบข้อผิดพลาดมากเท่าที่คอมไพเลอร์ทำ

Netbeans สำหรับ java ถูกรวมเข้ากับคอมไพเลอร์ดังนั้นจึงมีข้อผิดพลาดและคำเตือนขณะที่คุณพิมพ์รวมถึงการเติมโค้ดที่ถูกต้องตามหลักไวยากรณ์ ดังนั้นในอนาคต netbeans จะรวมเข้ากับ clang เพื่อให้คุณสมบัติประเภทเดียวกันสำหรับ C ++


2
netbeans แยกวิเคราะห์แหล่งที่มาอย่างไร ใช้ฟรอนต์เอนด์ C / C ++ ใด
osgx

3
ใช่ netbeans แยกวิเคราะห์แหล่งที่มาของตัวเองเพื่อให้โค้ดเสร็จ บางทีในอนาคตพวกเขาจะใช้เสียงดังเพื่อแยกวิเคราะห์ แต่ยังไม่ได้รวมเข้าด้วยกัน คุณสามารถเลือกคอมไพเลอร์ต่างๆสำหรับ netbeans gcc หรือ clang ฉันยังไม่ได้ลองด้วยเสียงดังกริ๊กเลย
Paul Fultz II



4

ฉันขอเพิ่ม SublimeText 2 ได้ไหม มีปลั๊กอินSublimeClangอยู่แล้วที่รองรับการเติมรหัสอัจฉริยะตามเสียงดัง


เกี่ยวกับปลั๊กอิน: "ให้คำแนะนำการเติมอัตโนมัติสำหรับ C / C ++ / ObjC / ObjC ++ นอกจากนี้ยังสามารถแยกวิเคราะห์รหัสได้ในขณะที่พิมพ์และแสดงข้อผิดพลาดและคำเตือน"
osgx

ยกเลิก
โยฮัน Boule

1

4

LLVM มีการสร้างสแน็ปช็อตของ Windowsซึ่งเป็นชุดเครื่องมือเสียงดังสำหรับ Visual Studio เป็นตัวติดตั้ง Windows ขณะนี้ก็ควรจะทำงานร่วมกับ Visual Studio 2010, 2012 และ 2013 ข้อมูลเพิ่มเติมสามารถพบได้ในบล็อกโพสต์ LLVM ของเส้นทางไปข้างหน้าสำหรับ toolchain LLVM บน Windows


3

Clang มีไดรเวอร์ที่ (อย่างน้อยก็ควรจะเป็น) แทนโดยตรงสำหรับ gcc ดังนั้นโดยพื้นฐานแล้ว IDE ใด ๆ ที่สามารถใช้ gcc เป็นคอมไพเลอร์ควรจะสามารถใช้ clang เป็นคอมไพเลอร์ได้เช่นกัน (แม้ว่าฉันจะไม่ได้ทดสอบเป็นการส่วนตัวก็ตาม ดังนั้นฉันจึงไม่สามารถรับรองได้ว่ามันทำงานได้ดีเพียงใด)


2
แต่จะไม่สามารถใช้คุณลักษณะใด ๆ ที่นอกเหนือจากชุดเครื่องมือมาตรฐานเช่นการวิเคราะห์โค้ดและการเติมแท็บ
หมูปิ้ง

3

ไม่

ขณะนี้มีเพียง xcode เท่านั้นที่รองรับเสียงดังรบกวนน้อยที่สุด หากคุณต้องการใช้การวิเคราะห์แบบคงที่บน windows คุณจะต้องทำผ่าน CLI


6
คำตอบ / คำถามประเภทนี้ควรมีการหมดเวลา .. (หัวข้อเมตา)
Hernán Eche

Hernán Eche ใช่ แต่ฉันสามารถเปลี่ยนคำตอบที่ยอมรับได้ตลอดเวลา คุณสามารถถามฉันว่าคุณรู้สึกว่าสถานการณ์เปลี่ยนไปหรือไม่และคำตอบคือ "ใช่"
osgx

3

KDevelopสำหรับ Windows เป็นอีกทางเลือกหนึ่ง ในขณะที่ยังอยู่ในช่วงเริ่มต้น (ขณะนี้คุณต้องตั้งค่าสภาพแวดล้อมเพื่อให้สามารถใช้คอมไพเลอร์ MSVC / MinGW ได้ด้วยตัวเอง) มันใช้งานได้และนำความเข้าใจรหัสที่ยอดเยี่ยมของ IDE มาสู่ Windows

https://www.kdevelop.org/features


1

ไม่ใช่ IDE แต่เป็นการผสมผสานระหว่าง IDE และโปรแกรมแก้ไขธรรมดาซึ่งเป็นทางเลือกที่ใช้งานได้สำหรับผู้ที่ไม่สนใจที่จะเขียน Config ด้วยมือ: คอมโบของตัวแก้ไขSublime Text 3และปลั๊กอินEasyClangComplete (รวมถึงClang Formatเพื่อให้โค้ดของคุณเรียบร้อย และเป็นระเบียบเรียบร้อย) ทำงานได้ดีบน Windows ขอบคุณในความพยายามล่าสุดที่จะทำให้ LLVM MSVC ได้ ( เสียงดังกราว-CLยังมีความสามารถในการสร้างการเข้ากันได้ .PDBฐานะของปี 2018 ซึ่งเป็นสิ่งสำคัญสำหรับการแก้จุดบกพร่อง)

อัปเดต:ในปี 2019 ทางเลือกที่ดีกว่าและพิสูจน์ได้ในอนาคตสำหรับ EasyClangComplete คือการใช้Clangdผ่านปลั๊กอินLSP

โดยการใช้ไซต์ของเรา หมายความว่าคุณได้อ่านและทำความเข้าใจนโยบายคุกกี้และนโยบายความเป็นส่วนตัวของเราแล้ว
Licensed under cc by-sa 3.0 with attribution required.