締切済み

Windowsのmakeについて特にpython

  • 困ってます
  • 質問No.9495878
  • 閲覧数110
  • ありがとう数3
  • 気になる数0
  • 回答数5
  • コメント数0

お礼率 50% (276/549)

ソースプログラムを実行するための環境を作るmakeについてお尋ねします。Linuxなどでは、OSをインストールした時点で1つ有効なmakeがg++, gcc等で使用することを目指して利用できるようになっていると思います。アプリのインストールでさえmakeですね(./configure, make cleanとかの定型処理)。Windowsだとmakeを提供する元がいっぱいあってプロンプトでwhere make とすると4つぐらい出てきます。そこで質問なのですが、makeという操作は提供元によって全然文法その他の仕様が違うものなのでしょうか。つまり、一般性が高いmakefileというものあるのか?という質問にもなりますが。コマンドプロンプトでmakeをやるとpathの最初に出てくるmakeが呼ばれるようです。Windowsのmakeは一般論では何も言えないでしょうか。大昔,マイクロソフトはnmakeで名前を変えて唯一のものとして確定していたようですが。
さらにpython3.6についてお尋ねしたいと思います。あるプログラムのソースをダウンロードして、広げてみるとソースファイル軍とmakefileがあり、makefileの冒頭に、
## The present Makefile is a pure configuration file, in which
## you can select compilation options. Compilation dependencies
## are managed automatically through the Python library SConstruct.

上記はmakeの一般論のあとPythonでもライブラリがあれば使えるという風に読める記述があります。そもそもPythonってインタプリターとかソースにpythonコマンドで利用するということであり、実行ファイルは作らないものだと思っていたのでどういうことだろうと思うのですが。makefileをmakeで呼び出して利用するにしてもどのmake.exeでもいいってことではないと思うのですが。pythonで使用するmakefileということですが。
よろしくお願いします。

回答 (全5件)

  • 回答No.5

ベストアンサー率 90% (9/10)

その文章に書いてるのは「この Makefile は SCons のラッパーで
オプションを SCons に渡すのに使ってるだけ。
依存関係の解決などは SCons がやる」ってことでしょう。
SCons は Python 製の make 代替ユーティリティです。
感謝経済
  • 回答No.4

ベストアンサー率 28% (1322/4612)

コンピューター カテゴリマスター
>”こういうものを提供して使って下さい”と言っている人は方言がないと思っている人たちだと思います。

いえ、方言がないと思ってるわけではなく(そういう人もいるかもしれませんが)、大抵は
・使う人がその人の環境に合わせて書き換える事を前提にしている
・方言があるのは知っているが元から考慮していない
・GNU makeを前提にしている(GNU makeは結構多くのプラットホームに移植されてるので)
あたりです。

>またmakeファイルの中身をざっとみてどういうmakeなら動くって判断できるでしょうか。

Makefile中にコメントに書かれていることもありますし、
同梱されているドキュメントに書かれていることもあります。
馴れもあるかもしれませんが私はGNU make用のMakefileなら、GNU make用と大体わかります。
  • 回答No.3

ベストアンサー率 28% (1322/4612)

コンピューター カテゴリマスター
#2です。
makeはプロでも使います。
私自身、職業プログラマですしmake使ってますから。
お礼コメント
skmsk1941093

お礼率 50% (276/549)

回答ありがとうございます。makeはいいですか。確かにご利益はあるものだと思います。ある計算のプログラムを一式他に人に渡すとき、makefileも一緒にしてセットで渡すとします。それをもらった人は確実に対応できるはず、という確信が持てるものと思えるでしょうか。それとも”自分と同じ環境じゃないと使えないから難しいだろうな”、思うものでしょうか。
投稿日時 - 2018-05-08 07:08:19
  • 回答No.2

ベストアンサー率 28% (1322/4612)

コンピューター カテゴリマスター
ターゲット: 依存ファイル...
<tab>コマンド

といった基本的な部分は共通ですが、マクロ等が絡んでくるとかなりの方言があります。
お礼コメント
skmsk1941093

お礼率 50% (276/549)

回答ありがとうございます。私もそういう思いがあります。方言だらけでまともに動かないということです。”こういうものを提供して使って下さい”と言っている人は方言がないと思っている人たちだと思います。そういう意味で比較的方言がない世界というのはやはりLinuxでしょうか。Linuxだとユーザがmake環境を独自で立ち上げるということはできなくはないでしょうがあまりないと思うのです。やはりLinuxなのかなと思います。またmakeファイルの中身をざっとみてどういうmakeなら動くって判断できるでしょうか。windowsを使うことを想定してmakefile添付しているのもあり、これどうなの?と思ったりしています。
投稿日時 - 2018-05-08 06:57:06
  • 回答No.1

ベストアンサー率 19% (838/4390)

makeはプロでも使いません。
何百あるソースを1つ変えただけで数十もコンパイルされては
収拾がつかないからです。そのための不具合も数多くあります。
お礼コメント
skmsk1941093

お礼率 50% (276/549)

回答ありがとうございます。御利益もあるものだとは思うのですが、こう使い勝手が悪いものだとどうなのかな?って思います。”うまくいく人”にはたいへん便利であり、自分が”うまくいく人”かどうかわからず試して、うまくいかない場合、それ以上、もがくとハマってしまうのではないかと思います。”とにかくこの環境でやってくれ”とはどこにも書いてないんですね。
このご利益をたっぷり享受している人は、”まだmake使ってないの?”なんて言っています。
投稿日時 - 2018-05-08 07:03:12
AIエージェント「あい」

こんにちは。AIエージェントの「あい」です。
あなたの悩みに、OKWAVE 3,500万件のQ&Aを分析して最適な回答をご提案します。

関連するQ&A
こんな書き方もあるよ!この情報は知ってる?あなたの知識を教えて!
このQ&Aにはまだコメントがありません。
あなたの思ったこと、知っていることをここにコメントしてみましょう。

その他の関連するQ&A、テーマをキーワードで探す

キーワードでQ&A、テーマを検索する

特集


感謝指数をマイページで確認!

ピックアップ

ページ先頭へ