[学习笔记]C/C++和python程序编译成Linux下可执行文件
1. C/C++程序编译成可执行文件
参考b站上一位博主的教程(地址见参考1),利用cmake生成MakeFile进行编译,此处以一个自用的程序为例,记录一下整个编译过程
1.1 CMake安装
一般linux系统下已经安装了,此处我是在windows下用的ubuntu20.04子系统,系统本身带了cmake,输入camke --version可以查看版本。
1.2 制作CMakeList.txt
进入到包含所有程序源文件的文件夹下,创建CMakeList.txt,文件名区分大小写,输入以下内容:
PROJECT(muitCaldSTEC C CXX)
SET(SRC_LIST cal_dstec.c gamp.h ionex.c myMath.c myRinex.c myRtkcmn.c myStr.c results.cpp rtkcmn.c)
MESSAGE(STATUS "This is BINARY dir " ${muitCaldSTEC_BINARY_DIR})
MESSAGE(STATUS "This is SOURCE dir " ${muitCaldSTEC_SOURCE_DIR})
ADD_EXECUTABLE(muitCaldSTEC ${SRC_LIST})
- CMakeList.txt文件中语法在教程中有详细介绍,这里第一行PROJECT(muitCaldSTEC C CXX)中,muitCaldSTEC为生成的可执行文件名,C CXX表示程序语言包含C和C++;第二行给出了用到的源文件列表。
1.3 运行camke
准备好CMakeList.txt文件后,在当前文件夹下运行:
出现generating done表示正常生成,此时文件目录下生成了对应的MakeFile:
此时可以查一下MakeFile文件:
1.4 运行make
在当前目录下运行make进行编译,这个过程可能会比较长,如果出现报错,则需要根据相应的提示去原来的代码里排查错误。
最后出现[100%] Built target muitCaldSTEC表示成功生成可执行文件。
2. python程序编译成可执行文件
python程序编译相对来说比较简单,首先安装pyinstaller:(此处我的已经安装过)
再在包含脚本文件的文件夹下运行pyinstaller即可:
过程比较长,等结束后当前目录下会生成/dist/子目录,生成的可执行文件就在该目录下,
参考:
-
从零开始详细介绍CMake -
python脚本文件编译成可执行文件(.exe文件)
|