Trang này mô tả các yêu cầu và bước để cài đặt Bazel trên Windows. Bài viết này cũng bao gồm cách khắc phục sự cố và các cách khác để cài đặt Bazel, chẳng hạn như sử dụng Chocolatey hoặc Scoop.
Cài đặt Bazel
Phần này đề cập đến các điều kiện tiên quyết, thiết lập môi trường và các bước chi tiết trong quá trình cài đặt trên Windows.
Kiểm tra hệ thống
Nên dùng: Windows 10 64 bit, phiên bản 1703 (Bản cập nhật của nhà sáng tạo) trở lên
Cách kiểm tra phiên bản Windows:
- Nhấp vào nút Start (Bắt đầu).
- Nhập
winver
vào hộp tìm kiếm và nhấn Enter. - Bạn sẽ thấy hộp Giới thiệu về Windows cùng với thông tin về phiên bản Windows của mình.
Cài đặt các điều kiện tiên quyết
Tải Bazel xuống
Nên dùng: Sử dụng Bazelisk
Ngoài ra, bạn có thể:
- Tải tệp nhị phân Bazel xuống (
bazel-version-windows-x86_64.exe
) từ GitHub. - Cài đặt Bazel qua Chocolatey
- Cài đặt Bazel qua Scoop
- Tạo Bazel từ nguồn
Thiết lập môi trường
Để dễ dàng truy cập vào Bazel từ lời nhắc lệnh hoặc PowerShell theo mặc định, bạn có thể đổi tên tệp nhị phân Bazel thành bazel.exe
và thêm tệp đó vào các đường dẫn mặc định.
set PATH=%PATH%;path to the Bazel binary
Bạn cũng có thể thay đổi biến môi trường PATH
của hệ thống để biến đó trở thành biến cố định. Hãy xem cách đặt biến môi trường.
Xong
"Thành công: Bạn đã cài đặt Bazel."
Để kiểm tra xem đã cài đặt chính xác chưa, hãy thử chạy:
bazel version
Tiếp theo, bạn có thể xem thêm các mẹo và hướng dẫn tại đây:
- Cài đặt trình biên dịch và thời gian chạy ngôn ngữ
- Khắc phục sự cố
- Các phương pháp hay nhất trên Windows
- Hướng dẫn
Cài đặt trình biên dịch và môi trường thời gian chạy ngôn ngữ
Tuỳ thuộc vào ngôn ngữ bạn muốn tạo, bạn sẽ cần:
-
MSYS2 là một bản phân phối phần mềm và nền tảng xây dựng dành cho Windows. Thư viện này chứa Bash và các công cụ Unix phổ biến (như
grep
,tar
,git
).Bạn sẽ cần MSYS2 để tạo, kiểm thử hoặc chạy các mục tiêu phụ thuộc vào Bash. Thông thường, đây là
genrule
,sh_binary
,sh_test
, nhưng có thể có nhiều hơn (chẳng hạn như quy tắc Starlark). Bazel hiển thị lỗi nếu một mục tiêu bản dựng cần Bash nhưng Bazel không tìm được mục tiêu đó. Các gói MSYS2 phổ biến
Bạn có thể cần các công cụ này để tạo và chạy các mục tiêu phụ thuộc vào Bash. Theo mặc định, MSYS2 không cài đặt các công cụ này, vì vậy, bạn cần cài đặt theo cách thủ công. Các dự án phụ thuộc vào các công cụ Bash trong
PATH
cần thực hiện bước này (ví dụ: TensorFlow).Mở cửa sổ dòng lệnh MSYS2 và chạy lệnh sau:
pacman -S zip unzip patch diffutils git
Không bắt buộc: Nếu bạn muốn sử dụng Bazel từ CMD hoặc Powershell và vẫn có thể sử dụng các công cụ Bash, hãy nhớ thêm
MSYS2_INSTALL_PATH/usr/bin
vào biến môi trườngPATH
.Công cụ xây dựng cho Visual Studio 2019
Bạn sẽ cần mã này để tạo mã C++ trên Windows.
Ngoài ra, bạn cũng có thể sử dụng:
- Công cụ xây dựng Visual C++ 2017 (trở lên) và SDK Windows 10
Bộ phát triển Java SE 11 (JDK) dành cho Windows x64
Bạn sẽ cần công cụ này để tạo mã Java trên Windows.
Cũng được hỗ trợ: Java 8, 9 và 10
Python 3.6 dành cho Windows x86-64
Bạn sẽ cần công cụ này để tạo mã Python trên Windows.
Cũng được hỗ trợ: Python 2.7 trở lên cho Windows x86-64
Khắc phục sự cố
Bazel không tìm thấy Bash hoặc bash.exe
Những nguyên nhân có thể xảy ra:
bạn đã cài đặt MSYS2 không nằm trong đường dẫn cài đặt mặc định
bạn đã cài đặt MSYS2 i686 thay vì MSYS2 x86_64
bạn đã cài đặt MSYS thay vì MSYS2
Giải pháp:
Đảm bảo bạn đã cài đặt MSYS2 x86_64.
Nếu cách này không hiệu quả, hãy làm như sau:
Chuyển đến Trình đơn Start (Bắt đầu) > Settings (Cài đặt).
Tìm chế độ cài đặt "Chỉnh sửa các biến môi trường cho tài khoản của bạn"
Xem danh sách ở trên cùng ("Biến người dùng cho <tên người dùng>") rồi nhấp vào nút "Mới..." bên dưới.
Đối với "Tên biến", hãy nhập
BAZEL_SH
Nhấp vào "Duyệt tệp..."
Chuyển đến thư mục MSYS2, sau đó chuyển đến
usr\bin
bên dưới.Ví dụ: đây có thể là
C:\msys64\usr\bin
trên hệ thống của bạn.Chọn tệp
bash.exe
hoặcbash
rồi nhấp vào OKTrường "Giá trị biến" hiện có đường dẫn đến
bash.exe
. Nhấp vào OK để đóng cửa sổ.Xong.
Nếu bạn mở một cmd.exe hoặc thiết bị đầu cuối PowerShell mới và chạy Bazel ngay bây giờ, thì Bazel sẽ tìm thấy Bash.
Bazel không tìm thấy Visual Studio hoặc Visual C++
Lý do có thể xảy ra:
bạn đã cài đặt nhiều phiên bản Visual Studio
bạn đã cài đặt và xoá nhiều phiên bản Visual Studio
bạn đã cài đặt nhiều phiên bản SDK Windows khác nhau
bạn đã cài đặt Visual Studio không nằm trong đường dẫn cài đặt mặc định
Giải pháp:
Chuyển đến Trình đơn Bắt đầu > Cài đặt.
Tìm chế độ cài đặt "Chỉnh sửa các biến môi trường cho tài khoản của bạn"
Xem danh sách ở trên cùng ("Biến người dùng cho <tên người dùng>") rồi nhấp vào nút "Mới..." bên dưới.
Nhập
BAZEL_VC
cho "Tên biến"Nhấp vào "Browse Directory..." (Duyệt qua thư mục...)
Chuyển đến thư mục
VC
của Visual Studio.Ví dụ: đây có thể là
C:\Program Files (x86)\Microsoft Visual Studio\2019\Community\VC
trên hệ thống của bạn.Chọn thư mục
VC
rồi nhấp vào OKTrường "Giá trị biến" hiện có đường dẫn đến
VC
. Nhấp vào OK để đóng cửa sổ.Xong.
Nếu bạn mở một cmd.exe hoặc thiết bị đầu cuối PowerShell mới và chạy Bazel ngay bây giờ, thì Bazel sẽ tìm thấy Visual C++.
Các cách cài đặt Bazel khác
Sử dụng Chocolatey
Cài đặt trình quản lý gói Chocolatey
Cài đặt gói Bazel:
choco install bazel
Lệnh này sẽ cài đặt phiên bản Bazel mới nhất hiện có và các phần phụ thuộc của lệnh này, chẳng hạn như shell MSYS2. Tuy nhiên, thao tác này sẽ không cài đặt Visual C++.
Hãy xem hướng dẫn cài đặt và bảo trì gói Chocolatey để biết thêm thông tin về gói Chocolatey.
Sử dụng Muỗng
Cài đặt trình quản lý gói Scoop bằng lệnh PowerShell sau:
iex (new-object net.webclient).downloadstring('https://get.scoop.sh')
Cài đặt gói Bazel:
scoop install bazel
Hãy xem hướng dẫn cài đặt và bảo trì gói Scoop để biết thêm thông tin về gói Scoop.
Tạo từ nguồn
Để tạo Bazel từ đầu thay vì cài đặt, hãy xem phần Biên dịch từ nguồn.