我正在尝试编译一个使用直接I/O的C代码。有一行使用了O_DIRECT标志:
fd = open(fileName,O_DIRECT | O_RDWR | O_CREAT,0600)Intel和GNU很好地理解了这一点,并进行了编译。克雷无法通过O_DIRECT。它不认为它是在任何地方设置的。Cray编译器对这个变量有什么替代方案吗?或者它不能直接执行I/O?
发布于 2021-01-30 06:40:56
给编译器命令设置-D'_GNU_SOURCE'标志。它将允许它在头文件/usr/include/bits/fcntl-linux.h中拾取一些否则不会拾取的东西,主要是O_DIRECT。
https://stackoverflow.com/questions/65013721
复制相似问题