首页 > 解决方案 > 在 CMAKE 中设置整数值变量

问题描述

我想通过CMAKE为openmp线程指定一个用户指定的值,所以我设置了一个变量,如下所示:

set(NUM_THREADS "3" CACHE STRING "Number of OpenMP threads to use")

我可以将其传递给我的代码:

-DNUM_OPENMP_THREADS:STRING=${NUM_THREADS}

现在,当我在 C++ 代码中执行 openmp pragma 时:

#pragma omp parallel for num_threads(NUM_OPENMP_THREADS) schedule(static,1)

这会返回错误:

error: ‘num_threads’ expression must be integral

当然,这是有道理的,但是几个小时以来,我无法弄清楚如何使这个变量从 CMAKE 中获取,以便将其解析为整数。

标签: c++cmake

解决方案


推荐阅读