openSUSE:发布工程技巧

跳转到:导航搜索

openSUSE 发布工程中使用的技巧

切换 GCC 主要版本

GCC 主要版本打包在单独的软件包中,并且可以并行安装。有一些系统库,特别是 libgcc_s1,需要由一个 GCC 版本提供。通常情况下,发行版中可用的最高 GCC 版本需要提供该库,以便使用该版本编译的程序能够正常工作。有一些宏控制着 GCC 软件包

  • %gcc_version - 确定系统编译器版本
  • %product_libs_gcc_ver - 确定哪个 GCC 版本创建 libgcc_s1
  • %product_libs_gcc_ver_lib* - 确定哪个 GCC 软件包构建具有指定 soname 的库

为了将系统库迁移到新的编译器,建议

  1. 将项目的重建模式切换到“local”。这避免了随机软件包开始构建
  2. 调整新的编译器的 %product_libs* 宏
  3. 签入/触发新的编译器
  4. 触发旧的编译器
  5. 将项目切换回其原始重建模式
  6. 可能触发完全重建