בנייה ממקור OR-כלים C++ ב-Windows

מבוא

המדריך הזה מסביר איך לפתח מכלי OR-כלים מהמקור, עם תמיכה ב-C++, ב-Windows.

אלא אם אתם מתכננים לשנות את קוד המקור או להשתמש בכלי של צד שלישי לפתרון באמצעות OR-Tools, מומלץ התקנת החבילה.

ההוראות האלה יכולות לפעול גם בגרסאות אחרות של Windows, אבל בדקנו אותן רק במכונות שעומדות בדרישות הבאות:

Windows 10 בגרסת 64 ביט (x86_64) עם:

  • Microsoft Visual Studio Enterprise 2022
  • גרסת טרום-השקה 2 ואילך של Microsoft Visual Studio Community Studio 2022

דרישות מוקדמות

הקטעים הבאים מתארים את הדרישות המוקדמות להתקנת OR-כלים.

Visual Studio

כדי ליצור ולהפעיל כלי OR-כלים ב-Windows, עליכם להתקין במחשב את Visual Studio 2022 ואילך עם ערכת הכלים של C++ ל-Visual Studio.

פרסמנו פרטים נוספים כאן.

כדי ליצור תוכניות OR-Tools משורת הפקודה, חובה להשתמש בשורת הפקודה x64 Native Tools (לא בשורת הפקודה למפתחים).

פרסמנו פרטים נוספים כאן.

Git

Git, שאפשר להוריד בכתובת https://git-scm.com/.

CMake

CMake (>= 3.18), שאותה אפשר להוריד מהכתובת https://www.cmake.org/download. כשמתקינים את CMake, יש לבחור באפשרות ל-cmake נגיש באמצעות שורת הפקודה.

איך מורידים את קוד המקור

יש שתי הסתעפויות נפרדות לקוד המקור של OR-Tools ב-GitHub: stable ו-main.

ההסתעפות stable נבדקה באופן יסודי, והיא אמורה לפעול בצורה חלקה בכל הפלטפורמות הנתמכות.
ההסתעפות main היא המקום שבו הוחלו העדכונים והשיפורים האחרונים. הוא עדכני יותר אבל פחות יציב.

הורדת קוד המקור היציב

ניתן לקבל את קוד המקור היציב עבור כלי OR באחת מהדרכים הבאות:

  • משכפלים את ההסתעפות 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. לדוגמה, כדי לעבוד עם גרסה 9.9 במקום עם ההסתעפות main, מזינים את הפקודות הבאות במאגר המקומי:

    git fetch --all --tags --prune
    git checkout tags/v9.9 -v v9.9
    

מגדירים את ה-build

לפני שיוצרים כלי OR-Tools, צריך להגדיר את מחולל המערכת של CMake build.

פותחים טרמינל ומנווטים לספרייה שממנה חילצתם את הקבצים. בשלב הבא מזינים:

cmake -S . -B build -DBUILD_DEPS=ON

לפרטים נוספים, אפשר לעיין במסמכי התיעוד של CMake.

שימוש ב-SCIP

החל מגרסה 7.8, SCIP משולב כעת כך שלא יהיה צורך להתקין אותו באופן ידני.

שימוש ב-Gurobi

Gurobi משולב מראש. בעת הצורך, בזמן הריצה, OR-Tools יחפש את הספרייה המשותפת Gurobi בנתיב ההתקנה המוגדר כברירת מחדל של מנהלי ההתקנה של Gurobi ב-MAC OS X וב-Windows, או באמצעות משתנה הסביבה GUROBI_HOME.

שימוש בכלי אופציונלי של צד שלישי לפתרון MIP

תוכלו גם להשתמש בכלי OR-Tools עם כל אחד מפותרי ה-MIP האופציונליים הבאים של צד שלישי שהתמיכה בהם מושבתת כברירת מחדל:

לפרטים נוספים, קראו את התיעוד הזה.

יצירת קוד המקור

כדי ליצור את קוד המקור, פותחים טרמינל ועוברים לספרייה שממנה חילצתם את הקבצים. לאחר מכן מזינים את הפקודה הבאה כדי להדר את OR-Tools:

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

לפרטים נוספים, אפשר לעיין במסמכי התיעוד של CMake.

בדיקת קוד המקור

כדי לבדוק שהכול פועל כמו שצריך על ידי הזנת:

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

פעולה זו מפעילה דוגמאות עבור OR-Tools. אם הפעלתם את כל הדוגמאות, תוכלו להתחיל להשתמש ב-OR-Tools.

ניקוי קובצי ה-build

אם תצטרכו להתקין מחדש את OR-Tools, הפקודה:

rm -r build

המערכת תסיר את כל יחסי התלות המורכבים. אפשרות זו יכולה להיות שימושית אם אתם רוצים לאפס את המכשיר למצב נקי.

לאחר מכן, מזינים מחדש את הפקודות:

cmake -S . -B build -DBUILD_DEPS=ON

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

התקנת OR-Tools במערכת ההפעלה שלך

כדי להתקין את האפשרות OR-Tools עבור C++ במערכת ההפעלה שלכם, מזינים:

cmake --build build --config Release --target INSTALL -v