你拍了拍沐小九

编程基础

自学过程中遇到的问题

Problem1:homebrew安装gcc的问题

我的具体步骤如下:

打开终端

安装脚本:/bin/zsh -c “$(curl -fsSL https://gitee.com/cunkai/HomebrewCN/raw/master/Homebrew.sh)”

检测安装是否成功:输入brew help

出现一下信息则表示安装成功

安装gcc

输入brew install gcc

修改配置

输入“vim ~/.zprofile”回车后按下i键进入编辑模式,按如图所示的方式复制并修改以下的文本来更改系统的配置信息,

键入source ~/.zprofile更新环境,此时查看版本,按CSDN上的步骤,终端应该会显示如下然而我输入gcc –v之后,显示了

zsh:command not found:gcc-X

不太会修改环境变量,尝试重启终端失败,最后重启电脑之后,终端连brew都找不到了

(谢谢zygg的帮助!)

原因:配置出错

解决方法:我们首先把bashprofile,zprofile,zshrc之类的修改过的全删掉,然后重新source。而且Mac里是自带clang的gcc的,因此大概率不用重装。

Problem2:VScode多模块编译出现的问题

原因:未进入.c文件所在的文件夹,而是在上一级目录

解决方法:cd test_05_03

Problem3:

解决方法:参考https://blog.csdn.net/xuan9862/article/details/126120880

在.vscode下的json文件中手动输入需要编译的所有.c文件

Problem4:

文件夹下找不到.vscode文件

解决方法:点击运行,start debugging即可

VScode程序运行

Makefile学习笔记

1
2
3
## Version 1
hello:main.c print.c print1.c
gcc -o hello main.c print.c print1.c
1
2
3
4
5
6
7
8
9
10
11
12
13
14
## Version 2
CXX=gcc
TARGET=hello
OBJ=main.o print.o print1.o
$(TARGET):$(OBJ)
$(CXX) -o $(TARGET) $(OBJ)
main.o:main.c
$(CXX) -c main.c
print.o:print.c
$(CXX) -c print.c


print1.o:print1.c
$(CXX) -c print1.c
1
2
3
4
5
6
7
8
9
10
11
12
## Version 3
CXX=gcc
TARGET=hello
OBJ=main.o print.o print1.o
CXXFLAGS=-c -Wall //warning all
$(TARGET):$(OBJ)
$(CXX) -o $@ $^
%.o:%.c
$(CXX) $(CXXFLAGS) $< -o $@
.PHONY:clean //防止有个文件叫clean
clean:
rm -f *.o $(TARGET) //-f是强制删除
1
2
3
4
5
6
7
8
9
10
11
12
13
## Version 4
CXX=gcc
TARGET=hello
SRC=$(wildcard *.c) // 扩展通配符
OBJ=$(patsubst %.c,%.o,$(SRC)) // 替换通配符,patsubst把$(SRC)中的变量符合后缀是.c的全部替换成.o
CXXFLAGS=-c -Wall //warning all
$(TARGET):$(OBJ)
$(CXX) -o $@ $^
%.o:%.c
$(CXX) $(CXXFLAGS) $< -o $@
.PHONY:clean //防止有个文件叫clean
clean:
rm -f *.o $(TARGET) //-f是强制删除

CMake学习笔记

路径的一些小知识:

. 表示当前目录
.. 表示当前目录的上一级目录。
./表示当前目录下的某个文件或文件夹,视后面跟着的名字而定
../表示当前目录上一级目录的文件或文件夹,视后面跟着的名字而定。

CMake安装

官网下载,启动程序后从菜单栏中选择【Tools】,然后从下拉菜单中选择“How to Install For Command Line Use”,我建议使用第二种,若使用第一种重新打开命令行时系统仍无法识别CMake命令

第一种:

第二种:

CMake基本语法
1
2
3
4
## Version1
cmake_minimum_required(VERSION 3.10)
project(hello)
add_executive(hello main.c print.c print1.c)
1
2
3
4
5
6
## Version2
PROJECT(MAIN)
SET(SRC_LIST main.c print.c print1.c)
message(STATUS "This is BINARY dir" ${MAIN_BINART_DIR})
message(STATUS "This is SOURCE dir" ${MAIN_SOURCE_DIR})
add_executable(main ${SRC_LIST})
1
2
3
4
5
6
7
## Version3
cmake_minimum_required(VERSION 2.8)
project(main)
set(EXECUTABLE_OUTPUT_PATH ${PROJECT_SOURCE_DIR}/bin)
aux_source_directory (src SRC_LIST)
include_directories (inc)
add_executable (main ${SRC_LIST})
cmake命令行使用

Git

用homebrew安装简直不要太香(

案例代码上传至github:

""

p

(Gitlab登不上去?)