Sử dụng make từ Windows PowerShell


15

Trong Linux, các nguồn dự án thường đi kèm với Makefile. Makefiles chứa các chỉ thị để xây dựng các dự án này bằng cách sử dụng lệnh make. Tôi hiện đang bị buộc phải sử dụng Windows và để có thể sử dụng HĐH này, tôi đã cấu hình và cải tiến "PowerShell" (bằng cách cài đặt một số chương trình bổ sung, chẳng hạn như vim, hoặc svnmột mô-đun được gọi PSReadLine, viết hồ sơ PowerShell, v.v.).

Tuy nhiên tôi không thể tìm thấy liệu có thể cài đặt maketrong PowerShell hay không. Tôi biết rằng tôi cũng sẽ phải cài đặt các chương trình makesẽ gọi, chẳng hạn như, g++hoặc pdflatex, nhưng sẽ được sử dụng sau. Bây giờ tôi muốn làm cho makechính nó làm việc ở nơi đầu tiên.

Một chút nghiên cứu đã tiết lộ hai khả năng:

  1. Câu trả lời được chấp nhận cho câu hỏi rất giống nhau này: Cách sử dụng tệp tạo tệp trên Windows , gợi ý sử dụng Cygwin. Đó là một khả năng, Cygwin rất tuyệt, nhưng vì tôi đã quyết định cho PowerShell một cơ hội nên tôi muốn biết liệu điều này cũng có thể xảy ra với PowerShell chứ không phải Cygwin . Do đó, câu hỏi này không phải là một bản sao, vì câu hỏi khác là về một số khả năng sử dụng maketrong Windows, trong khi tôi đặc biệt yêu cầu PowerShell.

  2. Tồn tại một makebản sao cho bản sao PowerShell được gọi là poshmake , nhưng cú pháp của các tệp Poshmake khác với Makefiles thông thường, đây là điều không nên. Tôi muốn một sự thật make, vì việc duy trì hai phiên bản Makefiles cho tất cả các dự án tôi đang nằm xung quanh không phải là một lựa chọn.

Vì vậy: có thể cài đặt GNU make, điều này sẽ hiểu cú pháp của các Makefiles điển hình, để tôi có thể gọi maketừ trong PowerShell ?


Câu hỏi và trả lời liên quan chặt chẽ về Stack Overflow: Làm thế nào để cài đặt và sử dụng hệ thống kiếm tiền trên Windows trong Windows?
Palec

Câu trả lời:


12

Hãy xem "Make for Windows" . Sau khi cài đặt, bạn chỉ cần gọi "make" từ CMD hoặc PowerShell.


2
À vâng, tôi đã tìm thấy điều đó, nhưng đã loại bỏ khả năng đó bởi vì bản cập nhật cuối cùng cho dự án đó là khoảng 8 năm trước. Nhưng bạn nói đúng - Tôi đoán tôi sẽ thử khi tôi đi làm về và báo cáo lại :)
Malte Skoruppa

Trên thực tế, tôi chỉ nhận thấy rằng maketrong bản cài đặt Ubuntu 14.04 hiện đại của tôi cũng là phiên bản 3.81 từ năm 2006. Tôi đoán sau đó, nó thực sự ổn định và có tất cả các tính năng cần thiết, và vì vậy đơn giản là không cần cập nhật thêm;)
Malte Skoruppa

2
Nó hoạt động, mặc dù PowerShell không maketự động tìm thấy lệnh. Tôi đã phải thiết lập một makebí danh chỉ ra thực make.exethi thực tế trong hồ sơ PowerShell của mình. Cảm ơn!
Malte Skoruppa

3
notepad $profile(hoặc chỉnh sửa hồ sơ PowerShell của bạn theo cách bạn muốn) và thêm new-item alias:make -value 'C:\Program Files (x86)\GnuWin32\bin\make.exe'- đảm bảo rằng đó là đường dẫn đúng tới make.exe của bạn
alexanderbird

5
Bạn chỉ có thể thêm C:\Program Files (x86)\GnuWin32\binvào Đường dẫn của bạn.
forzagreen

Khi sử dụng trang web của chúng tôi, bạn xác nhận rằng bạn đã đọc và hiểu Chính sách cookieChính sách bảo mật của chúng tôi.
Licensed under cc by-sa 3.0 with attribution required.