การสร้างจากซอร์ส หรือ Python ของเครื่องมือใน MacOS

บทนำ

คู่มือนี้อธิบายวิธีสร้างจากแหล่งข้อมูลหรือเครื่องมือ พร้อมด้วยการสนับสนุนสำหรับ Python ใน MacOS

ยกเว้นในกรณีที่คุณวางแผนที่จะแก้ไขซอร์สโค้ดหรือใช้เครื่องมือแก้โจทย์ของบุคคลที่สามกับ หรือเครื่องมือ เราขอแนะนำให้ติดตั้งแพ็กเกจ

แม้ว่าคำแนะนำเหล่านี้อาจใช้ได้กับตัวแปร MacOS รุ่นอื่นๆ ด้วย แต่เรา ได้ทดสอบคอมพิวเตอร์ที่เป็นไปตามข้อกำหนดต่อไปนี้เท่านั้น

  • MacOS 13.0.1 (Ventura) Intel 64 บิต (x86_64)
  • MacOS 13.0.1 (Ventura) M1 (ARM64)

ข้อกำหนดเบื้องต้น

ส่วนต่อไปนี้จะอธิบายข้อกำหนดเบื้องต้นสำหรับการติดตั้ง OR-Tools

เครื่องมือบรรทัดคำสั่ง Xcode

คุณต้องติดตั้งเครื่องมือบรรทัดคำสั่ง Xcode โดยเปิด เทอร์มินัล ซึ่งอยู่ใน /Applications/Utilities/ แล้วป้อน

xcode-select --install

คลิก "ติดตั้ง" เพื่อดาวน์โหลดและติดตั้งเครื่องมือบรรทัดคำสั่ง Xcode ไม่จำเป็นต้องใช้ ไปยัง "รับ Xcode" จาก App Store หากมีการเชื่อมต่ออินเทอร์เน็ตช้า อาจใช้เวลานานหลายนาที

ตรวจสอบว่าคุณได้ติดตั้งเครื่องมือบรรทัดคำสั่ง Xcode สำเร็จแล้วดังนี้

xcode-select -p

คุณควรจะเห็นสิ่งต่อไปนี้

/Library/Developer/CommandLineTools

เบียร์โฮมเมด

หากต้องการติดตั้งข้อกำหนดเบื้องต้นที่เหลือ เราขอแนะนำให้ติดตั้ง "ไม่มีตัวจัดการแพ็กเกจสำหรับ macOS" หรือที่เรียกว่า โฮมเบรก ในการดำเนินการนี้ ให้เปิดหน้าต่างเทอร์มินัลและป้อนข้อมูลต่อไปนี้

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

วิธียืนยันว่าคุณติดตั้งเบียร์เรียบร้อยแล้ว

brew --version

คุณควรจะเห็นสิ่งต่อไปนี้

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

เครื่องมือ C++

หากต้องการติดตั้งเครื่องมือ C++ ให้เปิดหน้าต่างเทอร์มินัลแล้วป้อนสิ่งต่อไปนี้

brew install cmake wget pkg-config

เครื่องมือ SWIG

หากต้องการติดตั้งเครื่องมือ SWIG ให้เปิดหน้าต่างเทอร์มินัลแล้วป้อนสิ่งต่อไปนี้

brew install swig

Python

คุณต้องติดตั้ง Python 3.8 ขึ้นไป

หากต้องการติดตั้ง Python 3.8+ ให้เปิดหน้าต่างเทอร์มินัลแล้วป้อนสิ่งต่อไปนี้

brew install python
python3 -m pip install -U --user wheel six

จากนั้นยืนยันการติดตั้ง โดยทำดังนี้

python3 --version
python3 -c "import platform; print(platform.architecture()[0])"
python3 -m pip --version

ดาวน์โหลดซอร์สโค้ด

ซอร์สโค้ด OR-Tools มีส่วนที่แตกต่างกัน 2 ส่วน GitHub: stable และ main

สาขา stable ได้รับการทดสอบอย่างละเอียดแล้วและควรจะทำงานได้อย่างดีเยี่ยมในทุกด้าน แพลตฟอร์มที่รองรับได้
สาขา main คือที่การอัปเดตล่าสุดและ ได้รับการปรับปรุงแล้ว เป็นปัจจุบันมากกว่า แต่มีเสถียรภาพน้อยกว่า

ดาวน์โหลดซอร์สโค้ดที่เสถียร

คุณจะรับซอร์สโค้ดที่เสถียรสำหรับ OR-Tools ได้ด้วยวิธีใดวิธีหนึ่งต่อไปนี้

  • โคลนสาขา stable โดยป้อนข้อมูลต่อไปนี้

    git clone https://github.com/google/or-tools
    
  • ดาวน์โหลดรุ่นล่าสุดในรูปแบบไฟล์ที่บีบอัด โดยการคลิก ปุ่ม Clone or download ใน GitHub ภาพปุ่มโคลนหรือปุ่มดาวน์โหลด

ดาวน์โหลดซอร์สโค้ดหลัก

หากต้องการเรียกซอร์สโค้ดจากสาขา main ให้ป้อน

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

ดาวน์โหลดรุ่นก่อนหน้า

คุณจะรับซอร์สโค้ดสำหรับรุ่นก่อนหน้าได้ด้วยวิธีใดวิธีหนึ่งต่อไปนี้

  • ดาวน์โหลดรุ่นก่อนหน้าจากหน้าการเผยแพร่ GitHub
  • สมมติว่าคุณสร้างที่เก็บในเครื่องแล้ว (โดย git clone) คุณสามารถดูรุ่นที่เจาะจงโดยใช้ Git แท็ก ตัวอย่างเช่น ในการใช้งานกับรุ่น v9.10 แทนที่จะเป็น สาขา main ให้ป้อนคำสั่งต่อไปนี้ในที่เก็บในเครื่อง

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

กำหนดค่าบิลด์

ก่อนสร้าง หรือใช้เครื่องมือ คุณจะต้องกำหนดค่าระบบบิลด์ CMake โปรแกรมสร้าง

เปิดเทอร์มินัลและไปยังไดเรกทอรีที่คุณแตกไฟล์ จากนั้นป้อน

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

ดู สร้างเอกสารประกอบ เพื่อดูรายละเอียด

การใช้ SCIP

ตั้งแต่เวอร์ชัน 7.8 เป็นต้นมา มีการผสานรวม SCIP แล้ว คุณจึงไม่ต้องติดตั้งด้วยตนเอง

การใช้คุโรบิ

มีการผสานรวม Gurobi ล่วงหน้าแล้ว เมื่อจำเป็น ในระหว่างรันไทม์ OR-Tools จะค้นหา ไลบรารีที่ใช้ร่วมกันของ Gurobi ในเส้นทางการติดตั้งเริ่มต้นของตัวติดตั้ง Gurobi ใน MAC OS X และ Windows หรือใช้ตัวแปรสภาพแวดล้อม GUROBI_HOME

การใช้เครื่องมือแก้โจทย์ MIP ของบุคคลที่สาม (ไม่บังคับ)

คุณยังสามารถใช้เครื่องมือ OR กับ MIP ของบุคคลที่สามที่ไม่บังคับดังต่อไปนี้ โปรแกรมแก้โจทย์ที่ปิดการสนับสนุนไว้โดยค่าเริ่มต้น

โปรดดูที่ เอกสารนี้ เพื่อดูรายละเอียด

สร้างซอร์สโค้ด

หากต้องการสร้างซอร์สโค้ด ให้เปิดเทอร์มินัลและไปยังไดเรกทอรีที่ ที่คุณแยกไฟล์แล้ว จากนั้นป้อนคำสั่งต่อไปนี้เพื่อคอมไพล์ OR-Tools

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

ดู สร้างเอกสารประกอบ เพื่อดูรายละเอียด

ทดสอบซอร์สโค้ด

คุณสามารถตรวจสอบว่าทุกอย่างทำงานได้อย่างถูกต้องโดยป้อนข้อมูลต่อไปนี้

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

การดำเนินการนี้เป็นการแสดงตัวอย่างสำหรับ OR-Tools หากตัวอย่างทั้งหมดทํางาน เรียบร้อยแล้ว คุณก็พร้อมที่จะ เริ่มต้นใช้งาน OR-Tools

การล้างไฟล์บิลด์

หากคุณจำเป็นต้องติดตั้ง OR-Tools อีกครั้ง ให้ใช้คำสั่งต่อไปนี้

rm -r build

จะนำทรัพยากร Dependency ที่คอมไพล์แล้วออกทั้งหมด ซึ่งอาจเป็นประโยชน์ในการรีเซ็ตให้อยู่ในสถานะปกติ

จากนั้นป้อนคำสั่งอีกครั้ง

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

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

การติดตั้ง OR-Tools ในระบบปฏิบัติการของคุณ

คุณสามารถติดตั้ง OR-Tools สำหรับ Python ในระบบปฏิบัติการโดยป้อนข้อมูลต่อไปนี้

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