如何在ROOT中编译多个文件

wro*_*ame 3 c++ compilation root-framework

我写了一个C++程序(有一个main.cpp,各种标题和实现文件),可以在g ++下编译.现在我试图在Cern的ROOT库中编译它,但我不知道如何,因为我知道如何在ROOT中编译文件的唯一方法是使用.L main.cpp.

如何在ROOT中包含多个文件?

and*_*ley 6

使用ROOT的最可靠方式(至少在历史上和当前)是忽略解释器而不是最简单的探索,并明确地编译您的C++程序对ROOT库.例如,使用

g++ MySource.cc `root-config --libs --cflags` -o foo
Run Code Online (Sandbox Code Playgroud)

从单个源文件编译可执行文件"foo".有关该帮助程序脚本的更多信息,请运行"root-config --help".

多文件程序/库没有什么特别之处,前提是您提供了指向ROOT库和头文件所需的args(并且在运行时可以在LD_LIBRARY_PATH中使用这些库.)标准C++指南将在需要时解释该步骤.您也可以放心地将它放入makefile中.

对于我的钱,这比使用CINT解释器中的.L等命令更容易,更可靠.上次我试过,ACLiC实际上正在编译指定源文件的临时(和损坏)版本,所以来自编译器的任何错误消息都是无用的!