(Translated by https://www.hiragana.jp/)
SCons - Wikipedia コンテンツにスキップ

SCons

出典しゅってん: フリー百科ひゃっか事典じてん『ウィキペディア(Wikipedia)』
SCons
作者さくしゃ Steven Knight
最新さいしんばん
3.1.2[1] / 2019ねん12月17にち (4ねんまえ) (2019-12-17)
リポジトリ ウィキデータを編集
プログラミング
言語げんご
Python
対応たいおうOS クロスプラットフォーム
種別しゅべつ ソフトウェア開発かいはつツール
ライセンス MIT License
公式こうしきサイト scons.org
テンプレートを表示ひょうじ

SConsは、オープンソースのソフトウェアビルドツール。SConsは古典こてんてきmake ユーティリティの代替だいたいであり、さらにAutotools機能きのうccacheのようなコンパイラキャッシュ機能きのう統合とうごうしている。それまでのツールと比較ひかくすると、使つかいやすく信頼しんらいせいたかい。

概要がいよう

[編集へんしゅう]
  • コンフィギュレーションファイルはPythonのスクリプトになっている。
  • CC++FORTRAN のファイルの依存いぞん関係かんけい自動じどう分析ぶんせき機能きのうまれている。make のように "make depend" や "make clean"[※ 1] といったコマンドを追加ついかしなくてもすべての依存いぞん関係かんけいられる。言語げんごやファイルタイプについては、ユーザーが依存いぞん関係かんけいスキャナを定義ていぎすることで容易ようい拡張かくちょうできる。autotoolsとはことなり、gccまれている依存いぞん関係かんけい分析ぶんせき機能きのう使つかっていない。わりに、C/C++ のソースファイルにたいしては "#include" をregexpスキャンする。したがってgccを使つかった場合ばあい依存いぞん関係かんけい分析ぶんせきおそくなるし(スキャンを余分よぶんっているため)、信頼しんらいせいひくい(たとえば、-DSOMETHING といったプリプロセッサようフラグを無視むしすることになるため)が、gcc以外いがいのコンパイラでもおな依存いぞん関係かんけいスキャンをおこなうという意味いみでは移植いしょくせいたかくなっている。
  • CC++DJavaFORTRANObjective-CYaccLexQtSWIGもとからサポートしており、TeXLaTeXによる文書ぶんしょ作成さくせいもサポートしている。言語げんごやファイルタイプについてもユーザー定義ていぎのビルダーでサポート可能かのうである。
  • SCCSRCSCVSSubversionBitKeeperPerforce からソースファイルをせる。
  • Microsoft Visual Studio .NET および過去かこの Visual Studio をサポート(.dsp、.dsw、.sln、.vcproj ファイルを生成せいせい
  • MD5シグネチャを使つかってファイル内容ないよう更新こうしん検出けんしゅつする。一般いっぱんてきタイムスタンプによる検出けんしゅつもサポートしており、どちらかを選択せんたくできる。
  • 並列へいれつビルドをサポートしており、ディレクトリ構成こうせいとは関係かんけいなく指定していした個数こすうのジョブを同時どうじ実行じっこうできる。
  • #include ファイル、ライブラリ、関数かんすう、typedef をさがすというautoconfのような機能きのうみでサポート。
  • ぜん依存いぞん関係かんけいのグローバルビューがあり、ふくすうかいのビルドやターゲットのならえが不要ふよう
  • 作成さくせいしたファイルをキャッシュで共有きょうゆうでき、ふくすうかいのビルドが高速こうそくできる。ccache にているが、C/C++ のコンパイルだけでなく、あらゆるターゲットファイルに対応たいおうしている。
  • クロスプラットフォームのビルドけに設計せっけいされており、Linux、そのPOSIXシステム(AIXBSDけいHP-UXIRIXSolaris)、Windows NTけいmacOSOS/2動作どうさする。

SConstruct ファイルのれい

[編集へんしゅう]
Program('main.c')

ユーザーが 'scons' コマンドを実行じっこうすると、'main'(Linux)または 'main.exe'(Windows)という実行じっこうファイルをビルドする。

歴史れきし関連かんれんプロジェクト

[編集へんしゅう]

元々もともとは ScCons という名称めいしょうのビルドツールで、2000ねん8がつロスアラモス国立こくりつ研究所けんきゅうじょ開催かいさいした Software Carpentry(既存きそんプログラミングツール代替だいたいするソフトウェアを募集ぼしゅうしたイベント)のビルド部門ぶもん優勝ゆうしょうした。元々もともとは Cons[※ 2] というユーティリティをベースとして設計せっけいされていた。

Waf英語えいごばんはかつては "SCons/BKsys" という名称めいしょうで、SCons に影響えいきょうけてKDEコミュニティがしたツールである。KDE4とそれ以降いこうのビルドにこれを使つか計画けいかくがあったが、CMake移行いこうした[2]

SConsを使つかっているおもなアプリケーション

[編集へんしゅう]

注釈ちゅうしゃく

[編集へんしゅう]
  1. ^ おおくの場合ばあい "depend" や "clean" のターゲットは autotools が生成せいせいするか、ユーザーが自前じまえく。make はたんにそれを実行じっこうするツールである。
  2. ^ Cons

脚注きゃくちゅう

[編集へんしゅう]
  1. ^ Archives - SCons
  2. ^ Why the KDE project switched to CMake -- and how (continued) LWN.net、
  3. ^ CompilingWesnoth”. Wiki. Wesnoth. 2011ねん4がつ11にち閲覧えつらん
  4. ^ Building Csound”. C sounds. 2011ねん4がつ11にち閲覧えつらん
  5. ^ README.txt”. id Software. 2015ねん5がつ13にち閲覧えつらん
  6. ^ Gem5, http://www.gem5.org/ .
  7. ^ SCons is full of win today”. ESR. iBiblio (2011ねん4がつ5にち). 2011ねん4がつ11にち閲覧えつらん
  8. ^ Developer documentation for GtkRadiant 1.6.0 (Zeroradiant)” (Trac). QE radiant (2008ねん6がつ30にち). 2009ねん12月28にち閲覧えつらん
  9. ^ Installation”. Wiki. Ahay (2011ねん2がつ26にち). 2011ねん4がつ11にち閲覧えつらん
  10. ^ Mixxx/Compiling” (2014ねん8がつ26にち). 2015ねん7がつ17にち閲覧えつらん
  11. ^ Building for Linux”. MongoDB. 10gen (January 30, 2009). February 8, 2011閲覧えつらん
  12. ^ INSTALL”. NSIS. Source forge (2011ねん5がつ28にち). 2011ねん4がつ11にち閲覧えつらん
  13. ^ Open Source Routing Machine”. May 29, 2012閲覧えつらん
  14. ^ How to Download and Build V8”. V8. Google. July 5, 2011閲覧えつらん
  15. ^ Modular Controller Architecture”. Research Center for Information Technology (FZI), Karlsruhe Institute of Technology (KIT). 2015ねん7がつ17にち閲覧えつらん
  16. ^ Godot Docs ビルドシステムの説明せつめい”. 2020ねん10がつ16にち閲覧えつらん

関連かんれん項目こうもく

[編集へんしゅう]

外部がいぶリンク

[編集へんしゅう]