小创学习记录

发布时间:2023年12月18日

ubuntu里面c++编译环境创建:多个文件g++ 1.cpp 2.cpp 3.cpp 创建连接编译成功,查看目标文件./?? .out?? 运行即可;

或者使用gcc: g++ -c??? x.cpp? 生成.o 文件、如果引用别人的库要加lstd? 因为gcc是对c语言编程的

g++不用写hpp,因为在预处理过程中已经链接了,gcc 或者g++是链接库

c++里面的类

makefile 和 cmake :

makefile作用:检查哪些需要编译、哪些不用再编译;实现编译过程管理

target?? :?? prerequisites??? recipe??? target可以指向空??? 如果前一个比后一个老,需要更新就会执行后面的,然后在执行里面使用touch更新文件时间就会更新之前文件的时间

.o文件比.cpp文件时间新的,就不用生成.o

cmakefile中hello:? echo "hello" 如果目标不存在就会执行echo?? 解释逻辑关系

//目标是为了创建a.out文件,链接
a.out:main.o Car.o Help.out	
	g++ mian.o Car.o Help.o -o a.out
	

main.o:main.cpp
	g++ -c main.cpp -o mian.o

Help.o :Help.cpp
	g++ -c Help.cpp -o Help.o


//目标是为了执行创建.o文件,如果Car.cpp更新了
Car.o:Car.cpp
	g++ -c Car.cpp -o Car.o

. 当前目录? ..上一级目录

echo 类似于printf 调用输出;echo "1234":输出字符串;echo?? $name :输出变量值

加了下一行代码之后 make clean清除.o 和.out文件? 并且可以make正常生成

clean:
	rm -f ./*.o a.out

makefile 如果有很对cpp就有很多行.o生成,Cmake可以简化这一步骤??

cmake_minimum_required(VERSION 3.10)

project(img1)

find_package(OpenCV REQUIRED)

add_executable(img test.cpp)

target_link_libraries(img ${OpenCV_LIBS})

运行 cmake ../????? make????? ./a.out??

python 入口函数

文章来源:https://blog.csdn.net/weixin_64612422/article/details/134911900
本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。