files > 2G under Solaris

Pavel Roskin proski at gnu.org
Fri Jun 29 14:52:27 UTC 2001


Hi, Maksym!

> I was able to get it large files work first by
> ./configure --without-edit
> make CFLAGS="-D_FILE_OFFSET_BITS=64 -Dmc_stat=mc_stat64
> -Dmc_lstat=mc_lstat64 -Dmc_fstat=mc_fstat64"

That's insane!

> and then by commenting out #define stat(f,s) mc_stat(f,s) on line 493 in
> edit.h and doing the same --with-edit.

This makes it impossible to edit files on VFS.

The right solution is not to use names for libc (at least those that can
be macros, such as stat and lstat) as identifiers anywhere in the MC
source.

But this would affect published API of VFS, which is not good. Also, the
editor code would further differ from the Cooledit code (I don't know if
it still can be merged).

I don't want to do it at this stage, especially considering that it's a
workaround for a Solaris bug. "stat" should not be a macro (I'm too lazy
to look up POSIX, but it usually clearly specifies what may be a macro and
what may not).

I'm glad that you have MC running, but it's not a change I would like to
see in the official MC source.

Better handling of stat() failures is in the queue.

> So far everything works except it crashes when attemt to view large
> files.

It doesn't crash on Linux.

> Exacutable became twice smaller, which is suspicious.

Yes, that's suspicious.

> Concerning NLS -- whatewer I did, it seems always loads native
> libintl.so.0.1 (probably it's already in memory).

--with-included-gettext should work now. Disabling it was my error.
Statically linked library will override any system shared libraries.

-- 
Regards,
Pavel Roskin





More information about the mc-devel mailing list