Rumah  >  Artikel  >  Operasi dan penyelenggaraan  >  Petua konfigurasi untuk membina aplikasi berbilang benang Linux menggunakan CMake

Petua konfigurasi untuk membina aplikasi berbilang benang Linux menggunakan CMake

王林
王林asal
2023-07-06 15:53:192194semak imbas

Petua konfigurasi untuk membina aplikasi berbilang benang Linux menggunakan CMake

Membangunkan aplikasi berbilang benang pada platform Linux adalah tugas biasa. CMake ialah alat binaan berkuasa yang memudahkan proses pembinaan projek. Artikel ini akan memperkenalkan cara mengkonfigurasi dan membina aplikasi berbilang benang menggunakan CMake, dan memberikan beberapa contoh kod.

Pertama, pastikan CMake dipasang. Masukkan arahan berikut dalam terminal untuk menyemak sama ada CMake dipasang:

cmake --version

Jika CMake sudah dipasang, maklumat versinya akan dipaparkan. Jika ia tidak dipasang, pasang CMake mengikut pengedaran Linux anda.

Seterusnya, kami akan mencipta aplikasi berbilang benang mudah untuk menggambarkan cara mengkonfigurasinya menggunakan CMake.

Mula-mula, buat fail bernama "main.cpp" dan tulis kod berikut di dalamnya:

#include <iostream>
#include <thread>

void threadFunction()
{
    std::cout << "This is a thread." << std::endl;
}

int main()
{
    std::thread t(threadFunction);
    t.join();

    std::cout << "This is the main thread." << std::endl;

    return 0;
}

Dalam contoh ini, kami mentakrifkan fungsi yang dipanggil threadFunction dan tambahkannya dalam A message is output. Dalam fungsi utama, kami mencipta urutan baharu dan kemudian menggunakan fungsi sertai untuk menunggu urutan selesai. Akhir sekali, kami mengeluarkan mesej untuk mewakili utas utama. threadFunction的函数,并在其中输出一条消息。在main函数中,我们创建了一个新的线程,然后使用join函数等待该线程完成。最后,我们输出一条消息来表示主线程。

接下来,我们创建一个名为"CMakeLists.txt"的文件,并在其中编写以下内容:

cmake_minimum_required(VERSION 3.12)
project(Threads)
set(CMAKE_CXX_STANDARD 14)

find_package(Threads REQUIRED)

add_executable(Threads main.cpp)
target_link_libraries(Threads PRIVATE Threads::Threads)

在这个示例的CMakeLists.txt文件中,我们首先指定了CMake的最低版本要求。然后,我们设置了C++标准的版本为C++14。

接着,我们使用find_package命令来查找Threads库。这个库是C++标准库的一部分,其中包含了多线程相关的功能。我们通过REQUIRED关键字告诉CMake这是必需的。

然后,我们使用add_executable命令来指定要生成的可执行文件的名称和源文件。在这个例子中,我们将生成一个名为"Threads"的可执行文件,并使用"main.cpp"作为源文件。

最后,我们使用target_link_libraries

Seterusnya, kami mencipta fail yang dipanggil "CMakeLists.txt" dan menulis kandungan berikut di dalamnya:

mkdir build
cd build
cmake ..
make

Dalam fail CMakeLists.txt contoh ini, kami mula-mula menentukan keperluan versi minimum CMake. Kemudian, kami menetapkan versi standard C++ kepada C++14.

Seterusnya, kami menggunakan perintah find_package untuk mencari pustaka Threads. Pustaka ini adalah sebahagian daripada pustaka standard C++ dan mengandungi fungsi berkaitan multi-threading. Kami memberitahu CMake bahawa ini diperlukan melalui kata kunci DIPERLUKAN.

Kemudian, kami menggunakan perintah add_executable untuk menentukan nama dan fail sumber fail boleh laku yang akan dijana. Dalam contoh ini, kami akan menjana fail boleh laku bernama "Threads" dan menggunakan "main.cpp" sebagai fail sumber.

Akhir sekali, kami menggunakan perintah target_link_libraries untuk memautkan pustaka Threads ke fail boleh laku kami.

Kini kita boleh membina aplikasi menggunakan arahan berikut:

./Threads

Arahan ini akan menjana fail projek dalam direktori "bina" dan membina boleh laku.

Setelah selesai, kami boleh menjalankan aplikasi kami: 🎜
This is a thread.
This is the main thread.
🎜Anda akan melihat output yang serupa dengan yang berikut: 🎜rrreee🎜Pada ketika ini, kami telah berjaya mengkonfigurasi dan membina aplikasi berbilang benang mudah menggunakan CMake. 🎜🎜Untuk meringkaskan, mengkonfigurasi dan membina aplikasi berbilang benang Linux menggunakan CMake adalah agak mudah dan mudah. Anda boleh menentukan kebergantungan dan perpustakaan pautan dengan menulis fail CMakeLists.txt dan menggunakan arahan yang sepadan untuk menjana fail boleh laku. Alat CMake yang berkuasa boleh memudahkan proses pembinaan projek. 🎜🎜Semoga kod sampel dan arahan dalam artikel ini dapat membantu anda lebih memahami cara menggunakan CMake untuk membina aplikasi berbilang benang. Saya doakan anda berjaya dalam pembangunan Linux! 🎜

Atas ialah kandungan terperinci Petua konfigurasi untuk membina aplikasi berbilang benang Linux menggunakan CMake. Untuk maklumat lanjut, sila ikut artikel berkaitan lain di laman web China PHP!

Kenyataan:
Kandungan artikel ini disumbangkan secara sukarela oleh netizen, dan hak cipta adalah milik pengarang asal. Laman web ini tidak memikul tanggungjawab undang-undang yang sepadan. Jika anda menemui sebarang kandungan yang disyaki plagiarisme atau pelanggaran, sila hubungi admin@php.cn