【问题标题】:How to Create, Compile, And Run a single file in CLion如何在 CLion 中创建、编译和运行单个文件
【发布时间】:2015-11-17 10:15:06
【问题描述】:

我正在研究一些 c++ 的东西,我讨厌创建一个全新的项目只是为了在一个文件上运行一些东西。

我也不喜欢在创建项目时文件已经被称为main.cpp

我只想制作一个包含几个函数或类的文件。创建一个完整的项目还不够重要。

我想创建一个文件并将其命名为我想要的。只需创建一个我称之为的文件,然后编译并运行。

我不想处理整个CMake 的事情,只编译一个文件。

没有项目相关。谢谢。

我知道您可以在 Visual Studio 上执行此操作,但我正在使用 Clion 在 Mac OS X 上工作。

【问题讨论】:

  • 叫我oldschool,但我只是从命令行中做到这一点:g++ -std=c++11 -o target target.cpp 其中“target”是我正在构建的程序的名称。
  • 您可以修改 CMakeLists.txt。这是一个实现。 stackoverflow.com/a/48729058/8890521

标签: c++ c cmake clion


【解决方案1】:

您可以修改 CMakeLists.txt

这里是一个例子:

cmake_minimum_required(VERSION 3.3)
project(test_build)

set(CMAKE_CXX_FLAGS "${CMAKE_CXX_FLAGS} -std=c++11")

set(BUILD_1 main)
set(SOURCE_FILES_1 main.cc) //where main.cc is your first main/program
add_executable(${BUILD_1} ${SOURCE_FILES_1})

set(BUILD_2 main_2)
set(SOURCE_FILES_2 main_2.cc) //where main_2.cc is your second main/program
add_executable(${BUILD_2} ${SOURCE_FILES_2})

或者使用测试(垃圾版):
add_executable(foo bar.cc)

之后你可以在 CLion 中选择你想要的构建

【讨论】:

    【解决方案2】:

    我刚刚有同样的问题,偶然发现了这个线程,然后在这个插件中找到了我的解决方案。 这个插件的作用基本上是用户 Waxo 自动建议的:在 CMakeLists.txt 中为您的每个可执行文件添加一行。您只需在编辑器中右键单击并选择它。我发现它非常有用,主要用于算法竞赛。 希望这会有所帮助:https://plugins.jetbrains.com/plugin/8352-c-c--single-file-execution

    干杯!

    【讨论】:

      【解决方案3】:

      在每个 CLion 项目中都有一个文件 CMakeLists.txt。
      要运行单个文件,您必须在该文件中编写一个命令,即:

      add_executable(file_name_without_extension_cpp  file_name_with_extension_cpp)
      

      例如:add_executable(CoinChange CoinChange.cpp)

      然后单击重新加载更改,然后转到运行选项,然后选择要运行的文件,然后单击运行按钮。您的单个文件将被运行。

      您的 CLion 项目中有多少个单个文件,您必须执行相同的操作来运行每个单个文件。

      【讨论】:

        【解决方案4】:
        1. 在CLion“C/C++​单文件执行”中安装插件
        2. 转到您要执行的文件并右键单击然后选择最后一个选项,即添加单个可执行的单个 c/cpp 文件
        3. 转到运行选项或按 Alt + shift + f10 并选择要运行的文件

        【讨论】:

          【解决方案5】:

          对于跨 IDE 的可移植解决方案,我在 main() 的开头调用 scratch() 函数,并将 exit(0); 放在临时函数的末尾。

          scratch() 中,您可以根据需要调用不同文件中的内容。我通常只是在那里测试sn-ps。

          【讨论】:

            【解决方案6】:

            CLion 基于 CMake。所以如果你不想使用 CMake,你可以使用 Sublime Text 等其他编辑器。

            但是一个简单的 CMake 脚本可以解决这个问题。

            以下 CMake 脚本会自动将当前目录及其子目录中的 cpp 文件添加到可执行文件中(文件名作为目标名称)。

            cmake_minimum_required(VERSION 3.15)
            project(MyApp)
            
            set(CMAKE_CXX_STANDARD 17)
            
            file(GLOB APP_SOURCES *.cpp */*.cpp)
            foreach (testsourcefile ${APP_SOURCES})
                get_filename_component(testname ${testsourcefile} NAME_WE)
                message("${testname}")
                add_executable(${testname} ${testsourcefile})
            endforeach (testsourcefile ${APP_SOURCES})
            

            【讨论】:

              猜你喜欢
              • 2016-01-20
              • 2014-04-10
              • 2018-03-16
              • 1970-01-01
              • 1970-01-01
              • 2023-02-10
              • 2014-12-28
              • 1970-01-01
              • 1970-01-01
              相关资源
              最近更新 更多