เพิ่ม Firebase ไปยังโปรเจ็กต์ C++

เพิ่มประสิทธิภาพเกม C++ ด้วย Firebase C++ SDK ซึ่งมีอินเทอร์เฟซ C++ บน Firebase SDK

เข้าถึง Firebase ทั้งหมดจากโค้ด C++ โดยไม่ต้องเขียนโค้ดแบบเนทีฟของแพลตฟอร์ม นอกจากนี้ Firebase SDK ยังแปลสำนวนภาษาเฉพาะหลายๆ ภาษาที่ Firebase ใช้ ให้เป็นอินเทอร์เฟซที่นักพัฒนา C++ คุ้นเคยมากขึ้นอีกด้วย

ดูข้อมูลเพิ่มเติมเกี่ยวกับการเพิ่มประสิทธิภาพเกมด้วย Firebase ได้ที่หน้าเกมใน Firebase

เพิ่ม Firebase ลงในโปรเจ็กต์ C++ แล้วใช่ไหม ตรวจสอบว่าคุณใช้ Firebase C++ SDK เวอร์ชันล่าสุด


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

  • ติดตั้งเครื่องมือแก้ไขหรือ IDE ที่ต้องการ เช่น Android Studio, IntelliJ หรือ VS Code

  • รับ Android SDK

  • ตรวจสอบว่าโปรเจ็กต์เป็นไปตามข้อกำหนดต่อไปนี้

  • ตั้งค่าอุปกรณ์จริงหรือใช้โปรแกรมจำลองเพื่อเรียกใช้แอป

    • โปรแกรมจำลองต้องใช้รูปภาพโปรแกรมจำลองกับ Google Play

    • สำหรับไลบรารี C++ บางรายการ อุปกรณ์ไคลเอ็นต์ต้องมีบริการ Google Play โปรดดูรายการในหน้านี้

  • ลงชื่อเข้าใช้ Firebase โดยใช้บัญชี Google

ขั้นตอนที่ 2: สร้างโปรเจ็กต์ Firebase

ก่อนที่จะเพิ่ม Firebase ไปยังโปรเจ็กต์ C++ ได้ คุณต้องสร้างโปรเจ็กต์ Firebase เพื่อเชื่อมต่อกับโปรเจ็กต์ C++ ไปที่หัวข้อทําความเข้าใจโปรเจ็กต์ Firebase เพื่อดูข้อมูลเพิ่มเติมเกี่ยวกับโปรเจ็กต์ Firebase

ขั้นตอนที่ 3: ลงทะเบียนแอปกับ Firebase

หากต้องการใช้ Firebase ในแอป Android คุณต้องลงทะเบียนแอปกับโปรเจ็กต์ Firebase การลงทะเบียนแอปมักเรียกว่า "การเพิ่ม" แอปลงในโปรเจ็กต์

  1. ไปที่คอนโซล Firebase

  2. ตรงกลางหน้าภาพรวมโปรเจ็กต์ ให้คลิกไอคอน Android () หรือเพิ่มแอปเพื่อเปิดเวิร์กโฟลว์การตั้งค่า

  3. ป้อนชื่อแพ็กเกจของแอปในช่องชื่อแพ็กเกจ Android

  4. (ไม่บังคับ) ป้อนข้อมูลอื่นๆ ของแอป ได้แก่ชื่อเล่นของแอปและใบรับรองการแก้ไขข้อบกพร่อง SHA-1

  5. คลิกลงทะเบียนแอป

ขั้นตอนที่ 4: เพิ่มไฟล์การกําหนดค่า Firebase

  1. คลิกดาวน์โหลด google-services.json เพื่อรับไฟล์การกําหนดค่า Firebase สำหรับ Android

  2. เปิดโปรเจ็กต์ C++ ใน IDE แล้วเพิ่มไฟล์การกําหนดค่าลงในโปรเจ็กต์ โดยทําดังนี้

  3. (รุ่น Gradle เท่านั้น) หากต้องการเปิดใช้บริการ Firebase ในโปรเจ็กต์ C++ ให้เพิ่มปลั๊กอิน google-services ลงในไฟล์ build.gradle ระดับบนสุด

    1. เพิ่มกฎเพื่อรวมปลั๊กอิน Gradle ของบริการ Google ตรวจสอบว่าคุณมีที่เก็บ Maven ของ Google ด้วย

        buildscript {
      
          repositories {
            // Check that you have the following line (if not, add it):
            google()  // Google's Maven repository
          }
      
          dependencies {
            // ...
      
            // Add the following lines:
            classpath 'com.google.gms:google-services:4.4.2'  // Google Services plugin
            implementation 'com.google.android.gms:18.5.0'
          }
        }
      
        allprojects {
          // ...
      
          repositories {
            // Check that you have the following line (if not, add it):
            google()  // Google's Maven repository
            // ...
          }
        }
      
    2. ใช้ปลั๊กอิน Gradle ของบริการของ Google โดยทำดังนี้

        apply plugin: 'com.android.application'
        // Add the following line:
        apply plugin: 'com.google.gms.google-services'  // Google Services plugin
      
        android {
          // ...
        }
      
  4. คุณตั้งค่างานในคอนโซล Firebase เสร็จแล้ว ดำเนินการต่อเพื่อเพิ่ม Firebase C++ SDK ด้านล่าง

ขั้นตอนที่ 5: เพิ่ม Firebase C++ SDK

ขั้นตอนในส่วนนี้เป็นตัวอย่างวิธีเพิ่มผลิตภัณฑ์ Firebase ที่รองรับลงในโปรเจ็กต์ Firebase C++

  1. ดาวน์โหลด Firebase C++ SDK แล้วแตกไฟล์ SDK ไว้ที่ใดก็ได้ที่คุณสะดวก

    Firebase C++ SDK ไม่ได้เจาะจงแพลตฟอร์ม แต่มีไลบรารีเฉพาะแพลตฟอร์ม

  2. ระบุตำแหน่งของ SDK ที่แตกแล้วในไฟล์ gradle.properties ของโปรเจ็กต์ ดังนี้

    systemProp.firebase_cpp_sdk.dir=full-path-to-SDK
  3. เพิ่มเนื้อหาต่อไปนี้ลงในไฟล์ settings.gradle ของโปรเจ็กต์

    def firebase_cpp_sdk_dir = System.getProperty('firebase_cpp_sdk.dir')
    
    gradle.ext.firebase_cpp_sdk_dir = "$firebase_cpp_sdk_dir"
    includeBuild "$firebase_cpp_sdk_dir"
  4. เพิ่มเนื้อหาต่อไปนี้ลงในไฟล์ Gradle ระดับโมดูลหรือระดับแอป (มักจะเป็น app/build.gradle)
    ระบุทรัพยากร Dependency ของไลบรารีสำหรับผลิตภัณฑ์ Firebase ที่ต้องการใช้ในแอป

    เปิดใช้ Analytics

    android.defaultConfig.externalNativeBuild.cmake {
    arguments "-DFIREBASE_CPP_SDK_DIR=$gradle.firebase_cpp_sdk_dir"
    }
    
    # Add the dependencies for the Firebase products you want to use in your app
    # For example, to use Analytics, Firebase Authentication, and Firebase Realtime Database
    apply from: "$gradle.firebase_cpp_sdk_dir/Android/firebase_dependencies.gradle"
    firebaseCpp.dependencies {
      analytics
      auth
      database
    }

    ไม่ได้เปิดใช้ Analytics

    android.defaultConfig.externalNativeBuild.cmake {
    arguments "-DFIREBASE_CPP_SDK_DIR=$gradle.firebase_cpp_sdk_dir"
    }
    
    # Add the dependencies for the Firebase products you want to use in your app
    # For example, to use Firebase Authentication and Firebase Realtime Database
    apply from: "$gradle.firebase_cpp_sdk_dir/Android/firebase_dependencies.gradle"
    firebaseCpp.dependencies {
      auth
      database
    }
  5. เพิ่มเนื้อหาต่อไปนี้ลงในไฟล์ CMakeLists.txt ของโปรเจ็กต์
    รวมไลบรารีของผลิตภัณฑ์ Firebase ที่ต้องการใช้ในแอป

    เปิดใช้อยู่ Analytics รายการ

    # Add Firebase libraries to the target using the function from the SDK.
    add_subdirectory(${FIREBASE_CPP_SDK_DIR} bin/ EXCLUDE_FROM_ALL)
    
    # The Firebase C++ library `firebase_app` is required,
    # and it must always be listed last.
    
    # Add the Firebase SDKs for the products you want to use in your app
    # For example, to use Analytics, Firebase Authentication, and Firebase Realtime Database
    set(firebase_libs
      firebase_analytics
      firebase_auth
      firebase_database
      firebase_app
    )
    target_link_libraries(${target_name} "${firebase_libs}")

    ไม่ได้เปิดใช้ Analytics

    # Add Firebase libraries to the target using the function from the SDK.
    add_subdirectory(${FIREBASE_CPP_SDK_DIR} bin/ EXCLUDE_FROM_ALL)
    
    # The Firebase C++ library `firebase_app` is required,
    # and it must always be listed last.
    
    # Add the Firebase SDKs for the products you want to use in your app
    # For example, to use Firebase Authentication and Firebase Realtime Database
    set(firebase_libs
      firebase_auth
      firebase_database
      firebase_app
    )
    target_link_libraries(${target_name} "${firebase_libs}")
  6. ซิงค์แอปเพื่อให้ทรัพยากร Dependency ทั้งหมดมีเวอร์ชันที่จำเป็น

  7. หากคุณเพิ่ม Analytics ให้เรียกใช้แอปเพื่อส่งการยืนยันไปยัง Firebase ว่าคุณผสานรวม Firebase เรียบร้อยแล้ว หรือจะข้ามขั้นตอนการยืนยันก็ได้

    บันทึกของอุปกรณ์จะแสดงการยืนยัน Firebase ที่การเริ่มต้นเสร็จสมบูรณ์แล้ว หากคุณเรียกใช้แอปในโปรแกรมจําลองที่มีสิทธิ์เข้าถึงเครือข่าย คอนโซล Firebase จะแจ้งว่าการเชื่อมต่อแอปเสร็จสมบูรณ์

เรียบร้อยแล้ว แอป C++ ของคุณได้รับการลงทะเบียนและกําหนดค่าให้ใช้บริการ Firebase แล้ว

ไลบรารีที่ใช้ได้

ดูข้อมูลเพิ่มเติมเกี่ยวกับไลบรารี Firebase C++ ในเอกสารอ้างอิงและในรุ่น SDK แบบโอเพนซอร์สของเราใน GitHub

ไลบรารีที่ใช้ได้สำหรับ Android (โดยใช้ CMake)

โปรดทราบว่าไลบรารี C++ สําหรับแพลตฟอร์ม Apple จะแสดงอยู่ในหน้าการตั้งค่าเวอร์ชันแพลตฟอร์ม Apple (iOS+)

ผลิตภัณฑ์ Firebase ข้อมูลอ้างอิงไลบรารี
(firebaseCpp.dependencies
สำหรับไฟล์ build.gradle)
การอ้างอิงคลัง
(firebase_libs
สำหรับไฟล์ CMakeLists.txt)
AdMob admob firebase_admob
(ต้องระบุ) firebase_analytics
(ต้องระบุ) firebase_app
Analytics analytics firebase_analytics
(ต้องระบุ) firebase_app
App Check appCheck firebase_app_check
(ต้องระบุ) firebase_app
Authentication auth firebase_auth
(ต้องระบุ) firebase_app
Cloud Firestore firestore firebase_firestore
(ต้องระบุ) firebase_auth
(ต้องระบุ) firebase_app
Cloud Functions functions firebase_functions
(ต้องระบุ) firebase_app
Cloud Messaging messaging firebase_messaging
(แนะนำ) firebase_analytics
(ต้องระบุ) firebase_app
Cloud Storage storage firebase_storage
(ต้องระบุ) firebase_app
Dynamic Links dynamicLinks firebase_dynamic_links
(แนะนำ) firebase_analytics
(ต้องระบุ) firebase_app
Realtime Database database firebase_database
(ต้องระบุ) firebase_app
Remote Config remoteConfig firebase_remote_config
(แนะนำ) firebase_analytics
(ต้องระบุ) firebase_app

ข้อมูลเพิ่มเติมสำหรับการตั้งค่าอุปกรณ์เคลื่อนที่

ดูรายงานข้อขัดข้องของ NDK

Firebase Crashlytics รองรับการรายงานข้อขัดข้องสำหรับแอปที่ใช้ไลบรารีแบบเนทีฟของ Android ดูข้อมูลเพิ่มเติมได้ที่รับรายงานข้อขัดข้องของ Android NDK

ระบบการบิลด์ที่กำหนดเอง

Firebase มีสคริปต์ generate_xml_from_google_services_json.py ที่จะแปลง google-services.json เป็นทรัพยากร .xml ซึ่งคุณสามารถรวมไว้ในโปรเจ็กต์ได้ สคริปต์นี้จะใช้การเปลี่ยนรูปแบบเดียวกับที่ปลั๊กอิน Gradle ของ Google Play Services ดำเนินการเมื่อสร้างแอปพลิเคชัน Android

หากคุณไม่ได้สร้างโดยใช้ Gradle (เช่น คุณใช้ ndk-build, makefile, Visual Studio ฯลฯ) คุณสามารถใช้สคริปต์นี้เพื่อสร้างทรัพยากรสตริงของ Android โดยอัตโนมัติ

ProGuard

ระบบบิลด์ของ Android จำนวนมากใช้ ProGuard สำหรับบิลด์ในโหมดเผยแพร่เพื่อลดขนาดแอปพลิเคชันและปกป้องซอร์สโค้ดของ Java

หากใช้ ProGuard คุณจะต้องเพิ่มไฟล์ใน libs/android/*.pro ที่สอดคล้องกับไลบรารี Firebase C++ ที่ใช้ในการกำหนดค่า ProGuard

เช่น หากใช้ Google Analytics ใน Gradle ไฟล์ build.gradle จะมีลักษณะดังนี้

android {
  // ...
  buildTypes {
    release {
      minifyEnabled true
      proguardFile getDefaultProguardFile('your-project-proguard-config.txt')
      proguardFile file(project.ext.your_local_firebase_sdk_dir + "/libs/android/app.pro")
      proguardFile file(project.ext.your_local_firebase_sdk_dir + "/libs/android/analytics.pro")
      // ...  and so on, for each Firebase C++ library that you're using
    }
  }
}

ข้อกำหนดของบริการ Google Play

ไลบรารี Firebase C++ ส่วนใหญ่กำหนดให้ต้องมีบริการ Google Play ในอุปกรณ์ Android ของลูกค้า หากไลบรารี Firebase C++ แสดงผลเป็น kInitResultFailedMissingDependency ในการเริ่มต้น แสดงว่าบริการ Google Play ไม่พร้อมใช้งานในอุปกรณ์ไคลเอ็นต์ (ซึ่งหมายความว่าต้องอัปเดต กลับมาเปิดใช้งาน แก้ไขสิทธิ์ ฯลฯ) คุณใช้ไลบรารี Firebase ไม่ได้จนกว่าจะแก้ไขสถานการณ์ในอุปกรณ์ไคลเอ็นต์

คุณสามารถดูสาเหตุที่บริการ Google Play ไม่พร้อมใช้งานในอุปกรณ์ไคลเอ็นต์ (และพยายามแก้ไข) โดยใช้ฟังก์ชันใน google_play_services/availability.h

ตารางต่อไปนี้แสดงให้เห็นว่าต้องใช้บริการ Google Play ในอุปกรณ์ของไคลเอ็นต์สำหรับผลิตภัณฑ์ Firebase ที่รองรับแต่ละรายการหรือไม่

ไลบรารี Firebase C++ ต้องใช้บริการ Google Play ในอุปกรณ์ไคลเอ็นต์ไหม
AdMob ไม่จําเป็น (ปกติ)
Analytics ไม่จำเป็น
Authentication ต้องระบุ
Cloud Firestore ต้องระบุ
Cloud Functions ต้องระบุ
Cloud Messaging ต้องระบุ
Cloud Storage ต้องระบุ
Dynamic Links ต้องระบุ
Realtime Database ต้องระบุ
Remote Config ต้องระบุ

AdMob และบริการ Google Play

Google Mobile Ads SDK สําหรับ Android เวอร์ชันส่วนใหญ่ทํางานได้อย่างถูกต้องแม้ไม่มีบริการ Google Play ในอุปกรณ์ไคลเอ็นต์ อย่างไรก็ตาม หากคุณใช้com.google.android.gms:play-services-ads-lite Dependency แทน com.google.firebase:firebase-ads Dependency มาตรฐานที่ระบุไว้ข้างต้น คุณจำเป็นต้องใช้บริการ Google Play

การจัดเตรียมค่าเริ่มต้น AdMob จะแสดงผลเป็น kInitResultFailedMissingDependency เท่านั้น เมื่อทั้ง 2 เงื่อนไขต่อไปนี้เป็นจริง

  • บริการ Google Play ไม่พร้อมใช้งานในอุปกรณ์ไคลเอ็นต์
  • คุณกำลังใช้ com.google.android.gms:play-services-ads-lite

ตั้งค่าเวิร์กโฟลว์บนเดสก์ท็อป (เบต้า)

เมื่อสร้างเกม มักจะง่ายกว่ามากที่จะทดสอบเกมบนแพลตฟอร์มเดสก์ท็อปก่อน จากนั้นจึงนำไปใช้งานและทดสอบบนอุปกรณ์เคลื่อนที่ในภายหลังของการพัฒนา เราให้บริการชุดย่อยของ Firebase C++ SDK ที่ทำงานได้ใน Windows, macOS, Linux และจากภายในเครื่องมือแก้ไข C++ เพื่อรองรับเวิร์กโฟลว์นี้

  1. สำหรับเวิร์กโฟลว์บนเดสก์ท็อป คุณต้องทำดังนี้

    1. กำหนดค่าโปรเจ็กต์ C++ สำหรับ CMake
    2. สร้างโปรเจ็กต์ Firebase
    3. ลงทะเบียนแอป (iOS หรือ Android) กับ Firebase
    4. เพิ่มไฟล์การกําหนดค่า Firebase สําหรับแพลตฟอร์มอุปกรณ์เคลื่อนที่
  2. สร้างไฟล์การกำหนดค่า Firebase เวอร์ชันเดสก์ท็อป ดังนี้

    • หากคุณเพิ่มไฟล์ google-services.json ของ Android - เมื่อคุณเรียกใช้แอป Firebase จะค้นหาไฟล์ mobile นี้ จากนั้นจะสร้างไฟล์การกําหนดค่า Firebase desktop (google-services-desktop.json) โดยอัตโนมัติ

    • หากเพิ่มไฟล์ iOS GoogleService-Info.plist — ก่อนที่จะเรียกใช้แอป คุณต้องแปลงไฟล์อุปกรณ์เคลื่อนที่นี้เป็นไฟล์การกำหนดค่า Firebase ในเดสก์ท็อป หากต้องการแปลงไฟล์ ให้เรียกใช้คําสั่งต่อไปนี้จากไดเรกทอรีเดียวกับไฟล์ GoogleService-Info.plist

      generate_xml_from_google_services_json.py --plist -i GoogleService-Info.plist

    ไฟล์การกำหนดค่าเดสก์ท็อปนี้มีรหัสโปรเจ็กต์ C++ ที่คุณป้อนในขั้นตอนการตั้งค่าคอนโซล Firebase โปรดไปที่หัวข้อทําความเข้าใจโปรเจ็กต์ Firebase เพื่อดูข้อมูลเพิ่มเติมเกี่ยวกับไฟล์กําหนดค่า

  3. เพิ่ม Firebase SDK ลงในโปรเจ็กต์ C++

    ขั้นตอนด้านล่างเป็นตัวอย่างวิธีเพิ่มผลิตภัณฑ์ Firebase ที่รองรับลงในโปรเจ็กต์ C++ ในตัวอย่างนี้ เราจะอธิบายขั้นตอนการเพิ่ม Firebase Authentication และ Firebase Realtime Database

    1. ตั้งค่าตัวแปรสภาพแวดล้อม FIREBASE_CPP_SDK_DIR เป็นตำแหน่งของ SDK Firebase C++ ที่แตกแล้ว

    2. เพิ่มเนื้อหาต่อไปนี้ลงในไฟล์ CMakeLists.txt ของโปรเจ็กต์ ซึ่งรวมถึงไลบรารีสําหรับผลิตภัณฑ์ Firebase ที่ต้องการใช้ ตัวอย่างเช่น หากต้องการใช้ Firebase Authentication และ Firebase Realtime Database ให้ทำดังนี้

      # Add Firebase libraries to the target using the function from the SDK.
      add_subdirectory(${FIREBASE_CPP_SDK_DIR} bin/ EXCLUDE_FROM_ALL)
      
      # The Firebase C++ library `firebase_app` is required,
      # and it must always be listed last.
      
      # Add the Firebase SDKs for the products you want to use in your app
      # For example, to use Firebase Authentication and Firebase Realtime Database
      set(firebase_libs firebase_auth firebase_database firebase_app)
      target_link_libraries(${target_name} "${firebase_libs}")
  4. เรียกใช้แอป C++

ไลบรารีที่ใช้ได้ (เดสก์ท็อป)

Firebase C++ SDK มีการรองรับเวิร์กโฟลว์บนเดสก์ท็อปสำหรับฟีเจอร์บางส่วน ซึ่งช่วยให้ใช้ Firebase บางส่วนในบิลด์เดสก์ท็อปแบบสแตนด์อโลนใน Windows, macOS และ Linux ได้

ผลิตภัณฑ์ Firebase ข้อมูลอ้างอิงเกี่ยวกับไลบรารี (โดยใช้ CMake)
App Check firebase_app_check
(ต้องระบุ) firebase_app
Authentication firebase_auth
(ต้องระบุ) firebase_app
Cloud Firestore firebase_firestore
firebase_auth
firebase_app
Cloud Functions firebase_functions
(ต้องระบุ) firebase_app
Cloud Storage firebase_storage
(ต้องระบุ) firebase_app
Realtime Database firebase_database
(ต้องระบุ) firebase_app
Remote Config firebase_remote_config
(ต้องระบุ) firebase_app

Firebase มีไลบรารีเดสก์ท็อปที่เหลือเป็นการติดตั้งใช้งานสตับ (ใช้งานไม่ได้) เพื่อความสะดวกในการสร้างสำหรับ Windows, macOS และ Linux คุณจึงไม่ต้องคอมไพล์โค้ดแบบมีเงื่อนไขเพื่อกำหนดเป้าหมายไปยังเดสก์ท็อป

Realtime Database เดสก์ท็อป

Realtime Database SDK สําหรับเดสก์ท็อปใช้ REST เพื่อเข้าถึงฐานข้อมูล คุณจึงต้องประกาศดัชนีที่ใช้กับ Query::OrderByChild() ในเดสก์ท็อป ไม่เช่นนั้น โปรแกรมฟังจะใช้งานไม่ได้

ข้อมูลเพิ่มเติมสำหรับการตั้งค่าเดสก์ท็อป

ไลบรารี Windows

สำหรับ Windows เวอร์ชันของไลบรารีจะขึ้นอยู่กับปัจจัยต่อไปนี้

  • แพลตฟอร์มการสร้าง: โหมด 32 บิต (x86) กับ 64 บิต (x64)
  • สภาพแวดล้อมรันไทม์ของ Windows: หลายเธรด / MT เทียบกับ DLL แบบหลายเธรด / MD
  • เป้าหมาย: เวอร์ชันที่ใช้งานจริงเทียบกับเวอร์ชันแก้ไขข้อบกพร่อง

โปรดทราบว่าไลบรารีต่อไปนี้ได้รับการทดสอบโดยใช้ Visual Studio 2015 และ 2017

เมื่อสร้างแอป C++ บนเดสก์ท็อปบน Windows ให้ลิงก์ไลบรารี Windows SDK ต่อไปนี้กับโปรเจ็กต์ของคุณ ดูข้อมูลเพิ่มเติมในเอกสารประกอบของคอมไพเลอร์

ไลบรารี Firebase C++ ทรัพยากร Dependency ของไลบรารี Windows SDK
App Check advapi32, ws2_32, crypt32
Authentication advapi32, ws2_32, crypt32
Cloud Firestore advapi32, ws2_32, crypt32, rpcrt4, ole32, shell32
Cloud Functions advapi32, ws2_32, crypt32, rpcrt4, ole32
Cloud Storage advapi32, ws2_32, crypt32
Realtime Database advapi32, ws2_32, crypt32, iphlpapi, psapi, userenv
Remote Config advapi32, ws2_32, crypt32, rpcrt4, ole32

ไลบรารี macOS

สำหรับ macOS (Darwin) จะมีเวอร์ชันไลบรารีสำหรับแพลตฟอร์ม 64 บิต (x86_64) นอกจากนี้ เรายังมีเฟรมเวิร์กไว้ให้เพื่อความสะดวกของคุณ

โปรดทราบว่าไลบรารี macOS ได้รับการทดสอบโดยใช้ Xcode 13.3.1

เมื่อสร้างแอป C++ บนเดสก์ท็อปใน macOS ให้ลิงก์รายการต่อไปนี้กับโปรเจ็กต์ของคุณ

  • ไลบรารีของระบบ pthread
  • เฟรมเวิร์กของระบบ macOS CoreFoundation
  • เฟรมเวิร์กของระบบ macOS Foundation
  • Security เฟรมเวิร์กระบบ macOS
  • GSS เฟรมเวิร์กระบบ macOS
  • เฟรมเวิร์กของระบบ macOS Kerberos
  • SystemConfiguration เฟรมเวิร์กระบบ macOS

โปรดดูข้อมูลเพิ่มเติมในเอกสารประกอบของคอมไพเลอร์

ไลบรารี Linux

สำหรับ Linux เรามีไลบรารีเวอร์ชันสำหรับแพลตฟอร์ม 32 บิต (i386) และ 64 บิต (x86_64)

โปรดทราบว่าไลบรารี Linux ได้รับการทดสอบโดยใช้ GCC 4.8.0, GCC 7.2.0 และ Clang 5.0 บน Ubuntu

เมื่อสร้างแอป C++ บนเดสก์ท็อปบน Linux ให้ลิงก์ไลบรารีระบบ pthread กับโปรเจ็กต์ของคุณ โปรดดูข้อมูลเพิ่มเติมในเอกสารประกอบของคอมไพเลอร์ หากสร้างด้วย GCC 5 ขึ้นไป ให้กําหนด -D_GLIBCXX_USE_CXX11_ABI=0

ขั้นตอนถัดไป