一、编译执行文件
g++ -o ctr ctr_analysis.cpp `root-config --cflags` `root-config --libs` -lSpectrum -lMLP -lTreePlayer -lTree
这个命令是用于编译和链接您的 C++ 代码,以创建一个名为 "ctr" 的可执行文件。
-
g++
: 这是 GNU 编译器集合中的 C++ 编译器。 -
-o ctr
: 这部分指定输出文件的名称为 "ctr"。编译完成后,将生成一个名为 "ctr" 的可执行文件。 -
ctr_analysis.cpp
: 这是您要编译的源代码文件的名称。在这里,"ctr_analysis.cpp" 是您的源代码文件的名称。 -
root-config --cflags
: 这部分使用命令替换,root-config --cflags
将被替换为一组编译选项,这些选项将使您的程序能够与 ROOT 库一起工作。这些编译选项将包含 ROOT 头文件的路径等信息。 -
root-config --libs
: 类似于上面的部分,这部分也使用命令替换,root-config --libs
将被替换为一组链接选项,这些选项将使您的程序能够正确链接 ROOT 库。这些链接选项将包含 ROOT 库的路径和名称。 -
-lSpectrum -lMLP -lTreePlayer -lTree
: 这些部分指定要链接的库的名称。在这里,"-l" 后面跟着库的名称,例如 "-lSpectrum" 指定链接 Spectrum 库,"-lMLP" 指定链接 MLP 库,依此类推。
综合起来,这个命令的作用是将 "ctr_analysis.cpp" 编译成一个名为 "ctr" 的可执行文件,并且会链接 ROOT 库以及其他相关的库,以支持分析工作。
二、确保包含可以执行的文件和数据文件之后,进行编译
数据文件为DAT文件
./ctr
运行 ./ctr
命令会执行名为 "ctr" 的可执行文件。根据之前的讨论,您使用了 g++
编译器将 ctr_analysis.cpp
编译成了一个可执行文件 "ctr"。现在,通过运行 ./ctr
命令,您正在尝试执行这个编译后的可执行文件。
编译完成,进行
root -l
进入root后进行
.x SiPM_DOI2.c
得出结果图