Linux下编译程序使其处理超过2G的大文件

2014-11-24 08:45:01 来源: 作者: 浏览: 1

Linux下为使程序可以处理大文件的能力,在文件中可以添加:


#define -D_LARGEFILE_SOURCE


#define -D_LARGEFILE64_SOURCE


#define -D_FILE_OFFSET_BITS=64


在gcc编译时,加入的大文件(大于2G)支持参数:


gcc -D_FILE_OFFSET_BITS=64 -D_LARGEFILE_SOURCE -D_LARGEFILE64_SOURCE -o x.o x.c


这些编译参数让编译后的程序支持64bit的系统调用操作,从而使程序处理没有2G文件的限制。


若使用Makefile,这些参数需用在编译命令中:


CXXFLAGS = -static -g -c -I$(INCLUDEDIR) -D_LARGEFILE_SOURCE -D_LARGEFILE64_SOURCE -D_FILE_OFFSET_BITS=64


gcc $(CXXFLAGS) $(SOURCEFILE)


-->

评论

帐  号: 密码: (新用户注册)
验 证 码:
表  情:
内  容: