我正在与团队一起开发Linux上的软件包,该软件包具有多个依赖项(静态库和二进制文件用作帮助工具)。依赖项是预编译的,并存储在以下结构中:
../dependencies/$configuration/include
../dependencies/$configuration/lib
../dependencies/$configuration/bin
...
其中,$configuration
可以是“release
”或“debug
”。
到目前为止,这种结构对我们来说运作良好。但现在,我们也希望支持64位版本的软件。因此,我必须存储所有依赖项的预编译64位版本。
一位同事建议在他们的项目中使用以下结构:
../dependencies/$configuration/include/x86
../dependencies/$configuration/include/x64
../dependencies/$configuration/lib/x86
../dependencies/$configuration/lib/x64
...
或其他建议:
../dependencies/mylib-32
../dependencies/mylib-64
../dependencies/mylib-32-dbg
../dependencies/mylib-64-dbg
但我不确定什么是正确的解决方案,并且在这方面知之甚少。我想采用一种易于扩展且被广泛接受的解决方案。
所以,我的问题是:存储不同版本的依赖项是否有最佳做法?
另外,应该如何决定什么是正确的方法?什么可能是重要的决定因素?