Solaris has supported files of greater than 2GB since version 2.6. A description of this can be found here.
A 64-bit application will have file pointers that are 64-bit in size, so will not have this limitation. A 32-bit application will see this limitation, but can be compiled with the compiler flags -D_FILE_OFFSET_BITS=64 and -D_LARGEFILE_SOURCE which will allow it to use the 64-bit file pointer API.