在Clion的IDE中指定命令行参数

最近在linux上使用Clion这个C++ IDE,感觉很好,JetBrain的产品都很不错。

但是在跑简单例子的时候,使用到thread对象,直接build会出错

报错是:

thread::thread<void (&)(int), int>(void (&)(int), int&&)’:pthread_create’未定义的引用

就是说需要动态链接到pthread库上,然后就试着去run里面的edit_configure里面的cmdline parameter中手动添加-pthread参数

但是仍然无效,就很纳闷是什么原因。

后来发现在project目录下有个CmakeList文件,原来使用的是CMake编译器,所以应该在CMakeList文件中来指定命令行参数

比如:

cmake_minimum_required(VERSION 3.3)
project(C__NewFeature)

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

set(SOURCE_FILES main.cpp)
add_executable(C__NewFeature ${SOURCE_FILES})

然后重新build就成功了。

				
时间: 2024-07-30 13:52:17

在Clion的IDE中指定命令行参数的相关文章

VS2010中使用命令行参数

在Linux下编程习惯了使用命令行参数,故使用VS2010时也尝试了一下. 新建项目,c++编写程序如下: #include<iostream> #include<fstream> using namespace std; int main(int argc,char*argv[]) { ifstream fin(argv[1],ios::in);//输入方式打开文件 //ifstream fin;fin.open(argv[1],ios::in); ofstream fout(a

在VS中添加命令行参数argv[]

英文版: 菜单Project -> Properties -> Configuration Properties -> Debugging 在Command Arguments里填上即可. 中文版: 菜单[项目] -> 属性页 -> 配置属性 -> 调试 在[命令行参数]里填上即可. 记得不同参数之前用空格隔开. argc不用自己设置.argc指的就是argv中的元素数

windows在远程桌面连接中使用命令行参数

在此版本的 Windows 中,可以从搜索框("运行"对话框或命令行)启动远程桌面连接,而不是从「开始」菜单启动它. 从"运行"对话框启动远程桌面的步骤 依次单击「开始」按钮 ."所有程序"."附件"和"运行". 在"打开"框中,键入 mstsc. 键入一个空格,然后在空格后面键入希望使用的任意其他参数. 远程桌面连接的命令行语法 语法 mstsc [<connection fil

Spring boot 梳理 - 在bean中使用命令行参数-自动装配ApplicationArguments

If you need to access the application arguments that were passed to SpringApplication.run(-?), you can inject a org.springframework.boot.ApplicationArguments bean. The ApplicationArguments interface provides access to both the raw String[] arguments

visual studio 中添加命令行参数

argc argv 原文地址:https://www.cnblogs.com/xpylovely/p/10981441.html

python中命令行参数

python中的命令行参数 python中有一个模块sys,sys.argv这个属性提供了对命令行参数的访问.命令行参数是调用某个程序时除程序名外的其他参数. sys.argv是命令行参数的列表 len(sys.argv)是命令行参数的个数 下面我们用一个简单的例子来说明一下. #!/usr/bin/python #coding:utf-8 import sys ##加载sys这个模块. for i in range(len(sys.argv)): print "第%d个参数是:%s"

linux平台学x86汇编(十五):使用命令行参数

[版权声明:尊重原创,转载请保留出处:blog.csdn.net/shallnet,文章仅供学习交流,请勿用于商业用途] 在高级语言中,程序在命令行上启动时常常带一个或多个参数,在汇编语言中也可以实现这一特性.在实现这一特性之前,我们先了解一下linux如何从命令行执行程序. 每一个应用程序开始执行时,系统都会为该程序分配一块内存区域,并且每个程序都分配相同的虚拟内存地址.虚拟内存地址由操作系统映射到物理内存地址.在Linux中,程序的虚拟内存地址是从0x80480000开始,到地址0xbfff

awk处理命令行参数

ARGV awk可以从内置数组ARGV中得到命令行参数,其中包括命令awk.但所有传递给awk的选项都不在其中.ARGV数组的下标从0开始. ARGC ARGC是一个包含命令行参数个数的内置变量. 范例 $ cat argvs # Scriptname:argvs BEGIN{ for(i=0; i<ARGC; i++){ printf("argv[%d] is %s\n",i,ARGV[i]) } printf("The number of arguments, AR

Eclipse输入命令行参数

想要在Eclipse中输入命令行参数,可以在目录中该程序上右键,选择“Run As",选择”Run configurations",如图: 然后输入命令行参数: 点击Apply和Run,就会将命令行参数传给我们的程序. public static void main(String[] args) { System.out.println(args[0]); System.out.println(args[1]); } 这样就会再控制台上输出:test a 注意,我们只要将"a