使用biicode指定备用源文件目录

时间:2015-02-20 04:14:32

标签: c++ travis-ci biicode

我正在尝试使用biicode管理我的project的依赖项,以便我可以自动执行boost或sqlite之类的东西并使用travis-ci

根据我的理解,bii希望您的源文件位于您的块的根文件夹中,如教程中提到的那样:

|-- my_project
|    +-- bii
|    +-- bin
|    +-- blocks
|    |    +-- myuser
|    |    |     +-- my_block
|    |    |     |     |-- main.cpp
|    |    |     |     |-- biicode.conf

但就我而言,源文件就像这样

|-- my_project
|    +-- bii
|    +-- bin
|    +-- blocks
|    |    +-- myuser
|    |    |     +-- my_block
|    |    |     |     |-- src
|    |    |     |     |    +--folderA
|    |    |     |     |    |    +--core
|    |    |     |     |    |        |-- various .cpp
|    |    |     |     |    |    +--impl
|    |    |     |     |    |        |-- various .cpp
|    |    |     |     |    |-- various .cpp
|    |    |     |     |-- biicode.conf

并且运行配置会遗漏这些文件夹

bii cpp:configure

我已阅读有关biicode.conf的文档,但它没有提及源文件的替代路径。

所以我的问题是,我是否真的需要将所有内容都放在一个平面目录中,每个源文件都在同一个文件夹中以使用biicode? 编辑:我忘了提到我正在尝试构建一个库(用于另一个bii项目),而不是可执行文件

1 个答案:

答案 0 :(得分:1)

您可以在blocks/my_user/my_block内按自己喜欢的方式对块进行排序。例如,看看这个块:

fenix/flatbuffers block

这里有一个没有任何模式的结构。

除了其他功能之外,

biicode.conf可以帮助您告诉biicode您的头文件(但不是源代码文件)所在的位置,感谢[paths]部分,因为源代码生物代码会自动检测到它们,否则您可以使用[dependencies]部分自定义您的依赖项。

使用此布局制作示例:

|-- my_project
|    +-- bii
|    +-- bin
|    +-- blocks
|    |    +-- myuser
|    |    |     +-- my_block
|    |    |     |     |-- src
|    |    |     |     |    +--folderA
|    |    |     |     |    |    +--core
|    |    |     |     |    |        |-- core.h
|    |    |     |     |    |        |-- core.cpp
|    |    |     |     |    |    +--impl
|    |    |     |     |    |        |-- impl_ext.h
|    |    |     |     |    |        |-- impl.h
|    |    |     |     |    |    +--src
|    |    |     |     |    |        |-- impl.cpp
|    |    |     |     |    |        |-- impl_ext.cpp
|    |    |     |     |    |-- CMakeLists.txt
|    |    |     |     |-- biicode.conf
|    |    |     |     |-- CMakeLists.txt

然后,您的.cpp文件可能包含相对包含的内容:

#include "core/core.h"
#include "impl/impl.h"
#include "impl/impl_ext.h"

假设您的CMakeLists.txt文件是正确的,您只需告诉biicode必须搜索此“相对”标头的位置,因此请写入biicode.conf

[paths]
   folderA/core
   folderA/impl

我希望它能解决你的疑虑! ;)