c++ “zsh:没有这样的文件或目录:./Lab2.cpp”在MacOS上的错误(VS代码)[已关闭]

vngu2lb8  于 2023-02-01  发布在  Mac
关注(0)|答案(1)|浏览(152)

这个问题似乎与help center中定义的范围内的编程无关。
9小时前关门了。
Improve this question
所以我在Mac上用C在Visual Studio Code上做了一个任务,我决定运行我已经编写好的程序,看看会出现什么,它是否工作,但我却得到了这个错误:"zsh:没有这样的文件或目录:"。我已经将其保存为一个文件,并尝试使用" g ++ Lab2.cpp-o Lab2 "编译它,出现以下错误:
"clang:错误:没有这样的文件或目录:"实验室2.cpp"
叮当声:错误:无输入文件"
老实说,我真的很困惑这些东西是如何工作的,因为我不记得去年我使用Python时Visual Studio代码是如此令人困惑。
这是我的代码和错误.(代码是不是这样做,并有可能是错误的. enter image description here
我试过重新启动Visual Studio代码,将其保存为文件,创建新文件,而且我已经有了教授告诉我们要获得的C
扩展。没有什么真正的帮助。我以前的作业也遇到过这个问题,但它不知何故自行修复了(或者我只是不知道我做了什么来修复它)。

gdx19jrr

gdx19jrr1#

为了让“g++ Lab2.cpp -o Lab2“起作用,
您需要先将cd转到Lab2.cpp文件所在的位置。
通常,所有这些都是由所谓的Makefile脚本自动完成的,
但你好像什么都不用。
我建议不要学习Makefile语法,
而是直接学习CMake,因为最终,CMake是每个C/C++开发人员最终有一天都会被迫使用的。

示例CMake

1.首先在MacOS上安装CMake
2.如果Lab2.cppsrc文件夹中,则在src文件夹的父文件夹中创建CMakeLists.txt文件,内容如下:

cmake_minimum_required(VERSION 3.19)

project(MyProject C CXX OBJC OBJCXX)

set(SOURCES
    ${SOURCES}
    src/Lab2.cpp
)

add_executable(MyApp ${SOURCES})

3.然后创建build.sh文件,在上面创建的文件旁边,内容如下:

#/bin/sh

# Common.
cd "${0%[/\\]*}" > /dev/null 2>&1;
ROOT=$(pwd)
BUILD_DIR="$ROOT/.build"

error() {
    echo "$ROOT/${0##*/}:${2:-1}:1: error: $1" 1>&2;
    exit 1
}

# Force error handling.
set -e
set -o pipefail

# Optionally, remove previous build.
#rm -rf "${BUILD_DIR}"

# Find CMake executable.
cmake=/Applications/CMake.app/Contents/bin/cmake
if [[ ! -e $cmake ]]; then
    cmake=cmake
    if ! [ -x "$(command -v cmake)" ]; then
        error "CMake is not installed." $LINENO;
    fi
fi

# Run CMake.
"$cmake" -H. -B "${BUILD_DIR}" -G "Unix Makefiles" \
    -DCMAKE_BUILD_TYPE=Debug \
    "$@" 1>/dev/null ;

# Compile.
cd "${BUILD_DIR}"
make

最后,只需要执行build.sh,并询问您得到的新错误(在一个新问题中,不要编辑当前错误)。
我是说,反复试验,这就是学习的方法。

相关问题