Xây dựng từ nguồn OR-Tools Java trên MacOS

Giới thiệu

Hướng dẫn này giải thích cách tạo bản dựng từ công cụ OR-nguồn có hỗ trợ Java, trên MacOS.

Trừ phi bạn định sửa đổi mã nguồn hoặc dùng một trình giải của bên thứ ba bằng OR-Tools, bạn nên sử dụng thao tác cài đặt gói.

Mặc dù những hướng dẫn này cũng có thể áp dụng cho các biến thể MacOS khác, nhưng chúng tôi chỉ thử nghiệm chúng trên các máy đáp ứng các yêu cầu sau:

  • MacOS 13.0.1 (Ventura) Intel 64 bit (x86_64)
  • MacOS 13.0.1 (Ventura) M1 (arm64)

Điều kiện tiên quyết

Các phần sau đây mô tả các điều kiện tiên quyết để cài đặt OR-Tools.

Công cụ dòng lệnh Xcode

Bạn phải cài đặt Công cụ dòng lệnh Xcode. Để thực hiện việc này, hãy mở Cửa sổ dòng lệnh, có ở /Applications/Utilities/ rồi nhập:

xcode-select --install

Nhấp vào "Cài đặt" để tải xuống và cài đặt Công cụ dòng lệnh Xcode. Bạn không cần để "Tải Xcode" từ App Store. Nếu bạn có kết nối Internet chậm, có thể mất nhiều phút.

Xác minh rằng bạn đã cài đặt thành công Công cụ dòng lệnh Xcode:

xcode-select -p

Bạn sẽ thấy:

/Library/Developer/CommandLineTools

Tiếng Homebrew

Để cài đặt các điều kiện tiên quyết còn lại, trước tiên bạn nên cài đặt "thiếu trình quản lý gói cho macOS" còn được gọi là Homebrew. Để thực hiện việc này, hãy mở cửa sổ dòng lệnh và nhập:

/bin/bash -c "$(curl -fsSL https://raw.githubusercontent.com/Homebrew/install/HEAD/install.sh)"
brew update

Cách xác minh bạn đã cài đặt thành công brew:

brew --version

Bạn sẽ thấy:

Homebrew 1.6.9-8-g25542d7
Homebrew/homebrew-core (git revision 0e0c84; last commit 2018-06-20)

Công cụ C++

Để cài đặt công cụ C++, hãy mở cửa sổ dòng lệnh và nhập:

brew install cmake wget pkg-config

Công cụ SWIG

Để cài đặt công cụ SWIG, hãy mở cửa sổ dòng lệnh rồi nhập:

brew install swig

JDK Java

Bạn phải cài đặt Java JDK 8.0 trở lên.

Khi đã cài đặt Homebrew, bạn có thể cài đặt openjdk bằng cách mở một cửa sổ dòng lệnh và nhập:

brew install openjdk
sudo ln -sfn /usr/local/opt/openjdk/libexec/openjdk.jdk /Library/Java/JavaVirtualMachines/openjdk.jdk

Sau đó, bạn cần xuất biến JAVA_HOME:

export JAVA_HOME=/Library/Java/JavaVirtualMachines/openjdk.jdk

Maven

Bạn phải cài đặt Maven.

Khi đã cài đặt Homebrew, bạn có thể cài đặt maven bằng cách mở một cửa sổ dòng lệnh và nhập:

brew install maven

Bạn có thể kiểm thử Maven đã được cài đặt chính xác và có thể tìm thấy java bằng cách sau :

mvn -v

Tải mã nguồn xuống

Có hai nhánh riêng biệt của mã nguồn OR-Tools trên GitHub: stablemain.

Nhánh stable đã được kiểm thử kỹ lưỡng và sẽ hoạt động hoàn hảo trên tất cả nền tảng được hỗ trợ.
Nhánh main là nơi chứa các nội dung cập nhật mới nhất và đã được cải tiến; hệ thống đó hiện hành hơn nhưng kém ổn định hơn.

Tải mã nguồn ổn định xuống

Bạn có thể lấy mã nguồn ổn định cho OR-Tools theo một trong các cách sau:

  • Sao chép nhánh stable bằng cách nhập:

    git clone https://github.com/google/or-tools
    
  • Tải bản phát hành mới nhất xuống trong một tệp nén, bằng cách nhấp vào Clone or download trong GitHub. hình ảnh nút sao chép hoặc tải xuống

Tải mã nguồn chính xuống

Để truy xuất mã nguồn từ nhánh main, hãy nhập:

git clone -b main https://github.com/google/or-tools

Tải bản phát hành trước xuống

Bạn có thể lấy mã nguồn cho bản phát hành trước theo một trong các cách sau đây:

  • Tải bản phát hành trước xuống qua trang phát hành GitHub.
  • Giả sử bạn đã tạo một kho lưu trữ cục bộ (bằng git clone), bạn có thể xem một bản phát hành cụ thể bằng cách sử dụng Git thẻ. Ví dụ: để làm việc với bản phát hành v9.10 thay vì Nhánh main, hãy nhập các lệnh sau vào kho lưu trữ cục bộ:

    git fetch --all --tags --prune
    git checkout tags/v9.10 -b v9.10
    

Định cấu hình bản dựng

Trước khi xây dựng OR-Tools, bạn sẽ cần định cấu hình hệ thống xây dựng CMake .

Mở cửa sổ dòng lệnh rồi chuyển đến thư mục mà bạn đã giải nén tệp. Sau đó nhập:

cmake -S . -B build -DBUILD_DEPS=ON -DBUILD_JAVA=ON

Xem Tài liệu CMake để biết thông tin chi tiết.

Sử dụng tính năng SCIP

Kể từ phiên bản 7.8, SCIP hiện đã được tích hợp nên bạn sẽ không phải cài đặt theo cách thủ công.

Sử dụng Gurobi

Gurobi hiện đã được tích hợp sẵn. Khi cần, trong thời gian chạy, OR-Tools sẽ tìm kiếm thư viện đã chia sẻ Gurobi trong đường dẫn cài đặt mặc định của trình cài đặt Gurobi trên MAC OS X và Windows hoặc bằng cách sử dụng biến môi trường GUROBI_HOME.

Dùng trình giải quyết MIP (không bắt buộc) của bên thứ ba

Bạn cũng có thể sử dụng OR-Tools với bất kỳ MIP nào không bắt buộc của bên thứ ba sau đây trình giải có tính năng hỗ trợ bị tắt theo mặc định:

Vui lòng tìm hiểu tài liệu này để biết thông tin chi tiết.

Tạo mã nguồn

Để tạo mã nguồn, hãy mở một thiết bị đầu cuối và chuyển đến thư mục chứa bạn đã giải nén các tệp đó. Sau đó nhập lệnh sau để biên dịch OR-Tools:

cmake --build build --config Release --target ALL_BUILD -j -v

Xem Tài liệu CMake để biết thông tin chi tiết.

Kiểm thử mã nguồn

Bạn có thể kiểm tra xem mọi thứ có đang chạy đúng cách hay không bằng cách nhập:

cmake --build build --config Release --target RUN_TESTS -v

Thao tác này sẽ chạy các ví dụ về Công cụ OR. Nếu tất cả các ví dụ trên chạy thành công, bạn đã sẵn sàng bắt đầu sử dụng OR-Tools.

Xoá tệp bản dựng

Nếu bạn cần cài đặt lại công cụ OR-Tools, hãy dùng lệnh:

rm -r build

sẽ xoá mọi phần phụ thuộc đã biên dịch. Điều này có thể hữu ích khi đặt lại về trạng thái mới.

Sau đó, hãy nhập lại các lệnh:

cmake -S . -B build -DBUILD_DEPS=ON -DBUILD_JAVA=ON

cmake --build build --config Release --target ALL_BUILD -j -v

Cài đặt OR-Tools trên hệ điều hành của bạn

Bạn có thể cài đặt OR-Tools dành cho Java trên hệ điều hành của mình bằng cách nhập:

cmake --build build --config Release --target install -v