タグ

makeに関するmikurassのブックマーク (14)

  • - 自動化のためのGNU Make入門講座 - Makefileの基本:ルール

    ここでは,メイクファイルの基的な書き方としてルールの説明をしましょう.ここからは,Makefileといえばmakeが参照するメイクファイルのことを指すものとします. コメントと改行 その前に少しコメントの書き方について解説しておきます.Makefileでは,#から行末までがコメントです.例えば, # # Hello Worldを出力する # all: @echo Hello World! のように使います. また,makeは基的に行指向です.見やすくするために改行したい場合はバックスラッシュ\を使って改行を無視させることができます.例えば,マクロの定義(後述)で object_files = \ foo.o \ bar.o \ baz.o と書けば,makeは改行を無視して次のように解釈します. object_files = foo.o bar.o baz.o ここで注意することは,f

  • Makefileの書き方 - $ cat /var/log/shin

    まえがき その昔、Makefileの書き方という非常にわかりやすいMakefileの入門ページがあったのですが、seiichirou氏の卒業(?)とともにページが消えてしまいました。 私も大変お世話になったページだった、というかこれからもお世話になりそうなので、そこでWebArchiveから引っ張りだしてきたものを、はてな記法で書き直したものがこの記事になります。 元々自分用に書き直したのですが、せっかくなので公開してみます。 なので、以下の著作はseiichirou氏に帰属します*1。 Makefileの書き方 はじめに ここでは、Makefileの中でもGNU makeにかぎって説明します。 makeって何? ソースファイルを分割して大規模なプログラムを作成していると、コマンドでコンパイルするのが面倒です。また、一部のソースファイルを書き換えただけなのに全部をコンパイルし直すのは時間の

    Makefileの書き方 - $ cat /var/log/shin
  • Makefile の書き方 (C 言語) — WTOPIA v1.0 documentation

    makeってなに?¶ ソースファイルを分割して大規模なプログラムを作成していると, コマンドでコンパイルするのが面倒である. また, 一部のソースファイルを書き換えだけなのに全部をコンパイルし直すのは時間の無駄である. そんな問題を解決するのが make である. Makefile と呼ばれるテキストファイルに必要なファイルと各ファイルのコンパイルのコマンド, ファイル間の依存関係を記す. そして, “make” というコマンドを実行するだけで, 自動的にコマンドを実行してコンパイルしてくれる. これだけではスクリプトと大差がないのだが, make は Makefile に記された依存関係に基づいて更新されたファイルの内関連のあるものだけを更新することで, コンパイル時間を短くする. make は特定のプログラミング言語に依存したものではない. C 言語のソースファイルのコンパイルにも使え

  • uehatsu.info - uehatsu's tech blog | MacOS X(OS X)にImageMagickをインストールするには (ImageMagick for MacOS X Install Log)

    MacOS X(OS X)にImageMagickをインストールするには (ImageMagick for MacOS X Install Log) - uehatsu's tech blog

    uehatsu.info - uehatsu's tech blog | MacOS X(OS X)にImageMagickをインストールするには (ImageMagick for MacOS X Install Log)
  • トリビアなmakefile入門

    make/makefileは,大きいプログラムのどの断片が再コンパイルされる必要があるかという事と,それらを再コンパイルする発行コマンドを自動的に決定するユーティリティ/設定ファイルです. コンピュータサイエンスの基的な考え方のひとつに冗長性をなくして効率化する構成を追及するというのがあります. 情報理論(bitの理論),HTMLとブラウザ,高級言語と機械語など,ひとつの仕様(表現)から環境や状況にあわせて実装(記述)をつくりだす構成が好まれます. ひとつのファイルでさまざまなコマンドを制御するmake/makefileを制することはコンピュータサイエンスを制することになります. makeのあれこれ もっとも単純な例 Makefile は以下のようなルールからなる.

  • 外部記憶装置:log4cxx

    kenji 14:35 コメントする カテゴリー:C++ JavaではロギングにLog4Jを使用している。 現在、Linux上でC++を使用してアプリを書いているが、同じようにリッチな情報でロギングしたい。 と言うことで、同じapacheのLog4cxxを使用する。Log4cppではファイルの行番号などを一緒にログに出すことができないっぽいのでLog4cxxに。 Log4cxxセットアップメモ。 Log4cxxから落とす。 ./configure --prefix=hoga すると次のエラーが。APRが無いと怒られる。 checking for APR... no configure: error: APR could not be located. Please use the --with-apr option. 仕方ないので入れる。 wget http://www.meisei-u.

  • Make の基本

    メイクファイルの名称 メイクファイルの書式 ターゲット、依存ファイル、コマンド行 コメント 継続行 複数の依存ファイル 複数のコマンド行 Make の基は、 「あるファイルが修正されたときに自動的に必要な作業を再実行させる」 ことにあります。 その再実行のためのルールを記述しているのがメイクファイルです。 ここでは、メイクファイルの名称と、その簡単な記述例を見てみます。 メイクファイルの名称 Make は「メイクファイル」に記述されたルールにしたがって動作します。 メイクファイルの名前は普通は「makefile」または「Makefile」です。 これ以外のファイルをメイクファイルにしている場合は、 コマンドラインからメイクファイル名を陽に指定しなければなりません。 よって、メイクファイル名が「makefile」または「Makefile」ならば、 単に $ make として実行することがで

  • 4.2.2. Makefileプロジェクト - ROOT解体新書

    Windowsのmakeコマンドは「nmake」でそれぞれ、Linux, Macでの「make」「make clean」「make clean; make」に相当する。リビルドは通常は"make clean"と"make"の2つのコマンドを実行するが、VC++の設定では2つ以上のコマンドを指定できないので、Makefileにrebuildというターゲットを作っておき、削除とビルドを行うようにしておく。「出力」はプロジェクトを実行(ショットカットは「F5」もしくは「Ctrl+F5」)するときに実行されるファイル名を指定する。デフォルトでは「プロジェクト名+.exe」が設定されいるが、Makefileで最終的に生成する実行ファイル名(ここのMekefileサンプルでTARGETに指定している名前)と一致していれば問題はない。

  • UNIX/Linuxプログラミング:make入門

    ※書いてあることの保障はしません。 MAKE入門 プログラミングを初めて暫くすると、ソースファイルが長くなってきたりして使いづらくなってきます。そのような時、たいていは、いくつかのソースに分割して、それらをつなげて(リンクするといいます)使うことが多いのではないでしょうか? しかし、今度はそのうちコンパイルのとき、毎回すごい長さのコマンドを打たなくてはならなくなってしまいます。しかも、いくつもプログラムをつくっていくうちにどのファイルをリンクしなければならないのか、わからなくなったりして大混乱状態に陥り兼ねません。 コンパイルの例 gcc -g -o main.o main.c gcc -g -o sub.o sub.c gcc -g -o func.o func.c gcc -g -o program main.o sub.o func.o こんなことになってきたら、Makeをつかってソ

  • 静的ライブラリ(*.a)を作成するMakefile: プログラマーの雑記帳

    Makefileの書き方って、結構忘れがちですよね。 というわけで、メモ。 Linuxアーカイブファイル(=静的ライブラリ(*.a))を作成するMakefileのサンプルです(C++用)。 # # Makefile for CC = g++ AR = ar SRCDIR = . OBJDIR = ./ INCD00 = ./ ARFLAG = crsv LFILE = libSample.a DEST = ./ CP = /bin/mv LIBS = CFLAGS = -Wall -O INCD = -I. -I$(INCD00) vpath %.h $(INCD00) vpath %.cpp $(INCD00) # SRCS=\ $(INCD00)Socket.cpp \ $(INCD00)SocketStream.cpp \ # OBJS=\ $(OBJDIR)Socket.o \

    静的ライブラリ(*.a)を作成するMakefile: プログラマーの雑記帳
  • ライブラリ

    スタティックライブラリの作成 1. はじめに 共通の関数を複数のプログラムで使い回すとき、ライブラリにした方が楽。 ということで挑戦。 2. 次に とりあえず腕ならし。簡単な関数をつくってみる。 あっさりできてしまった。 ソースは下。必要最低限しか書いていないから、見れば分かるでしょう。 Makefile error.c error.h util.c util.h main.c lib.tar.gz‥上のファイル全部 3. 一応説明 error.c、util.cからライブラリをつくり、名前はlibutil.aとする。 そして、それとmain.cをいっしょにコンパイルする。それだけ。 手でコンパイルするとすると、以下のようになる。 % gcc -c error.c % gcc -c util.c % ar r libutil.a error.o util.o % ranlib libutil

  • 分割コンパイルのためのソースファイル分割

  • 分割コンパイル

    Makefileの基 はじめに 大規模なアプリケーションを開発する場合,通常プログラムは複数のソースファイルとヘッダファイルから構築される.そのような場合,それぞれのファイルの依存関係を考えながらコマンドラインからコンパイルするのは非常に面倒である.また,一つのファイルを書き換えた場合にも,それを考慮しながらコンパイルする必要がある.このような煩雑さを解消するのがmakeコマンドである. ルールを記述する まず最も簡単なmakefileを見てみる. test: test1.o test2.o gcc -o test test1.o \ test2.o test1.o: test1.c test1.h test.h gcc -c test1.c test2.o: test2.c test2.h test.h gcc -c test2.c clean: rm test tes

  • C++のための即席Makefile - 簡潔なQ

    最低限だけ書くと次のようになる。 CXXFLAGS = -O2 -Wall LDFLAGS = -lm all: hello # In Windows, it may be "hello.exe" clean: $(RM) hello CXXFLAGSは、C++コンパイラに対する引数。Cコンパイラに対する引数はCFLAGS。最適化や警告、インクルードディレクトリや準拠する標準仕様の設定などを書く。 ここでは最適化オプション-O2と警告オプション-Wallをつけている。 LDFLAGSは、リンカに対する引数。ライブラリディレクトリやリンクしたいライブラリを書く。 ここではmath.hを使うため、-lmをつけてlibm.aをリンクしている。 allは、デフォルトで実行されるターゲット(といってもallという名前だからではなく、先頭にあるからだが)。ここでは実行ファイルhelloをビルドしている

    C++のための即席Makefile - 簡潔なQ
  • 1