異種混在環境


プログラムを実行したい特定のオペレーティングシステムの種類用に、 自動的にバイナリを生成したい場合は smake(1) コマンドを使ってください。 smake(1) は新しくディレクトリを作ったり、オペレーティングシステムの 種類を切り替えて毎回再コンパイルしたりすることなく、オペレーティングシステムの 種類ごとにバイナリを生成し、ディレクトリを用意してそこに置きます。

smake は以下のようなフォーマットの Makefile を要求します:

    include $(BUILD)/config.make
    
    LANGUAGE = mpc++
    CPPFLAGS = $(X11INCLUDES)
    LDLIBS = -L$(X11LIBS) $(XAWLIB) $(XMULIB) $(XTOOLLIB) $(XLIB) -lm
    
    SRCS = hello.cc
    OBJS = hello.o
    PROGRAM = hello
    
    OBJDIR_RULE = prog-wrapper
    include $(RULES)/srcdir
この Makefile /opt/score/example/mttl-ult/hello.cc のプログラムをコンパイルします。

単一種クラスタ用にプログラムをコンパイルします。

$ smake
この smake(1) コマンドは SCore から提供されるということに 注意してください。 Linux や UNIX から提供される make(1) とは違います。

smake はここでは挙げていない非常に多くの出力を出します。 それはカレントディレクトリ内に特定のプラットフォーム用の オブジェクトディレクトリを作成し、 Makefile をコピーします。 このディレクトリの中で、プログラムをコンパイルし、再配置可能な オブジェクトファイルや実行ファイルを生成する前に、プラットフォーム依存の オブジェクトファイルを作成します。 特定のプラットフォーム用の実行プログラムを選択するのに使われる、 .wrapper と呼ばれるラッパーファイルがカレントディレクトリに作られ、 Makefile が目標とする PROGRAM は ラッパーへのリンクとして作られ、実行プログラムへのリンクを形成します。


<<<<<<< hetero.html
PCCC logo PCクラスタコンソーシアム

CREDIT
This document is a part of the SCore cluster system software developed at PC Cluster Consortium, Japan. Copyright (C) 2003 PC Cluster Consortium.