Flint库将所有 header 放入$PREFIX/include/flint/
中。然后Arb库包含Flint头。对于Arb来说,包括以下两种是更好的做法:
#include "flint.h"
#include "flint/flint.h"
优点缺点:
如果Arb和Flint是安装在
/usr/include
中的(例如在Debian中),则使用2.时,用户无需执行任何操作,但是使用1.时,用户需要使用-I/usr/include/flint
因此2.的优点是,使用Arb库的用户只需要为所有需要的库指定
-I
的包含路径($PREFIX/include
)。对于1.,必须包含路径$PREFIX/include/flint
,因此似乎需要更多工作。 最佳答案
始终使用相对于/usr/include
的路径。这样,您的代码将在大多数UNIX系统上开箱即用,并且避免名称冲突(请考虑 header util.h
)。
一旦需要将项目移植到对开发人员不太友好的平台(主要是Windows),您的构建系统就需要确定依赖项的位置并设置适当的编译器开关。
关于c++ - 包括 “flint.h”或 “flint/flint.h”是更好的做法,我们在Stack Overflow上找到一个类似的问题:https://stackoverflow.com/questions/26468980/