簡體   English   中英

如何使用 Ninja 在 C++ 中編譯“Hello World”?

[英]How to compile “Hello World” in C++ with Ninja?

我是忍者的新手。 還是不知道怎么用。

我創建了一個簡單的hello.cpp文件:

#include <iostream>
int main()
{
        std::cout << "Hello World!" << std::endl;
        return 0;
}

我正在使用 Linux Ubuntu。

我已經安裝了 CMake: apt install cmake

我已經安裝了忍者: apt-get install ninja-build

但是現在我應該怎么做才能用 Ninja 編譯我的hello.cpp文件呢?

我試圖運行ninja ,但我收到有關rules.ninja的錯誤:

ninja: error: build.ninja:30: loading 'rules.ninja': No such file or directory

我不知道如何創建rules.ninja以及如何配置它,也不知道我是否錯過了更多的東西。

假設您根本沒有CMakeLists.txt文件。 要編譯這個程序,首先需要創建一個CMakeLists.txt文件。 CMake 使用此文件配置項目。

CMakeLists.txt (將其放在與源文件相同的文件夾中):

cmake_minimum_required(VERSION 3.8)
project(my_exe)
set(CMAKE_CXX_STANDARD 14) # Try 11 if your compiler does not support C++14
add_executable(my_exe hello.cpp)

然后你需要調用 CMake (在終端中, go 到包含CMakeLists.txt文件的文件夾),然后構建項目。

首先,您應該創建一個構建目錄。 這很方便,因為您不想將構建 output 與您的項目文件混合。

mkdir build
cd build

然后,您調用 CMake 並告訴它生成一個 Ninja 構建系統( -GNinja ),同時告訴它CMakeLists.txt文件的位置( .. ),它應該在build文件夾的正下方:

cmake -GNinja ..

現在,您已准備好構建可執行文件:

ninja

完畢。 現在,您的build文件夾中應該有一個可執行文件名my_exe

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM