2011-10-22 6 views
42

clang C++コンパイラは、IDEのコードを解析するなどのタスクで使用するためのAPIを提供することで、IDE統合を強化することを目的として構築されています。clangベースのクロスプラットフォームC++ IDE?

セマンティックハイライト、リファクタリング、セマンティックエラーをリアルタイムで表示するなどの機能を提供するclangを使用するC++ IDEはありますか?

私はEclipse CDTを使用していましたが、そのC++パーサには不完全さがあり、IDEでコード内に多くの偽陽性エラーが報告されます。私は、コンパイラの内部に構築されているIDEに興味があるので、コンパイラが同じエラーを報告する場合に限り、エラーを報告するIDEを持っていたいと思います。

私はWindowsまたはLinux用の単一のプラットフォームのもの(そうない Xcodeの)を知ること気にしないだろうが、私がいる限り、彼らはFOSS(なぜもう一つの理由であるため、クロスプラットフォームIDEの中に主に興味がありますXcodeでない)。

答えて

4

あなたはclang completeを試しましたか?

あなたがパンクしている場合は、vimのに十分なIDEです。)

私は、多くの場合、Xcodeのでは動作しそう...本当に身をもって経験を共有し、しかし、私はその存在を知っていたことができません。

+0

@lurscherあなたも大歓迎です - 私は今週末にそれを打ちようとしています。 – justin

15

のQt Creatorはクランに彼らの次世代コードの解析と関連する機能を基づかれる:

http://blog.qt.digia.com/blog/2011/10/19/qt-creator-and-clang/

は非常に、非常に有望に見えます!

+0

ニースキャッチ!数日前に発表されました。 – HighCommander4

+1

HighCommander4:あなたがClangメーリングリストを利用している場合は助けになります;-) – rubenvb

+0

もっとたくさんのことを望んでいましたが、clangはかなり若いプロジェクトだと思います。当分の間、答えが受け入れられました: – HighCommander4

3

CodeLite v3.5 startsはネイティブでClangをサポートしているようです。しかし、LLVMをバックエンドとしてセットアップすることが可能であることはわかりません。

+0

そして、それは働いているようだ(テストの10分)... – g2mk

+0

素晴らしい! – lurscher

1

ないFOSSがありますが、(IDEAおよびReSharperの名声の)ジェットブレーンズはfull C++ IDE supporting Win/Linux/Mac and using clangに彼らのAppCode製品を構築しています。

Yes, really

+0

これがclang-basedで、clangスタティックアナライザと統合されている以上の証拠はありますか? – HighCommander4

+0

実際のビルドでプラットフォームツールチェーンにclangやdefersを使用しているのかどうかは分かりませんが、それは元の質問に関するものではありません。私はそれが他のすべてのためにclangを使用することを確信しています - それはclangが設計されているものであり、実行可能な選択肢があるかのようではありません。 – mrec

+0

私は、コード補完、コードナビゲーション、構文のハイライト、リバクタリングのような機能をclangによって強化することを指していました。これは、Eclipse、Code :: Blocks、CodeLite、NetBeans、KDevelop、Qt Creatorなど、私が知っている他のC++ IDEの場合には当てはまりません - XCodeと@rubenvbが話していた次世代Qt Creatorを除いてなぜ私は尋ねた。 – HighCommander4

3

KDevelopには意味解析とオートコンプリートを含むclangベースのcおよびC++サポートが追加されました。これは主にLinux用ですが(2016年10月現在)、WindowsとMac用のベータリリースがあります。

emacsの場合、オートコンプリート、フライエラーチェック、シンボルジャンプなどの機能を提供するirony-modertagsがあります。 cmake-ideと組み合わせると非常に強力なツールとなり、emacsに精通した方がこの環境で非常に生産的になる可能性があります。

3

Language Server Protocol(LSP)プロジェクトのこの分野での新しい開発で、エディタ/ IDEをコードインテリジェンス/解析を提供するバックエンドから切り離すことができる、言語に依存しないAPIを目指しています。

Clangdと呼ばれるclangベースのC++バックエンドを作成する作業は現在進行中です。

クライアントとしてLSPをサポートするために、several editors/IDEsの継続的な作業も行われています。

バックエンドの実装が成熟すると、Langをサポートするすべてのエディタは、原則として、Clangdを通じて公開されたclangの機能を活用することができます。

関連する問題