Windowsで「make」をインストールして使用する方法


125

私は自分のマシンにクローンを作成したリポジトリの誰かの指示に従っています。私が欲しいのは簡単makeです。コード環境のセットアップの一部としてコマンドを使用できるようにすることです。しかし、私はWindowsを使用していて、オンラインで検索して、ダウンロードするmake.exeファイル、ダウンロードするmake-4.1.tar.gzファイル(次にどうするかわからない)、MinGWのダウンロードに関するもの(GNUの場合;インストール後、「make」についての記述は見つかりませんでした。

私は、GNUコンパイラや関連するものは欲しくない。Windowsで「make」のみを使用したい。そのために何をすべきか教えてください。

前もって感謝します!


1
単にインストールするだけでmakeは問題を解決できない可能性があります。多くのMakefileはUnixライクなシステム用に書かれており、Cygwinなどの追加のユーティリティ(プロジェクトにコンパイル済みコードが含まれる場合はサポートされているコンパイラを含む)をインストールするか、本当に解放できない場合はWSLなどのプラットフォームに切り替える必要があります。 Windowsから完全に自分自身。
Tripleee

回答:


157

makeこれはGNUコマンドであるため、Windowsでこれを取得する唯一の方法は、GNUWin32が提供するバージョンのようなWindowsバージョンをインストールすることです。または、MinGWをインストールして、次のように実行できます。

copy c:\MinGW\bin\mingw32-make.exe c:\MinGW\bin\make.exe

または、PATHに実際の実行可能ファイルへのリンクを作成します。この場合、MinGWを更新してもリンクは削除されません。

mklink c:\bin\make.exe C:\MinGW\bin\mingw32-make.exe

他のオプションはChocolateyを使用することです。まず、このパッケージマネージャーをインストールする必要があります。インストールしたら、simlpyをインストールする必要がありますmake

choco install make

最後のオプションは、Linux用のWindowsサブシステム(WSL)をインストールすることです。そのためmake、インストールできるWindows 10に選択したLinuxディストリビューションが組み込まれ、gccCプログラムの構築に必要なすべてのツールが提供されます。


1
ありがとう!makeがGNUコマンドであることを知りませんでした。指定したパスを確認したところ、make.exeは同じようなパス(C:\ MinGW \ msys \ 1.0 \ bin \ make.exe)にありました。これをPATH変数に追加すると機能します。
Hashem Elezabi 2015

2
より簡単な方法は、シンボリックリンクを作成することです:mklink C:\bin\make.exe C:\MinGW\bin\mingw32-make.exe。したがって、将来、mingwをアップグレードした場合、リンクは完全な状態になります。
kumarharsh

1
MSYS2だけでは使えませんでしたmklink。MSYS2 pacmanはmakeをインストールできますがpacman -S make、これは正しく機能していません。代わりに、mingw32-make.exeすでにに存在していましたmsys64/mingw64/bin。多分それは同梱されていましたgccmake.exeしかし、それが単にと呼ばれていないのはなぜですか。にコピーしましたmake.exe
Neonit

2
Visual Studioには独自の「make」ユーティリティが同梱されていることを言及すると役立つかもしれません。ドキュメントをnmake参照してください。VSコマンドプロンプトから使用できますが、もちろんパスに追加できます。ただし、GNU makeと比較すると機能がかなり制限されており、ドキュメントはほとんど存在しないことに注意してください...
jmon12

1
@notacornのようなものですが、両方から「Windows」フォルダにアクセスできます。/ cでGit bash、/ mnt / cでWSL
EduardoYáñezParareda

184

GNU makeはChocolateyで入手できます。

  • ここからチョコレートをインストールします

  • その後、choco install make

これで、WindowsでMakeを使用できるようになります。
MinGWで使用してみましたが、CMDでも動作するはずです。


31
2019年現在の最も単純なソリューションIMO
マイスタックが

これがBashで機能しない理由はありますか?@vasantha
user3614648

注:適切なプロキシを設定する必要がある場合がありますchoco config set proxy ADDRESS:PORT
weshouman

チョコレートが管理用のPowerShellセッションを必要とする方法が気に入らない場合は、スクープもあります:github.com/lukesampson/scoop/wiki/Chocolatey-Comparison
Jonathan Landrum

18

手動で作成されたものmake.exeが固執し、予期しない問題を引き起こす可能性があるため、受け入れられた回答は一般に悪い考えです。それは実際にRubyInstallerを壊します:https : //github.com/oneclick/rubyinstaller2/issues/105

別の方法は、Chocolatey 介してmakeをインストールすることです(@Vasantha Ganesh Kが指摘)。

もう1つの方法は、ChocolateyからMSYS2をインストールしmake、from を使用することC:\tools\msys64\usr\binです。makeがMSYS2で自動的にインストールされない場合は、pacman -S make(@ Thad Guidryおよび@Lukeで指摘されているように)を介して手動でインストールする必要があります。


3
Chocolateyを使用してこれをインストールしましたが、make.exeがありませんC:\tools\msys64\usr\bin??
Rosdi Kasim

1
あなたはそのフォルダーでパックマンを見つけることができます。その後、@ thadのステップ3を使用します
Luke

8

Windows 10を使用している場合は、Linuxサブシステム機能に組み込まれています。作成するディレクトリにBashプロンプトを起動し(Windowsキーを押してから、bash「Bash on Ubuntu on Windows」と入力して選択します)、作成cdするディレクトリに移動しますmake

FWIW、Windowsドライブはにあります。/mntたとえば、C:\ドライブは/mnt/cBashにあります。

スタートメニューからBashを使用できない場合は、そのWindows機能を有効にするための手順を以下に示します(64ビットWindowsのみ)。

https://docs.microsoft.com/en-us/windows/wsl/install-win10


4
LinuxサブシステムはWindows 10 Homeでは使用できません。
マーティングレイ、

Linuxサブシステム(具体的には、Microsoft StoreからダウンロードしたUbuntu 20.04 LTS)を私のWin10 Home ver.1809で過去2か月間まったく問題なく使用してきました。makeと言えば、最初にbashを起動しなくても、Windowsターミナルウィンドウ内から直接使用できます。きちんと。
Igor Soudakevitch


5

公式サイトGnuWin32からmake.exeをダウンロードしてください。

  • ダウンロードセッションで、[ ソースを除く完全なパッケージ ]をクリックし ます

  • インストール手順に従います。

  • 完了したら<installation directory>/bin/、PATH変数にを追加します。

これで、cmdでmakeを使用できるようになります。


ディレクトリをPATH変数に設定する方法を教えてください。
午後

3

もう1つの方法は、すでにminGWをインストールしていて、binフォルダーをPath環境変数に追加している場合、「make」の代わりに「mingw32-make」を使用できます。

「make」から「mingw32-make」へのシンボリックリンクを作成したり、ファイルの名前をコピーして変更したりすることもできます。これまでのオプションはお勧めしません。minGWで変更を行うまでは機能します。


「前のオプション」で何を意味するのか指定できますか?
ジョナ

1

私は段階的なアプローチを提案できます。

  1. 訪問GNUwin
  2. セットアッププログラムをダウンロードする
  3. 指示に従って、GNUWinをインストールします。アプリケーションがインストールされるディレクトリに注意する必要があります。(後で必要になります1)
  4. これらの指示に従い、環境変数にmakeを追加します。前に言ったように、今度はアプリケーションがどこにインストールされたかを知る時です。参考:デフォルトのディレクトリはC:\Program Files (x86)\GnuWin32\です。
  5. 次に、PATHを更新して、新しくインストールされたプログラムのbinディレクトリを含めます。パスに追加する典型的な例は次のとおりです。...;C:\Program Files (x86)\GnuWin32\bin

0

コマンドラインエミュレーターcmderを使用する場合に役立つ可能性がある1つの解決策。パッケージインストーラーを選択してインストールできます。最初に、次の行を使用してWindowsコマンドプロンプトに選択的にインストールします。

@"%SystemRoot%\System32\WindowsPowerShell\v1.0\powershell.exe" -NoProfile -InputFormat None -ExecutionPolicy Bypass -Command "iex ((New-Object System.Net.WebClient).DownloadString('https://chocolatey.org/install.ps1'))" && SET "PATH=%PATH%;%ALLUSERSPROFILE%\chocolatey\bin"
refreshenv

chocolateyをインストールしたら、chocoコマンドを使用してmakeをインストールできます。インストールしたら、/ cmder / config / user_aliases.cmdにエイリアスを追加する必要があります。次の行を追加する必要があります。

make="path_to_chocolatey\chocolatey\bin\make.exe" $*

その後、makeはcmder環境で動作します。

弊社のサイトを使用することにより、あなたは弊社のクッキーポリシーおよびプライバシーポリシーを読み、理解したものとみなされます。
Licensed under cc by-sa 3.0 with attribution required.