第 7 章 编译器和工具


pcp rebase 到版本 3.11.8

Performance Co-Pilot 应用程序(PCP)已升级到上游版本 3.11.81,它提供很多程序错误修复和增强。主要改进包括:
  • 添加了一个新的客户端工具 pcp2influxdb,允许将性能指标值导出到 influxdb 数据库。
  • 添加了新的客户端工具 pcp-mpstatpcp-pidstat,以允许重新执行对 mpstat 和 pidstat 值的重新介绍。
  • 为设备映射器、Ceph 设备、cpusched cgroup、每个处理器软 IRQs、buddy infozoneinfo、共享内存、libvirt、同一页面共享共享、LOLA、LOHI 和 Docker 增加了新的性能指标。
  • 现在,为各种 PCP 分析工具提供了来自多个子系统的其他性能指标。(BZ#1423020)

systemtap rebase 到版本 3.1

systemtap 软件包升级至上游版本 3.1,它提供很多程序错误修复和增强。主要变更包括:
  • 系统调用的探测不再默认基于 debuginfo 信息。
  • 添加了对探测 Python 功能的支持。
  • Java 功能参数的访问变得更加统一。
  • 改进了统计聚合变量的性能。
  • 添加了一个新的统计 operator @variance
  • 添加了用于获取和设置用户空间值的更多选项。
  • 通过示例改进了 NFS 监控
脚本和 tapset 兼容性修复。(BZ#1398393, BZ#1416204, BZ#1433391)

valgrind rebase 到版本 3.12

valgrind 软件包升级至上游版本 3.12,它提供了大量的程序错误修复和增强。主要变更包括:
  • 在 memcheck 工具中添加了一个新的 --ignore-range-below-sp 选项,以忽略堆栈指针下的内存访问。这是现在已弃用的选项 --workaround-gcc296-bugs=yes 的一个通用替代选项。
  • --gen-suppressions=yes 选项生成的隐藏条目中的最大调用数现在等于 --num-callers 选项给出的值。
  • 对于最常见用例,工具代码块的成本是 AMD64 和 Intel 64 构架中的 memcheck 工具。
  • 对调试程序进行了改进,它丢弃了大量指令地址范围为 8KB 或者更少。
  • 添加了对 IBM Power 9(ISA 3.0)架构的支持。
  • 添加了对 AMD FMA4 指令的部分支持。
  • 添加了对 64 位 ARM 架构版本 8 的加密和 CRC 指令的支持。(BZ#1391217)

新软件包: unitsofmeasurement

unitsofmeasurement 软件包在 Java 代码中启用表达测量单位。随着新的 API 用于测量单位,物理量处理变得更加容易,而且容易出错。软件包的 API 高效使用内存和资源。(BZ#1422263)

现在,在 Python 标准库中默认启用 HTTP 客户端的 SSL/TLS 证书验证

在 Python 标准库中更改了 HTTP 客户端的默认全局设置,以默认验证 SSL/TLS 证书。使用基于文件配置的文件配置不会受到影响。详情请查看 https://access.redhat.com/articles/2039753。(BZ#1219110)

添加了对 %gemspec_add_dep%gemspec_remove_dep 的支持

在这个版本中,增加了对 %gemspec_add_dep%gemspec_remove_dep macros 的支持。这些宏可以更轻松地调整 rubygem-* 软件包依赖项。另外,所有当前的宏都扩展为改进对预发行包版本的支持。(BZ#1397390)

ipmitool rebase 到版本 1.8.18

ipmitool 软件包升级至上游版本 1.8.18,它提供了大量的程序错误修复和增强。主要变更包括:
  • 重新设计 PEF 用户界面
  • 为 IP 版本 6 局域网参数添加了新的子命令 lan6
  • 添加了对 VITA 特定感器类型和事件的支持
  • 添加了对 HMAC_MD5 和 HMAC_SHA256 加密的支持
  • 添加了对检查 PICMG 扩展 5.x 的支持
  • 添加了对 USB 介质作为新通信接口的支持
  • 对于 GNU Linux 系统(BZ#1398658))默认启用 USB 驱动程序。

lshw 针对 IBM Power 的 little-endian 变体更新

lshw 软件包提供了机器硬件配置的详细信息,它为 IBM Power System 的 little-endian 变体更新。(BZ#1368704)

perf 现在支持 Intel Xeon v5 上的未核事件

在这个版本中,Linux(perf)的性能分析工具已更新,以支持 Intel Xeon v5 服务器 CPU 上的未核事件。这些事件为高级用户提供额外的性能监控信息。(BZ#1355919)

dmidecode 已更新

dmidecode 软件包已更新至更新的版本,它提供一些程序错误修复和硬件启用改进。(BZ#1385884)

iSCSI 现在支持使用 targetcli配置 ALUA 操作

对于从启动器到目标的多个路径,您可以使用 Asymmetric Logical Unit Assignment(ALUA)来配置有关如何以非统一方式使用路径的首选项。Linux-IO(LIO)内核目标始终支持此功能。借助此次更新,您可以使用 targetcli 命令 shell 来配置 ALUA 操作。(BZ#1243410)

jansson rebase 到版本 2.10

jansson 库已更新至 2.10 版本,它提供了几个程序错误修复和增强。值得注意的是,添加了支持 clevistangjose 应用程序的接口。(BZ#1389805)

egrepfgrep的新兼容性环境变量

在以前的 grep rebase 中,egrepfgrep 命令分别被 grep -Egrep -F 替代。这个更改可能会影响客户脚本,因为只在 ps 命令之外显示 grep。为防止出现这个问题,这个更新引入了一个新的兼容性环境变量: GREP_LEGACY_EGREP_FGREP_PS。要在 ps 输出中保留显示 egrepfgrep,请将变量设置为 1:
GREP_LEGACY_EGREP_FGREP_PS=1
Copy to Clipboard Toggle word wrap
(BZ#1297441)

lastcomm 现在支持 --pid 选项

lastcomm 命令现在支持 --pid 选项。此选项显示内核支持的每个记录的进程 ID(PID)和父进程进程 ID(PPID)。(BZ#1255183)

新软件包: perl-Perl4-CoreLibs

Red Hat Enterprise Linux 7 基本频道中提供了一个新的 perl-Perl4-CoreLibs 软件包。这个软件包包含之前在 Perl 4 中可用的库,但已从 Perl 5.16 中删除,它随 Red Hat Enterprise Linux 7 一起发布。在以前的版本中,这些库通过 Optional 频道在 Perl 子软件包中提供。(BZ#1366724)

现在,tar 在从存档中提取时会显示到目录的符号链接

在这个版本中,在 tar 命令中添加了 --keep-directory-symlink 选项。当它遇到与要提取的目录同名的符号链接时,此选项会更改 tar 的行为。默认情况下,tar 会首先删除符号链接,然后继续提取目录。--keep-directory-symlink 选项禁用此行为,并指示 tar 在从存档中提取时跟踪至目录的符号链接。(BZ#1350640)

IO::Socket::SSL Perl 模块现在支持限制 TLS 版本

Net:SSLeay Perl 模块已被更新,以支持 TLS 协议版本 1.1 或 1.2 的显式规格以提高安全性,并且 IO::Socket::SSL 模块已更新。创建新的 IO::Socket::SSL 对象时,现在可以通过将 SSL_version 选项设置为 TLSv1_1TLSv1_2 将 TLS 版本限制为 1.1 或 1.2。另外,可以使用 TLSv11TLSv12。请注意,这些值区分大小写。(BZ#1335035)

Net:SSLeay Perl 模块现在支持限制 TLS 版本

Net:SSLeay Perl 模块已更新,以支持 TLS 协议版本的明确规格,可用于提高安全性。要将 TLS 版本限制为 1.1 或 1.2,请将 Net::SSLeay::ssl_version 变量设置为 1112。(BZ#1335028)

wget 现在支持 TLS 协议版本规格

在以前的版本中,在连接到远程服务器时,wget 工具默认使用最高 TLS 协议版本 1.2。在这个版本中,wget 已被改进,允许用户通过在 wget 命令中添加 --secure-protocol=TLSv1_1--secure-protocol=TLSv1_2 命令行选项来显式选择 TLS 协议次要版本。(BZ#1439811)

tcpdump rebase 到版本 4.9.0

tcpdump 软件包升级至上游版本 4.9.0,它提供了大量的程序错误修复和增强。主要变更包括:
  • 修复了多个安全漏洞
  • 在常见网络协议的交集中已进行大量改进
  • 默认 snaplen 功能已增加到 262144 字节
  • 捕获缓冲区已扩大到 4 MiB(BZ#1422473)

tcpdump 的捕获方向从 -P 改为 -Q的选项

在以前的版本中,Red Hat Enterprise Linux 中的 tcpdump 工具使用 -P 选项在上游版本使用了 -Q 时设置捕获方向。实现了 -Q 选项,现在首选。P 选项会将 之前的功能保留为 -Q 的别名,但会显示警告。(BZ#1292056)

OpenJDK 现在支持 64 位 ARM 架构上的 SystemTap

OpenJDK 平台现在支持使用 64 位 ARM 架构的 SystemTap 检测工具进行内省。(BZ#1373986)

sos rebase 到版本 3.4

sos 软件包已更新至上游版本 3.4,它提供了一些改进、新功能和程序错误修复,其中包括:
  • ceph_ansible 增加了新的插件、collectdcryptodracut、dracut、gnocchi、jar、nfs ganeshanodejsnpmopenstack_ansibleopenstack_instackopenstack_manilasaltsaltmasterStorageconsole
  • API 插件增强
  • 国际更新
  • 当网络名称包含单引号字符 "时,网络插件不再崩溃。
  • foreman-debug 插件现在使用更长的超时来运行,以防止收集的不完整 foreman-debug 信息
  • 不再收集某些私有 SSL 证书文件(BZ#1414879)

targetd rebase 到版本 0.8.6

targetd 软件包已升级到上游版本 0.8.6,它提供很多程序错误修复和增强。值得注意的是,targetd 服务现在在 Python 2 或 Python 3 运行时中运行,并添加了以下 API: initiator_list,access_group_list,access_group_create,access_group_destroy,access_group_init_addaccess_group_init_delaccess_group_map_listaccess_group_map_create,以及 access_group_map_destroy
主要程序错误修复包括:
  • targetd 现在与 JSON-RPC 响应版本 2.0 兼容。
  • export_create API 现在可用于将相同的 LUN 映射到多个启动器。
  • targetd 现在确保在启动时存在 SSL 证书。(BZ#1162381)

shim rebase 到版本 12-1

在这个版本中,shim 软件包升级至上游版本 12-1,它提供了大量的程序错误修复和增强。值得注意的是,增加了对 32 位 UEFI 固件和可扩展固件接口(EFI)实用程序的支持。(BZ#1310766)

rubygem-abrt rebase 到版本 0.3.0

rubygem-abrt 软件包已更新至版本 0.3.0,它比之前的版本提供一些程序错误修复和增强。值得注意的是:
  • Ruby ABRT 处理程序现在支持 uReports,自动匿名微reports。启用 uReports 后,开发人员会及时通知应用程序问题,并且能够更快地修复错误并解决问题。
  • 在以前的版本中,当 Ruby 应用程序使用 Bundler 管理其依赖项和发生错误时,会使用不正确的逻辑来加载 Ruby ABRT 处理程序的组件。因此,为用户报告意外的 LoadReport 错误,而不是正确的 ABRT 报告。现在,加载的逻辑已被修复,Ruby 应用程序错误会被正确处理并使用 ABRT 报告。(BZ#1418750)

新软件包: http-parser

新的 http-parser 软件包提供了解析 HTTP 信息的工具。它解析请求和响应。解析器设计为在管理 HTTP 性能的应用中使用。它不会使任何系统调用或分配,它不会缓冲数据,并且可以随时中断。根据您的构架,每个消息流只需要大约 40 字节的数据。(BZ#1393819)

Intel 和 IBM POWER 事务内存支持所有默认的 POSIX mutexes

默认的 POSIX mutexes 可以使用 Intel 和 IBM POWER 事务内存支持透明地替换,这可显著减少锁定购置成本。要启用对所有默认的 POSIX mutexes 的事务内存支持,请将 RHEL_GLIBC_TUNABLES=glibc.elision.enable 环境变量设置为 1。因此,可以提高某些应用程序的性能。
建议开发人员使用性能分析来决定是否启用此功能,以提高其应用程序的性能。(BZ#841653, BZ#731835)

glibc 现在支持组合并

glibc 中添加了对来自不同名称服务模块的组成员的功能。因此,对跨多个主机的集中用户访问控制和组成员身份的管理现在变得更加容易。(BZ#1298975)

glibc 现在支持 IBM POWER9 架构中优化的字符串比较功能

glibc 库中的字符串比较功能 strcmpstrncmp 已针对 IBM POWER9 架构进行了优化。(BZ#1320947)

提高了使用 Intel SSE、AVX 和 AVX512 功能动态载入的库的性能

使用 Intel SSE、AVX 和 AVX512 功能的库载入已更新。因此,在载入这些库时性能有所改进。另外,增加了对 LD_AUDIT 风格的审计的支持。(BZ#1421155)

elfutils rebase 到版本 0.168

elfutils 软件包升级至上游版本 0.168,它提供了大量的程序错误修复和增强:
  • eu-readelf 程序的选项 --symbols 现在允许选择部分来显示符号。
  • 创建 ELF/DWARF 字符串表的新功能已添加到 libdw 库中。
  • DW_LANG_PL1 常量已改为 DW_LANG_PLI。之前的名称仍被接受。
  • libelf 库的 gelf_newehdrgelf_newphdr 功能的返回类型已被修改为 void*,用于与其他 libelf 实现的源兼容性。这个更改会保留对 Red Hat Enterprise Linux 支持的所有平台的二进制兼容性。(BZ#1400302)

bison rebase 到版本 3.0.4

bison 软件包升级至上游版本 3.0.4,它提供了大量的程序错误修复和增强:
  • 修复了因小心错误造成的无结束诊断问题。
  • 现在,添加了 -Werror=CATEGORY 选项,以将指定的警告视为错误。不能使用 -W 选项显式激活警告。
  • 处理优先规则和无用规则的许多改进。
另外,引进了以下更改会破坏向后兼容性:
  • 以下功能已弃用: YYFAIL,YYLEX_PARAM,YYPARSE_PARAM,yystype,yyltype
  • 不再自动添加操作末尾的分号。
  • 要在 autoconf 实用程序版本 2.69 及更早版本中使用 Bison 扩展,请将选项 -Wno-yacc 传递给 (AM_)YFLAGS。(BZ#1306000)

系统默认 CA 捆绑包在 Mutt中的编译的默认设置或配置中被设置为默认值

在以前的版本中,当通过 TLS/SSL 连接到新系统时,Mutt 电子邮件客户端需要用户保存证书。在这个版本中,系统证书颁发机构(CA)捆绑包会被默认设置为 Mutt。现在,Mutt 通过 SSL/TLS 连接到具有有效证书的主机,而不提示用户批准或拒绝证书。(BZ#1388511)

objdump 混合列表加快

在以前的版本中,用于解析 DWARF debug 信息和查找源代码的 BFD 库非常慢。BFD 库被 objdump 工具使用。因此,在生成源代码混合列表和解装时,objdump 会变得非常慢。BFD 库的性能有所提高。因此,生成带有 objdump 的混合列表速度更快。(BZ#1366052)

ethtool 支持来自 fjes 驱动程序的人类可读输出

ethtool 实用程序已被改进,以提供来自 fjes 驱动程序的注册转储输出的人类可读形式。因此,ethtool 的用户可以更加快速地检查 Fujitsu Extended Socket Network Device 驱动程序。(BZ#1402701)

ecj rebase 到版本 4.5.2

ecj 软件包升级至上游版本 4.5.2,它提供了大量的程序错误修复和增强。值得注意的是,已完成对添加到版本 8 中的 Java 语言的功能的支持。因此,使用 Java 8 功能编译 Java 代码不再会失败。这包括不使用 Java 8 功能使用这些功能所引用的代码的情况,比如 Java Runtime Environment 提供的系统类。(BZ#1379855)

rhino rebase 到版本 1.7R5

rhino 软件包升级至上游版本 1.7R5,它提供了大量的程序错误修复和增强。值得注意的是,在解析正则表达式时,以前的问题已被修复。使用 Rhino 的应用程序之前遇到此错误现在可以正常工作。(BZ#1350331)

scap-security-guideoscap-docker 现在支持容器

用户现在可以使用 oscap-docker 实用程序和 SCAP 安全指南来评估容器或容器镜像的合规性,而无需遇到假的正结果。现在,容器上下文(如分区)没有意义的测试(如分区)被设置为 不适用 值,现在可以使用所选安全策略扫描容器。(BZ#1404392)
返回顶部
Red Hat logoGithubredditYoutubeTwitter

学习

尝试、购买和销售

社区

关于红帽文档

通过我们的产品和服务,以及可以信赖的内容,帮助红帽用户创新并实现他们的目标。 了解我们当前的更新.

让开源更具包容性

红帽致力于替换我们的代码、文档和 Web 属性中存在问题的语言。欲了解更多详情,请参阅红帽博客.

關於紅帽

我们提供强化的解决方案,使企业能够更轻松地跨平台和环境(从核心数据中心到网络边缘)工作。

Theme

© 2025 Red Hat