问题标签 [xlc]
For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.
c++ - xlC 警告,“NOSTRICT 选项有可能改变程序的语义”
我正在 GCC Compile Farm 和 GCC119 上进行测试。GCC119 是带有 xlC 13.1 编译器的 AIX 机器。我对平台和编译器知之甚少。
当我在 xlC 下构建时:
编译器的 IBM 手册位于Compiler Reference v13.1。它没有提到STRICT
或NOSTRICT
。基于关键字搜索的最接近的是对__C99_RESTRICT
何时-qkeyword=restrict
生效的讨论。此外,没有手册页:
当我编译时-qflag=w
警告消失,所以我可以使用的信息更少。(库和程序用 干净地编译-qflag=w
)。
我有两个问题。首先,xlC 到底在抱怨什么?其次,是否可以选择让 xlC 告诉我它抱怨的源文件和行号?
c - xlC 和类型“vector unsigned int”和“int”之间的操作是不允许的
我正在尝试在 PPC64-LE 上编译源文件。我正在使用 xlC 编译器并且编译失败。GCC 接受该程序,所以我不确定问题的原因是什么。
这是命令行:
这是编译错误:
这是源文件的相关部分。源文件是另一个问题的简化案例,它可以在 GitHub 上找到。
__builtin_crypto_vcipher
是内置的 GCC,IBM 声明xlC 支持它。
第 118 行与上面显示的所有其他行一样,但它不会触发警告或错误。
有什么问题,我该如何解决?
c - 13.1.4 之前的 LXVD2X 有内置的 XL C 吗?
我正在使用内置的 C/C++ 工作。我需要将lvd2x
未对齐的数据加载到 VMX 寄存器中的指令。它看起来lvd2x
在 Power7 和 Power8 处理器上可用。
GCC 提供了vec_vsx_ld
内置的执行任务。根据IBM XL C/C++ for Linux, V13.1.5第 4 章,版本 13.1.4 中添加的增强功能:
新的内置功能
支持以下 GCC 矢量内置函数:
- vec_vsx_ld
- ...
代码是为 XL C 保护的,所以我不需要 GCC 的内置程序。问题是,我找不到 XL C 的内置功能lvd2x
:
GCC 编译场为 AIX 提供 XL C v13.1.3(5725-C72、5765-J07)。13.1.4 之前的 LXVD2X 有内置的 XL C 吗?如果有内置的,那么它是什么?如果没有,那么我们如何访问指令?
(我试图避免 ASM 和内联 ASM。我对编写它的处理器了解不够。我也有过相当不愉快的经历,我不想通过尝试使用 asm 来扩大痛苦)。
c - 参数类型对于此链接类型的函数无效
我正在使用 IBM 的 XL C 编译器在 AIX 上工作。我遇到了一个编译错误,我不确定如何继续:
相关源代码如下所示。完整的源代码可在fips197-p8.c
. 源代码是 Power 8__cipher
和__vcipherlast
. 它有一个主函数和几个 C 函数。Effectively 是 Power 8 AES 的最小完整工作示例。
编译器版本如下所示。我们不控制编译器,所以这就是我们所拥有的:
vec_xl
在 little-endian 上很好。vec_xl
因为 big-endian 给我们带来了麻烦。
有什么问题,我该如何解决?
optimization - IBM XL C/C++ 等效于#pragma GCC 优化
我们在 PowerPC 平台上使用 IBM XL C/C++ 为源文件生成错误的代码。-O3
它的表面是一个挂起,看起来一个特定的循环没有被打破。
该问题仅在 XL C/C++ 下出现。我们的测试制度表明源文件没有未定义的行为、内存错误和其他勘误。我们也不会从编译器收到源文件的严格/不严格警告。
我们想编译源文件-O2
而不是-O3
. 我们想在源文件中添加工具,如编译指示,以便编译器可以适当地保护它。该仪器允许其他人连接其他构建系统,如 Cmake 和 Autotools,并且事情将为他们“正常工作”。(必要的信息在源代码中而不是我们的 makefile 中可用)。
编译器的 IBM 手册位于IBM XL C/C++ for AIX, V13.1,但该死的,如果我能找到该选项。
IBM XL C/C++ 相当于#pragma GCC optimize
什么?我们如何检测源代码以告诉 XL C/C++ 使用-O2
而不是-O3
?
c++ - CMAKE AIX xlc 编译器没有被使用
我正在尝试将 xlc 编译器用于 AIX 上的 cpp 代码。我想要我的 C 代码的 cc 编译器
输出:
但是当我运行 make (在上面的输出之后),它似乎正在使用 gcc 编译器。
我尝试在我的 CMakeLists.txt 文件中添加该集
我还导出了环境变量:
有什么想法吗?
/usr/vac/bin 目录中没有 cc 或 xlc 的链接。
当我在 shrxlm 目录中 grep 查找 gcc 和 xlc 时,我只能找到 gcc。为什么 cmake 不尊重我对 xlc 编译器的要求?
c++ - IBM XL C/C++ 是否提供 init_priority?
我们使用 C++ 静态初始化顺序来控制 C++ 库中多个对象的构造。GCC 提供init_priority
,Microsoft 提供init_seg()
。
我正在寻找与 IBM 的 XL C/C++ 编译器类似的东西,但我的搜索结果没有显示有用的结果。编译器可在 Linux 和 AIX 上运行。显然 Linux 提供了该功能,但我不确定 AIX 运行时支持。
我的第一个问题是,AIX 平台是否支持初始化优先级?
我的第二个问题是,IBM 的 XL C/C++ 是否提供了一种通过源代码控制它的方法?
apache - 使用 xlc 在 AIX 7.1 上安装 Apache httpd 2.4.x
我正在使用 xlc 编译器在 AIX 7.1 机器上安装 apache httpd 2.4.x。制作成功。但是 make install 失败并出现以下错误
在模块中安装 在 aaa 中安装 rm -f /home/u980868/apache/kiran/httpd-kiran/modules/mod_authn_file.so /home/u980868/apache/kiran/httpd-2.4.25/srclib/apr/libtool - -silent --mode=install install mod_authn_file.la /home/u980868/apache/kiran/httpd-kiran/modules/ 发现:坏状态-- /home/u980868/apache/kiran/httpd-kiran/modules/mod_authn_file.so安装:找不到文件 mod_authn_file.so。make: 1254-004 最后一条命令的错误代码是 2. 停止。make: 1254-004 最后一条命令的错误代码是 1. 停止。make: 1254-004 最后一条命令的错误代码是 1. 停止。make: 1254-004 最后一条命令的错误代码是 1. 停止。
有人可以帮忙吗?
apache - 符号 __mcount 未从依赖模块 /usr/lib/libC.a[shr_64.o] 导出
我已经使用 xlc 编译器在 AIX 7.1 上编译了我的代码。编译成功,我已经创建了一个共享库,但是当我尝试在 Apache 上加载该库时,出现以下错误。
httpd:$APACHE_HOME/conf/httpd.conf 第 54 行的语法错误:无法将 $APACHE_HOME/modules/mod_application.so 加载到服务器中:
0509-130 $LIB_PATH/libkiran.so 的符号解析失败,因为:
0509-136 符号 __mcount(编号 119)未从依赖模块 /usr/lib/libC.a[shr_64.o] 导出。
0509-022 无法加载模块 $APACHE_HOME/modules/mod_application.so。
0509-026 系统错误:无法运行格式无效的文件。
0509-192 使用“dump -Tv”命令检查 .loader 部分符号。
c++ - IBM XL C/C++ 编译器中的“1587-163”是什么意思
我使用 IBM XL C/C++ 编译器 v13.1.6 (13.01.0006.0000) 编译了一些代码。我的程序以打印消息结束
没有任何额外信息。
这是什么意思?