为了开发/测试我们的CFD代码,我喜欢经常在Clang(严格/警告)和GCC(性能)之间切换,但是这需要一些依赖性(例如NetCDF)与相同的编译器
我知道Homebrew可以选择在它们之间安装多个版本的软件side-by-side和switch,但可以使用相同的软件版本执行类似的操作,但使用不同的编译器进行编译(设置HOMEBREW_CC
和HOMEBREW_CXX
)?
像(一厢情愿的想法,以某种方式安装NetCDF与Clang和GCC ):
brew switch netcdf 4.3.3-gcc
brew switch netcdf 4.3.3-clang
答案 0 :(得分:2)
我认为只有当您明确拥有不同的版本号时才有可能这样,例如您使用的示例" 4.3.3-gcc"和" 4.3.3-clang"。
如果版本号相同,则构建版本没有区别,brew不能区分它们。
我也不会这样做。
我不建议这样做,这太麻烦了。
但是,如果你真的需要两个版本(例如用于测试),那么我会将它们构建到系统路径之外的隔离文件夹树中,并在那里对它们进行任何测试。 Brew不是解决此问题的最佳方法,因为这是一个非标准的用例。