问题标签 [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.

0 投票
1 回答
143 浏览

gpu - IBM XL C/C++ 编译器:“没有可用的有效目标设备”

我正在使用 IBM XL C/C++ 编译器编译一些 OpenMP 4.5 代码,目的是将其部分工作卸载到 GPU,如下所示:

编译似乎成功了,只给我以下消息:

但是,当我运行代码时,我收到以下令人不快的消息:

1587-169 没有可用的有效目标设备。

使用nvidia-smi,我已经验证目标设备实际上是可用的:

我的想法是 XL 以某种方式针对错误的加速器,但我找不到设置它的选项。

如何让我的代码识别和利用可用的 GPU?

0 投票
0 回答
84 浏览

aix - xlc 编译器中的等效 -rdynamic 标志

在 AIX 中的 xlc 编译器中是否有等效于 -rdynamic 标志 (gcc) 的功能?

谢谢你。

0 投票
1 回答
502 浏览

macros - IBM XL C/C++ 预处理器宏发生了什么变化?

我正在编译农场的 GCC112 上工作,这是一台 Linux ppc64-le 机器。我正在测试 IBM XL C/C++ 并在一些使用 POWER8 的 AES 代码上发现编译失败。该代码在过去几年中一直有效。失败是新的。

编译失败是:

__builtin_crypto_vcipher是内置的 GCC。进入该路径的唯一方法是如果__xlc__并且__xlC__未定义:

检查预处理器宏:

看起来几乎所有的预处理器宏都消失了。单个宏__XLC_BUILTIN_VAARG__是不正确的。

IBM XL C/C++ 预处理器宏发生了什么变化,我该如何取回它们?


0 投票
0 回答
115 浏览

aix - “-qaltivec”与“-qarch=pwr5”不兼容

我无法理解来自 IBM XL C/C++ 的警告。我正在编译农场的 GCC119 上工作,这是一台 AIX ppc64-be 机器。

编译它会导致:

删除-qarch并不能解决问题,因为编译器默认为-qarch=pwr4.

我只在使用 XLC 编译器的 AIX 机器上看到这个问题。GCC 在同一台机器上没问题。我用于测试的另外两台机器都可以。事实上,AIX 机器是 S822,运行 Linux 并安装 XLC 的相同 S822 是可以的。

有什么问题,我该如何解决?为什么我们不能在带有 XLC 的 AIX 上使用 Altivec 和 POWER5?

0 投票
1 回答
169 浏览

linux - 为什么 typedef 抛出错误:(S) Initializer 必须是有效的常量表达式

f1.h头文件中使用 typedef 作为结构。示例代码片段如下所示

f2.h头文件中使用结构mysturct来获取偏移量。代码片段如下所示

当我在AIX机器上使用xlc编译器进行编译时,它会抛出错误,因为“1506-221(S) Initializer must be a valid constant expression”

我尝试了两个宏,但都得到了相同的错误。f2.h 宏在执行结构大小以获取偏移量时有什么问题吗?

0 投票
0 回答
332 浏览

c++ - AIX C++ Map 编译问题

我无法在 AIX 中编译以下代码,而 Linux 和 Solaris 在这方面似乎还可以。它给了我关于 C++ Map 使用和密钥对的问题。

错误也有点神秘

谁能建议我哪里出错了,或者我如何修改代码以使其非常通用。

我在 AIX 上使用 xlc++_r 进行编译。

0 投票
1 回答
221 浏览

c++ - “__rotatel4”的名称查找未找到声明

我正在编译农场的 GCC111 上工作。该机器是 AIX 7.1、POWER7 和 IBM XLC 12.1。我正在尝试使用__rotatel4

编译结果:

根据编译器手册IBM XL C/C++ for AIX, V12.1 (p. 486),内在函数应该可用。这里是原型,没有POWER6那样的限制:

添加-qarch=pwr7和/或-D_XOPEN_SOURCE=600导致相同的错误。我在使用模板编译代码时发现了意外的名称查找错误“1540-0274 (S)”,但它似乎不适用于这里。

如何__rotatel4在程序中使用?


0 投票
2 回答
224 浏览

c++ - 未声明“std::_debug_memset”

我正在编译农场的 GCC119 上工作。该机器是 AIX 7.1、POWER8 和 IBM XLC 13.1。我正在尝试使用调试堆:

编译结果:

两者都<cstring>导致<string.h>错误。我也尝试包含<cstdlib>and <stdlib.h>,它们导致了同样的错误。

优化和编程指南手册对调试内存函数进行了很好的讨论,但处理方法仅限于 C。它似乎不处理 C++。

如何在 C++ 程序中使用调试堆?


0 投票
1 回答
248 浏览

c++ - sigsegv 发生在 posix_memalign 在某些设备中释放后立即发生并在 AIX 中编译选项

我被分配了一个指针,它立即免费,但 sigsegv 取决于某些设备和 xlc 选项。

xlC_r -o cc.o cc -lhm 发生了 sigsegv,但 xlC_r -o cc.o cc 有效。

( lhm 选项正在链接 libhm.a libhu.a。)
( malloc 和 free 作品。只有 posix_memalign 和 free sigsegv 发生。)

源代码:

有用:

aix7.1 tl3 IBM XL C/C++ for AIX, V12.1 (5765-J02, 5725-C72) 版本:12.01.0000.0000
aix6.1 tl9 IBM XL C/C++ for AIX, V10.1 版本:10.01.0000.0008

结果是:

aix6.1 tl3 IBM XL C/C++ for AIX,V10.1 版本:10.01.0000.0008
aix5.3 tl9 IBM XL C/C++ for AIX,V10.1 版本:10.01.0000.0000
aix5.3 tl1 C for AIX 版本 6.0。 0.0 版本:10.01.0000.0000

结果是

尽管我已经尝试了一个多星期,但我还没有解决这个问题。我从 AIX 搜索了一份错误报告,但找不到。

无法同时删除 posix_memalign 和 lhm 选项。
您知道解决方法或如何解决它吗?

0 投票
0 回答
69 浏览

gcc - Xlc '-qnotwolinkis' 编译器选项的 gcc 等效项是什么?

我目前正在将我的编译器从 AIX XLC 编译器移植到 AIX 上的 GCC 编译器。

我想知道是否有可用于“- qnotwolinkis ”(XLC)的 GCC 等效编译器选项。