2011年10月12日水曜日

gmake

以前 Solaris の make と GNU make の互換性がどーのこーのという記事を書きました。
最近までは、特に問題もなく使えていました。

しかし、
既存のプログラムの一部を共有ライブラリにしたことで、
コンパイル時に CC と g++ でオプションを
かえなければならなくなりました。


簡単に単純に makefile 中に if文を使いたい。

GNU make なら
ifeq ($(CC), g++)
      処理1    
else       
      処理2    
endif       
と書くことができます。

これを Solaris に持っていって、
さて make 。。。

make: Fatal error in reader: makefile, line 15: Unexpected end of line seen

Solaris 標準の make では使うことが出来ません。


残念




あっ、Solaris にも gmake って入ってるんじゃ?

ありました。

標準で入っているのか、管理者が後で入れてくださったのかは分かりかねますが、
/usr/sfw/bin/gmake
にありました。

今度は、gmake で上記の ifeq 文を試してみると、ちゃんと使えました。
これで一安心。

無知とは恐ろしいものです。

0 件のコメント:

コメントを投稿