make如何指定cmake路径

Posted

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了make如何指定cmake路径相关的知识,希望对你有一定的参考价值。

本人使用的是mac系统,在终端用命令行重新安装cmake之后运行make报错:
make: /usr/local/Cellar/cmake/3.5.1/bin/cmake: No such file or directory
make: *** [cmake_check_build_system] Error 1
我查看了一下 /usr/local/Cellar/cmake/目录,只有一个3.6.0_1,应该是更新了cmake的版本,而make的配置中的cmake的路径却没有更新。

请问:该如何更新make配置中的cmake路径呢?或者有其他解决办法么?

参考技术A 先在cmakelist.txt所在目录执行cmake,而后再make本回答被提问者采纳

当我在 CLion 2020.3 上使用远程工具链时,cmake 无法解析本地路径

【中文标题】当我在 CLion 2020.3 上使用远程工具链时,cmake 无法解析本地路径【英文标题】:cmake cannot resolve local path when I using remote toolchain on CLion 2020.3 【发布时间】:2021-04-13 08:40:23 【问题描述】:
/usr/bin/cmake -DCMAKE_BUILD_TYPE=Debug -DCMAKE_MAKE_PROGRAM=/usr/bin/make -DCMAKE_C_COMPILER=/usr/lib/llvm/11/bin/clang -DCMAKE_CXX_COMPILER=/usr/lib/llvm/11/bin/clang++ -G "CodeBlocks - Unix Makefiles" /home/a_user_name/CLion_Programmes/VM_D
-- Configuring done
-- Generating done
-- Build files have been written to: /home/a_user_name/CLion_Programmes/VM_D/cmake-build-debug
Cannot resolve path: D:\MyProgrammes\CL\VM_D\cmake-build-debug
[Failed to reload]

客户端:Windows 10 20H2 主机:Hyper-V 上的 Gentoo Linux 通过 openssh 连接 当我设置我的环境时,我使用了这个:https://www.jetbrains.com/help/clion/remote-projects-support.html\ 感谢您的帮助:)

【问题讨论】:

远程主机 RHEL 7 也有同样的问题 【参考方案1】:

服务器上的 tar 文件创建似乎有问题。 FileTransfer 窗口中是否有任何错误消息?你能检查一下 tar 文件是否是在你的 /tmp 文件夹中创建的吗?

我正在使用https://youtrack.jetbrains.com/issue/CPP-17421#focus=Comments-27-4040675.0-0 中描述的 tar 包装器,但它不适用于当前版本,因此没有创建导致该错误消息的 tar 文件。

我按如下方式修复了 tar 包装器:

#!/bin/bash

# Uncomment this line to get details about files beeing transfered
#TAR_LOGFILE=~/.clion_tar_calls.txt

redirect_cmd() 
    if [[ ! -z $TAR_LOGFILE ]]; then
        echo "Executing tar: $@" >> $TAR_LOGFILE
        "$@" >> $TAR_LOGFILE
    else
        "$@" > /dev/null
    fi


if [[ ! -z $TAR_LOGFILE ]]; then
    echo "`date` Called tar at $PWD with parameters: $@" >> $TAR_LOGFILE
    if [[ "$*" == *--files-from* ]]; then
        files=$(echo "$@" | sed 's/.*--files-from=\([^[:space:]]*\).*/\1/')
        cat $files >> $TAR_LOGFILE
    fi
fi

if [[ $PWD =~ cmake-build- ]]; then
    excludes=('--exclude=*.o' '--exclude=*.gcno' '--exclude=*.gcda' '--exclude=*.a' '--exclude=bin' '--exclude=lib')

    first="$1"
    shift
    file="$1"
    shift
    redirect_cmd exec /bin/tar "$first" "$file" "$excludes[@]" "$@" --verbose
else
    exec /bin/tar "$@"
fi

【讨论】:

我也认为这是一个与焦油有关的问题。 Help -> Find Action -> Show Remote Hosts Info 中有一个“[FAILED] tar”行

以上是关于make如何指定cmake路径的主要内容,如果未能解决你的问题,请参考以下文章

NetBeans 6.9、CMake 和 C++:如何指定构建路径?

make和make install的区别

当我在 CLion 2020.3 上使用远程工具链时,cmake 无法解析本地路径

cmake ninja: error: 'xxx', needed by 'xxx', missing and no known rule to make it

没装gcc能用cmake吗?

产生makefiles文件后,make命令不可用