我想重新编译“xxd”(用 C 编写),所以我安装了 CodeBlocks 作为 IDE。
一切似乎都很顺利,直到我发现我无法写入超过 2.0 GB 的障碍......
我读过'gcc'需要重新编译......(这听起来有点戏剧性......)
我读过我可以使用'fread64()'而不是'fread()'......(没有' t 工作)
我已经阅读了一些关于编译器选项的内容(?)...但我在那个时候迷路了?
我很惊讶它没有开箱即用,因为我认为 2.0 GB 的限制是古老的历史,就默认值而言......又错了?:(
我的操作系统是 32 位,在 32 位硬件上。
gcc 版本报告为:gcc (Ubuntu 4.4.3-4ubuntu5) 4.4.3
有没有简单的方法可以解决这个问题?
PS.. 我对警告很着迷: 'info xxd' 部分(..仅在 Linux 上;)
我建议-D_GNU_SOURCE
只要#include <features.h>
使用就添加。这将启用所有大文件支持。阅读开头/usr/include/features.h
了解更多详细信息:
...
_LARGEFILE_SOURCE Some more functions for correct standard I/O.
_LARGEFILE64_SOURCE Additional functionality from LFS for large files.
_FILE_OFFSET_BITS=N Select default filesystem interface.
....
_GNU_SOURCE All of the above, plus GNU extensions.
Run Code Online (Sandbox Code Playgroud)
归档时间: |
|
查看次数: |
5138 次 |
最近记录: |