2009-06-27 23 views
20

私たちは、建物にsconsを使ってかなり大きなC/C++プロジェクトを持っています。 Eclipse-CDTでこれを構築しようとしています。誰もがこれに関する経験があり、私にビルダーとしてのスコーンを設定するステップを教えてくれるでしょう。 (SConsBuilderプラグインを使用せず、Fedora-11のEclipse-CDTでは動作しません)。Eclipse CDTでSConsプロジェクトをビルドするには?

答えて

11

私は今までにWaf in Eclipse CDTを試しましたが、SConsは本当に似ています。解決策は、空のMakefileプロジェクトを作成し、オプション内の "make"を "scons"に変更することでした。おそらくあなたのパスにscons.batファイルが必要なWindows上で。これは、all:\n\tscons型のパターンを持つダミーMakefileを作成するよりもはるかに優れていませんが、最小の作業です。

SConsBuilder pluginはお勧めできません。そこにはハードコードされたPythonコードがたくさんあり、それがSConstructに吐き出されます。これは古くから更新されておらず、おそらく多くのコードはSConsでは現在廃止予定です。私はもっ​​と良いアプローチは、SConsがVisual Studioのためにやること、あるいはCMakeがEclipse CDTのためにすることをすることだと思います。これはビルド構成に基づいてオンザフライで.cprojectファイルを生成することを意味します。

私はEclipse project generator for Wafを書きました。これは、ビルドノードがソースファイルを収集し、.projectファイルと.cprojectファイルを吐き出します。 CMakeがそれを行うのと同様ですが、Wafのバリアントディレクトリを作成するデフォルトの動作は、ソース外のビルドの問題に対処する必要がないことを意味します。これ以降、extra in waf itselfとして追加されています。これはWaf APIの一部のみを使用するため、小さな仕事量でSConsに変換することは可能です。つまり、そこには何もありません。 .cproject形式は実際にはどこにも書かれておらず、Java版と比べると醜いです。

私はCDTでうまくやっていませんでしたが、Java開発ツールの背後には長い道のりですが、まだ:makeでVimを使用しています。

14

あなたは箱から出して、「標準Cプロジェクトを作成」を使用することが可能である

.PHONY: all clean install 
default: all 
all:  
    scons 
clean: 
    scons -c 
install: 
    scons install 

をsconsのために、単に代表団の重要な目標のMakefileを使用することができます。

16

私たちの生徒の一人は、SConsファイルをインポートして対応する設定でEclipse CDTプロジェクトを作成し、Eclipseプロジェクト設定からSConsファイルを生成できる、双方向で動作するEclipse CDT用の新しいSCons統合を実装しました。さらに、より大きなSConsプロジェクトの段階的な構築を大幅にスピードアップさせるインタラクティブなSConsモードを提供します。すぐに一般公開されます。http://sconsolidator.com

+1

これはうまく見えます。あなたの生徒への誇り。 – supertux

+0

sconsolidatorを使っていたので、私はこれを票決しました。唯一の警告はクローズドソースだということです。私はそれがオープンソースでない限り、それが広く使われるのを見ていない。 –

+0

私はsconsolidatorを試して、うーん、それは私たちのプロジェクトでは動作しません。設定のインポートに問題があり、コンソールに何がうまくいかなかったか(そしてコンソールの表示が空である)に関する詳細情報があると主張しています。しかたがない。 –

4

ビルダーの設定を変更するだけで、プラグインは必要ありません。外部ビルダーを選択し、makeの代わりにsconsを設定し、workdirをdirに設定します。

これで、make targetsビューを使ってscons buildコマンドを作成し、makeコマンドのように実行することができます。 sconsのエラーパーサーはデフォルトで正常に動作し、追加の設定は必要ありません。

0

Sconsolidatorを既存のプロジェクトで使用する場合は非常に注意してください!リンクをクリックしてプロジェクトにSConsの性質を追加すると、プロジェクトのルートディレクトリにある既存のSConstruct/SConscriptファイルが盲目的に上書きされます。 (私はこれをプロジェクトのバグとして報告しようとしていますが、それまでのすべてのターンでブロックされています)。

+0

ここで問題を報告できるはずです:http://sconsolidator.com/projects/sconsolidator/issues –

1

Sconsolidatorは動作します。

関連する問題