|
I got this excerpt from "iSeries WebSphereR Development Studio ILE C/C++ Programmer's Guide Version 5" PDF. Reading the excerpt, it seems that it's definitely possible by specifying #define on the appropriate macros in the program source. <snip> Enabling Integrated File System Stream I/O You can enable ILE C/C++ stream I/O for files up to two gigabytes in size by specifying the *IFSIO option on the system interface keyword (SYSIFCOPT) on the Create Module or Create Bound Program command prompt. For example: CRTCMOD MODULE(QTEMP/IFSIO) SRCFILE(QCLE/QACSRC) SYSIFCOPT(*IFSIO) CRTBNDC PGM(QTEMP/IFSIO) SRCFILE(QCLE/QACSRC) SYSIFCOPT(*IFSIO) Using Stream I/O with Large Files The 64-bit version of the Integrated File System interface lets you use ILE C/C++ Stream I/O with files greater than two gigabytes in size. Use any of the methods listed below to enable this interface. * Specify the *IFS64IO option with the SYSIFCOPT keyword on the Create Module or Create Bound Program command prompt. When this option is specified, the compiler defines the __IFS64_IO__ macro, which in turn causes the _LARGE_FILES and _LARGE_FILE_API macros to be defined in the IBM-supplied header files. For example: CRTCPPMOD MODULE(QTEMP/IFSIO) SRCFILE(QCLE/QACSRC) SYSIFCOPT(*IFS64IO) * Define the _LARGE_FILES macro in the program source. Alternately, specify DEFINE('_LARGE_FILES') on a Create Module or Create Bound Program command line. Integrated File System APIs and relevant data types are automatically mapped or redefined to their 64-bit Integrated File System counterparts. For example: CRTCPPMOD MODULE(QTEMP/IFSIO) SRCFILE(QCLE/QACSRC) SYSIFCOPT(*IFSIO) DEFINE('_LARGE_FILES') * Define the _LARGE_FILE_API macro in the program source. Alternately, specify DEFINE('_LARGE_FILE_API') on a Create Module or Create Bound Program command line. This makes 64-bit Integrated File System APIs and corresponding data types visible, but applications must explicitly specify which Integrated File System APIs (regular or 64-bit) to use. For example: CRTCMOD MODULE(QTEMP/IFSIO) SRCFILE(QCLE/QACSRC) SYSIFCOPT(*IFSIO) DEFINE('_LARGE_FILE_API') Notes on Usage * The __IFS64_IO__, _LARGE_FILES, and _LARGE_FILE_API macros are not mutually exclusive. For example, you might specify SYSIFCOPT(*IFS64IO) on the command line, and define either or both of the _LARGE_FILES and _LARGE_FILE_API macros in your program source. </snip> -----Original Message----- From: c400-l-bounces+ebudimlic=centerfieldtechnology.com@xxxxxxxxxxxx [mailto:c400-l-bounces+ebudimlic=centerfieldtechnology.com@xxxxxxxxxxxx] On Behalf Of Chris Wolcott Sent: Wednesday, October 13, 2004 12:05 PM To: c400-l@xxxxxxxxxxxx Subject: [C400-L] Default compiler setting in source In RPG you can set compile options in 'H' specs, like BNDDIR, DFTACTGRP, etc. Can I do that with C? (I'd like to set SYSIFCOPT(*IFS64IO), but am not sure if/how defining the __IFS64_IO__ 'macro' would do it. (I'd also like to set default BNDDIR and ACTGRP setting if possible.) _______________________________________________ This is the C programming iSeries / AS400 (C400-L) mailing list To post a message email: C400-L@xxxxxxxxxxxx To subscribe, unsubscribe, or change list options, visit: http://lists.midrange.com/mailman/listinfo/c400-l or email: C400-L-request@xxxxxxxxxxxx Before posting, please take a moment to review the archives at http://archive.midrange.com/c400-l.
As an Amazon Associate we earn from qualifying purchases.
This mailing list archive is Copyright 1997-2024 by midrange.com and David Gibbs as a compilation work. Use of the archive is restricted to research of a business or technical nature. Any other uses are prohibited. Full details are available on our policy page. If you have questions about this, please contact [javascript protected email address].
Operating expenses for this site are earned using the Amazon Associate program and Google Adsense.