• ベストアンサー

windowsで使える GNU make

お世話になっております。 Windowsでの開発とlinuxでの開発をやっております。 前にWindowsのnmake が非力なので linux での make と同じ機能で、cygwinのmake のような特定の環境でしかうごくのではない、make はありませんか? という質問をして、MinGW の make という答えをいただきました。その後、これは便利に使っているのですが、最近共同の作業が多く、他人にも使わせたいのですが、MSYS をインストールしてもらわないとうまく行かないようです。 MinGW の make は単独では msys-1.0.dll が無いと怒るし、msys-1.0.dll を持ってきても、何もしないで終了空いてしまいます。MSYS のインストールディレクトリにパスを通して make をそこから起動すれば問題のですが、MSYSをインストールしないで make を使えるようにする方法はありますか? また、make.exe 単独(または1,2個の.dll)をコピーしてパスの通っている所に置くだけで使える make は無いでしょうか?

質問者が選んだベストアンサー

  • ベストアンサー
  • sakusaker7
  • ベストアンサー率62% (800/1280)
回答No.2

GNUWin32というシリーズのものがあります。 多言語対応で iconvともうひとつDLLが必要になっていますが、 ソースからビルドすればiconvを使用しないものも作れるかもしれません。 Make for Windows http://gnuwin32.sourceforge.net/packages/make.htm

moritan2
質問者

お礼

ありがとうございました

その他の回答 (1)

  • gatyan
  • ベストアンサー率41% (160/385)
回答No.1

makeと同じフォルダにmsys-1.0.dllをコピーしてみました? (↑試してません) あとはgnuのHPからmakeのソースをもらってきて、MinGWでコンパイルすれば、exeのみで使えるモノができるとおもいます

moritan2
質問者

補足

質問にもかきましたが、msys-1.0.dll を持ってきてmake を入れたのと同じところに入れました。でも、make を起動してもだまって終了してしまいます。msys-1.0.dll を持ってきていないと msys-1.0.dll がないというダイアログがでるので、msys-1.0.dll の読み込みはできているようです。

関連するQ&A

  • windows で使えるGNU makeはありますか?

    Microsoft Visual Studio 2005 と nmake を使っておりますが、GNU make で使えるようなマクロとか使えないので、不自由しております。cygwin は入れてありますが、cygwinの環境だと path を/cygdrive/とか特有の書き方になるので、これもちょっと不自由に思います。nmake の上位互換で GNU make のマクロが使えるフリーの make はあるでしょうか?

  • windowsへのswigのインストール

    swigのインストールができず困っております。どなたか詳しい方いらっしゃいましたらお知恵をお貸しいただけたらと思います。 http://www.kkaneko.com/rinkou/cygwin/swig.html を参考にswigのインストールを試みました。 現在の状況です。 cygwinインストール後,下記より,swigwin-1.3.40をダウンロードしました。 http://sourceforge.net/projects/swig/files/ これをWクリックで解凍して,C:\tempへ入れました。 cygwinのシェルからC:\temp\swigwin-1.3.40へ移動し, ./configure とタイプしました。エラーは出ませんでした。 続いて, make とタイプしましたが,下記のエラーが出てしまいました。 $ make C:\mingw\bin\make.exe[1]: Entering directory `C:/temp/swigwin-1.3.40/Source' C:/mingw/bin/make.exe all-am make.exe[2]: Entering directory `C:/temp/swigwin-1.3.40/Source' process_begin: CreateProcess((null), /usr/bin/mkdir -p CParse, ...) failed. make (e=3): 指定されたパスが見つかりません。 make.exe[2]: *** [CParse/.dirstamp] Error 3 make.exe[2]: Leaving directory `C:/temp/swigwin-1.3.40/Source' C:\mingw\bin\make.exe[1]: *** [all] Error 2 C:\mingw\bin\make.exe[1]: Leaving directory `C:/temp/swigwin-1.3.40/Source' C:\mingw\bin\make.exe: *** [source] Error 2 swigwin-1.3.40ではなく,swig-1.3.40,swig-2.0.4,swigwin-2.0.4でも同様のことを試みましたが同じエラーが出てしまいました。再起動後に試しても同様でした。 どなたか原因が分かる方いらっしゃいましたら教えていただけたら助かります。 よろしくお願い致します。 なお,1点気になることとして,cygwinの起動の際に, bash: /cygdrive/c/usr/local/share/ispell/.bash_profile: line 4: シンタックス エ ラー: 期待してないファイルの終了 というメッセージが毎回出力されます。 OSはWINXPSP3,swigのインストールの目的はpyOptをインストールするのに必要なためです。 よろしくお願い致します。 相当調べましたが,MinGWとMSYSを入れてうんぬんという方法もあるみたいでしたが,道のりが長そうなのでできれば上記エラーが解決できたらと考えています。

  • cygwin1.dll を必要としないCのexeファイルを作りたいです

    はじめまして、shigure2005と申します。 私は普段UNIX上でC言語のプログラムを書いているのですが、 わけあってWindows上で動くようにする必要が出てきました。 そのプログラムをそのままcygwinでコンパイルしたところ コンパイルでき、実行ファイルも問題なく実行できたのですが、 このままですとcygwin1.dllが必要になってしまいます。 ですので、これがなくてもすむような別のコンパイル方法を 教えていただければと思ったしだいです。 過去ログを探って、MinGWについては試してみたのですが、 コンパイルは問題なく通るのに、なぜか実行ファイルを 実行すると、うまく起動できません。Mingwは以下のファイルを ダウンロードしてインストールしました。 mingw-runtime-3.8.tar.gz mingw-utils-0.3.tar.gz MinGW-4.1.1.exe w32api-3.3.tar.gz binutils-2.15.91-20040904-1.tar.gz mingw32-make-3.80.0-3.exe PATHは「C:\mingw/bin;C:\cygwin/bin」の順に通していて、 コマンドプロンプトでコンパイルし、コンパイル後、 コンパイルに用いたdllがcygwin1.dllでないのを確認して います。また、helloworldなど簡単なプログラムなら、 Mingwでもうまくコンパイルできてます。cygwinとMingwで コンパイル性能に大きな差などがあるのでしょうか? また、cygwinだけでも、Mingw-runtimeをインストール すれば、cygwin1.dllを必要としない形式にコンパイル できるという話を聞いたのですが、ご存知の方が いらしたら教えてください。 どうぞよろしくお願いします。

  • Winコンソール上でMsysのconfigure

    現在Windows上でConsole2+nyaosにて操作を行っています。 c++ソースのパッケージを利用したく./configureを使用するためMinGWとMsysをインストールしました。 私はインストールすればConsole2上で./configureを実行できると思っていたのですが、Msys付属のコンソール上でしかできないようです。 コマンドプロンプト上でも実行できませんでした。 一応MinGWとMsysのbinディレクトリにPathは通してあります。 どうにかしてWindowsのコンソール(Msys付属のではない)上で./configureを実行させることはできないでしょうか。 関係あるかは分かりませんが、MinGWの他にBorlandもインストールしてあります。 よろしくお願いします。

  • Windows環境へのmakeについて

    Windowsの開発環境でmakeを使用したいと思います。シェルでフォルダを選んでmakeコマンドを投入するとmakefileの指示に従ってそのフォルダのソースファイルなどを集めて実行ファイルを作成するところまでやってくれるというものです。 Linuxはmakeコマンドが当然ながら普通に利用できるのでその方向に沿ってシェルに依存したmakefileを作成すると思います。Windowsの場合は基本はmakeコマンドがないので、別途、取り寄せるのだと思います。 今の状態で、Windowsのパワーシェルでwhich make -a とすると、Rtools, bcc55, Gow(Gnu on Windows)のmake.exeが出てきます。適切なmakeが最初に呼ばれるように環境を編集してあとはmakefileを編集すればいいということなのでしょうか。Windowsにはnmake, cmakeなどいろんなものもありますが。コンパイラはgfortranとかgccなどのGNUのコンパイラで、これはシェルからコンパイルできるようになっています。Visual studio系はすぐには使いません。 Windowsのシェルでmakeを利用する手順を教えて頂きたいと思います。よろしくお願いします。

  • CPANモジュール取得におけるmakeについて

    CPANモジュールのインストールについて質問があります。 環境は Windows XP, ActiveParl5.8.8 ,コンパイラはVC++6.0 です。 ※tar.exeとgzip.exeは C:\Perl\binにあります。 現在、Text::NSPというモジュールをインストールしようとしていますが cpan> install Text::NSP を実行すると makefile (1199):fatal error U1033:予期しない'@echo'Stop. nmake --NOT OK とエラーが出ました。 Microsoftサポートオンラインでエラーを調べたら、nmake仕様が原因らしいのですが、どこをどう変えたら解決できるのかが分かりません。 また、nmake ではなく dmake を使おうと思い、 C:\Perl\bin に dmake.exe を起きました。 また、C:\Perl\lib\CPAN のフォルダにあるConfig.pmのmakeを  'make'= q[] ⇒  'make' =q[C:\Perl\bin\dmake.EXE]と変更しました。 上記の変更で実行すると dmake.exe: Error-- 'C:\Perl\libConfig.pm' not found, and can't be made C:\Perl\bin\dmake.exe -- Not OK とエラーになります。 また perl -V:make でmakeを確認しても常に結果が make ='nmake'; としかなりません。 ここが make ='dmake'; と変えられればインストール出来るのかな?とも考えています。 この変更の仕方が調べているのですが、なかなか分かりません。 よろしくお願いします。 ※現在のnmakeの設定で他のモジュールは何の問題もなくインストール出来ています。

    • ベストアンサー
    • Perl
  • Cygwinでmakeコマンドが使えない(Vista)

    今までFedora-Linuxで使っていたプログラムをWindows上で実行するために、VistaにCygwinをインストールし、使い始めていることろです。 Makefileを使いコンパイルをするため [make]や[make -f Makefile]などをコンソールに入力しても、 bash: make: command not found が出てしまいます・・・。これを解決したいのです。 これは、Linux上でいつも行っていた操作と全く同じです。 Cygwin用にMakefileを書き換える必要がある、何かのツールをインストールする必要がある、makeに代わる何かのコマンドが存在する・・・ など、あるのでしょうか?

  • Cygwinで、makeコマンドが使えない(Vista)

    今までFedora-Linuxで使っていたプログラムをWindows上で実行するために、VistaにCygwinをインストールし、使い始めていることろです。 Makefileを使いコンパイルをするため [make]や[make -f Makefile]などをコンソールに入力しても、 bash: make: command not found が出てしまいます・・・。これを解決したいのです。 これは、Linux上でいつも行っていた操作と全く同じです。 Cygwin用にMakefileを書き換える必要がある、何かのツールをインストールする必要がある、makeに代わる何かのコマンドが存在する・・・ など、あるのでしょうか?

  • Windowsのmakeについて特にpython

    ソースプログラムを実行するための環境を作る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ということですが。 よろしくお願いします。

  • MinGWを使用してインストール

    Windows XP に MinGW をインストールしました。 そして MinGW に w3m をインストールしたいのですが、 make でエラーになってしまいます。 色々調べてみたのですが、それらしい情報はみつけられませんでした。 MinGW に w3m はインストールできないのでしょうか。 Cygwin はいろいろめんどくさいので MinGW で使いたいのですが(emacs-w3m を使用したいのです)インストールする方法はありますか。 よろしくお願いします。

専門家に質問してみよう