首页
/ Bear 3.1.6版本发布:编译器支持全面升级

Bear 3.1.6版本发布:编译器支持全面升级

2025-06-10 15:23:33作者:裘晴惠Vivianne

Bear是一个用于生成编译数据库(compilation database)的工具,它能够记录软件构建过程中的编译命令。这些信息对于代码分析工具、IDE集成以及构建系统优化都非常有价值。最新发布的3.1.6版本带来了多项重要更新,特别是增加了对多种编译器的支持。

新增编译器支持

本次更新最显著的特点是增加了对多种编译器的支持,使得Bear能够更好地适应不同的开发环境:

  1. Intel编译器支持:新增了对ifort(Intel Fortran编译器)和ifx(Intel下一代Fortran编译器)的支持,这对于科学计算和高性能计算领域的开发者特别有价值。

  2. Fortran前端支持:增加了对ftnfe(Fortran前端)的支持,进一步扩展了Fortran语言生态的兼容性。

  3. LLVM Flang支持:LLVM项目中的Flang Fortran编译器现在也得到了支持,这为使用LLVM工具链的开发者提供了便利。

  4. 交叉编译支持:新增了对xgcc和xg++(交叉编译工具链)的支持,这对于嵌入式开发和跨平台构建非常重要。

问题修复与改进

除了新增功能外,3.1.6版本还包含了一些重要的修复和改进:

  1. 编译器调用处理优化:改进了对cc和c++编译器调用的处理,现在能够正确处理带有前后缀的编译器调用,提高了工具的鲁棒性。

  2. 标准库头文件修复:添加了缺失的标准库头文件,解决了潜在的编译问题。

  3. 构建系统改进:在CMake配置中添加了BUILD_ALWAYS选项,确保BearSource能够正确重建,提高了开发体验。

技术意义与应用场景

Bear 3.1.6版本的这些更新对于以下场景特别有价值:

  1. 多语言项目:特别是同时使用C/C++和Fortran的科学计算项目,现在可以获得更完整的编译数据库。

  2. 交叉编译环境:嵌入式开发者在使用交叉编译工具链时,能够更准确地捕获编译命令。

  3. LLVM生态集成:使用LLVM工具链(特别是Flang)的项目现在可以无缝集成Bear。

  4. 持续集成系统:构建可靠性的提高使得Bear在自动化构建系统中表现更加稳定。

总结

Bear 3.1.6版本通过扩展编译器支持和修复关键问题,进一步巩固了其作为编译数据库生成工具的地位。对于依赖编译数据库进行代码分析、IDE集成或构建优化的开发者来说,这个版本提供了更广泛的兼容性和更好的可靠性。特别是对于科学计算和嵌入式开发领域的团队,这些更新将显著改善他们的开发工作流程。

登录后查看全文
热门项目推荐
相关项目推荐

项目优选

收起
docsdocs
暂无描述
Markdown
831
5.51 K
kernelkernel
openEuler内核是openEuler操作系统的核心,既是系统性能与稳定性的基石,也是连接处理器、设备与服务的桥梁。
C
495
520
ops-transformerops-transformer
本项目是CANN提供的transformer类大模型算子库,实现网络在NPU上加速计算。
C++
978
2.31 K
pytorchpytorch
作为 Ascend for PyTorch 社区的核心组件,TorchNPU 是昇腾专为 PyTorch 打造的深度学习适配插件,使 PyTorch 框架能够直接调用昇腾 NPU,为开发者提供昇腾 AI 处理器的超强算力。
Python
806
1.16 K
ops-nnops-nn
本项目是CANN提供的神经网络类计算算子库,实现网络在NPU上加速计算。
C++
794
1.59 K
kernelkernel
deepin linux kernel
C
32
16
AscendNPU-IRAscendNPU-IR
AscendNPU-IR是基于MLIR(Multi-Level Intermediate Representation)构建的,面向昇腾亲和算子编译时使用的中间表示,提供昇腾完备表达能力,通过编译优化提升昇腾AI处理器计算效率,支持通过生态框架使能昇腾AI处理器与深度调优
C++
486
314
jiuwenswarmjiuwenswarm
JiuwenSwarm 是一款基于openJiuwen开发的智能AI Agent,它能够将大语言模型的强大能力,通过你日常使用的各类通讯应用,直接延伸至你的指尖。
Python
3.03 K
779
ops-mathops-math
本项目是CANN提供的数学类基础计算算子库,实现网络在NPU上加速计算。
C++
1.21 K
1.26 K
cann-learning-hubcann-learning-hub
CANN 学习中心仓,支持在线互动运行、边学边练,提供教程、示例与优化方案,一站式助力昇腾开发者快速上手。
Jupyter Notebook
662
301