Μετάβαση στο περιεχόμενο

CMake

ΕφαρμογήKitware

Ονομάζεται επίσης cmake gui, kitware cmake

KitwareΠαραγωγικότητα

Η γεννήτρια αρχείων δόμησης της Kitware. Το cmake.exe δημιουργεί αρχεία Visual Studio ή Ninja. Δεν αντικαθιστά το MSVC ή το rustc.

Τι πρέπει να γνωρίζετε

Το CMake δημιουργεί αρχεία δόμησης. Δεν είναι μεταγλωττιστής.

Το cmake.exe της Kitware δημιουργεί αρχεία έργου για τα Visual Studio, Ninja και άλλα. Τα cl.exe και link.exe εξακολουθούν να παρέχονται από το MSVC. Τα rustc και go αφορούν διαφορετικές γλώσσες. Η εγκατάσταση του CMake δεν εγκαθιστά το Visual Studio.

Τι είναι;
Γεννήτρια αρχείων δόμησης
Είναι μεταγλωττιστής;
Όχι. Εξακολουθείτε να χρειάζεστε το MSVC ή παρόμοιο εργαλείο
Αντικαθιστά το Visual Studio;
Όχι. Μπορεί να δημιουργήσει ένα αρχείο .sln
Το Feex λέει
Εάν το cmake.exe εκτελέσει τη διαμόρφωση παραμέτρων και η μεταγλώττιση αποτύχει, θα εξέταζα τη γεννήτρια και τον μεταγλωττιστή που εντόπισε. Δεν θα αντιμετώπιζα το CMake ως MSVC. Η γεννήτρια δεν είναι η εργαλειοσειρά (toolchain).

Τι είναι το CMake;

Το CMake είναι ένα σύστημα μετα-δόμησης (meta-build). Δημιουργεί λύσεις Visual Studio, αρχεία Ninja και άλλα. Δεν είναι το cl.exe, ούτε το rustc, ούτε το ίδιο το MSBuild.

Εάν δεν το έχετε χρησιμοποιήσει ποτέ

Εάν ένα αρχείο README για C++ ανέφερε να εγκαταστήσετε το CMake, λάβετε το από το cmake.org/download. Το cmake.exe δημιουργεί αρχεία δόμησης. Δεν είναι μεταγλωττιστής. Εξακολουθείτε να χρειάζεστε το MSVC, το Ninja ή άλλη εργαλειοσειρά. Τα rustc.exe και go.exe αφορούν διαφορετικές γλώσσες. Το CMake δεν αντικαθιστά το devenv.exe.

Σε τι χρησιμεύει;

Δημιουργία λύσης Visual Studio

cmake -G "Visual Studio 17 2022". Στη συνέχεια, το devenv.exe ανοίγει αυτό το αρχείο .sln. Το CMake δεν το έχει μεταγλωττίσει ακόμα.

Ninja και άλλες γεννήτριες

Ninja μαζί με MSVC ή GCC. Τα cargo και go έχουν τα δικά τους γραφήματα δόμησης.

Προεπιλογές (Presets)

CMakePresets.json σε σύγχρονα έργα. Αυτό το αρχείο δεν είναι εκτελέσιμο μεταγλωττιστή.

Για ποιους προορίζεται;

  • Προγραμματιστές C και C++ των οποίων το αποθετήριο ξεκινά με CMakeLists.txt
  • Χρήστες που εγκατέστησαν το CMake και αναρωτήθηκαν γιατί έλειπε το cl.exe
  • Οποιοσδήποτε πίστεψε ότι το CMake αντικατέστησε το Visual Studio

Τρέχουσα κατάσταση

Το CMake (2000) είναι μια τρέχουσα γεννήτρια δόμησης από την Kitware. Ο προμηθευτής εξακολουθεί να κατευθύνει τους χρήστες των Windows στο https://cmake.org/download/.

Πόσο παλιό είναι;

Η Kitware κυκλοφόρησε το CMake το 2000 για μεγάλα δέντρα πηγαίου κώδικα C++. Είναι παλαιότερο από τις Rust και Go. Οι τρέχουσες εκδόσεις 3.x/4.x αποτελούν το προϊόν. Ένας οδηγός μόνο για την έκδοση 2.8 ενδέχεται να μην περιλαμβάνει τις σύγχρονες προεπιλογές (presets).

Εκδόσεις

Πρώτα τα κύρια κανάλια. Οι ακριβείς αριθμοί δομής δεν επαληθεύονται όλοι εδώ.

cmake.exe
cmake-gui.exe

Απαιτήσεις συστήματος

Οι τιμές ακολουθούν τις δημόσιες οδηγίες του εκδότη. Ο φόρτος εργασίας εξακολουθεί να μεταβάλλει τις πραγματικές ανάγκες.

Ελάχιστο

Ελάχιστες απαιτήσεις συστήματος
Λειτουργικό σύστημα Μια τρέχουσα έκδοση 64-bit Windows 10 ή Windows 11, σύμφωνα με την Kitware
Μνήμη RAM Η γεννήτρια είναι μικρή σε μέγεθος. Η μεταγλώττιση που ξεκινά είναι το απαιτητικό βήμα

Προφίλ πόρων

Απαίτηση CPU
Εξαρτάται από το τι ανοίγετε μέσα στην εφαρμογή
Απαίτηση RAM
Εξαρτάται από έγγραφα, καρτέλες ή βιβλιοθήκες

Εγκατεστημένες διεργασίες

Αυτά τα εκτελέσιμα αρχεία ανήκουν σε αυτό το προϊόν όταν είναι εγκατεστημένο.

Εγκατεστημένες διεργασίες
cmake.exe Γεννήτρια γραμμής εντολών CMake
cmake-gui.exe Προαιρετικό γραφικό περιβάλλον (GUI) CMake

Στοιχεία εκκίνησης

Το CMake δεν ξεκινά μαζί με τα Windows. Το εκτελείτε μέσα σε έναν φάκελο δόμησης.

Τοποθεσίες αρχείων

Συνήθεις τοποθεσίες του CMake
Τυπική εγκατάσταση C:\Program Files\CMake\

Μορφές αρχείων

CMakeLists.txtCMakePresets.json

Συνήθη προβλήματα

Η διαμόρφωση παραμέτρων επιτυγχάνει, η μεταγλώττιση αποτυγχάνει

Το CMake εντόπισε μια γεννήτρια. Ο μεταγλωττιστής ή το SDK εξακολουθεί να λείπει. Αυτό αποτελεί πρόβλημα του MSVC ή του Windows SDK.

Λανθασμένη γεννήτρια για το εγκατεστημένο VS

Η επιλογή "Visual Studio 17 2022" απαιτεί το VS 2022. Το CMake δεν μπορεί να δημιουργήσει εκ του μηδενός το devenv.exe.

Απεμπλοκή από προβλήματα

cmake --version και where.exe cmake

Αναμένεται η διαδρομή Program Files\CMake\bin. Ένα αδέσποτο cmake.exe μέσα σε εικονικό περιβάλλον (venv) είναι διαφορετική περίπτωση.

Εγκαταστήστε από το cmake.org/download

Η Kitware φιλοξενεί το αρχείο MSI. Ένα πακέτο CMake που διανέμεται μαζί με ένα τυχαίο zip μεταγλωττιστή είναι άχρηστο.

Εγκαταστήστε το Visual Studio ή τα Build Tools εάν θέλατε το MSVC

Το πρόγραμμα εγκατάστασης του Visual Studio προσθέτει το cl.exe. Στη συνέχεια, το CMake θα το εντοπίσει.

Εναλλακτικές λύσεις

Τα Meson και Bazel είναι άλλα συστήματα μετα-δόμησης. Το MSBuild είναι αυτό στο οποίο στοχεύει συχνά μια γεννήτρια VS. Το CMake παραμένει το συνηθισμένο σημείο εισόδου για τη C++.

Επίσημη βοήθεια και λήψεις

Ξεκινήστε από τον προμηθευτή. Οι τυχαίοι ιστότοποι αρχείων exe δεν αποτελούν κανάλι υποστήριξης.

Επίσημα στοιχεία επικοινωνίας
Λήψη cmake.org/download/ Επίσημο πρόγραμμα εγκατάστασης ή σελίδα προμηθευτή
Βοήθεια cmake.org/documentation/ Υποστήριξη προμηθευτή
Επίσημος ιστότοπος cmake.org/ Ξεκινήστε από εδώ, όχι από έναν τυχαίο πάροχο φιλοξενίας αρχείων exe
Τεκμηρίωση CMake cmake.org/cmake/help/latest/ Εντολές και γεννήτριες

Σχετικό υλικό

Η διαμόρφωση παραμέτρων είναι ελαφριά. Η μεταγλώττιση που δημιουργείτε απαιτεί CPU και RAM.

Τεχνικές λεπτομέρειες

Τεχνικές λεπτομέρειες

Οι αριθμοί εκδόσεων του προμηθευτή αλλάζουν. Αυτό το άρθρο δεν δεσμεύεται σε συγκεκριμένη δομή.

Πηγές και επαλήθευση

Καταγεγραμμένη ετικέτα πηγής: Αύγουστος 2026. Αυτή η ετικέτα δεν καθορίζει ανεξάρτητη επαλήθευση. Πώς ερευνούμε.

Ήταν χρήσιμο αυτό το άρθρο;

Ένα ναι ή όχι είναι αρκετό. Επιλέξτε έναν λόγο εάν θέλετε ή προσθέστε μια σύντομη σημείωση.

Ήταν χρήσιμο αυτό το άρθρο;