[Top][All Lists]
[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
[Bug binutils/13558] binutils 2.22 v. AIX 6.1 -- build fails with large-
From: |
haubi at gentoo dot org |
Subject: |
[Bug binutils/13558] binutils 2.22 v. AIX 6.1 -- build fails with large-file support problems (and mkdtemp confusion) |
Date: |
Wed, 14 Mar 2012 08:29:24 +0000 |
http://sourceware.org/bugzilla/show_bug.cgi?id=13558
Michael Haubenwallner <haubi at gentoo dot org> changed:
What |Removed |Added
----------------------------------------------------------------------------
CC| |haubi at gentoo dot org
--- Comment #1 from Michael Haubenwallner <haubi at gentoo dot org> 2012-03-14
08:29:24 UTC ---
Quite similar troubles here on AIX 7.1:
(In reply to comment #0)
> In file included from syslex.c:549:
> /usr/include/unistd.h:171: error: conflicting types for 'lseek64'
> /usr/include/unistd.h:169: error: previous declaration of 'lseek64' was here
> In file included from /usr/include/unistd.h:746,
> from syslex.c:549:
> blue# diff binutils/syslex.c_orig binutils/syslex.c
> 1c1
> <
> ---
> > #include "config.h"
>
> From the looks of it, I suspect that this thing is generated, and so the
> change would need to be made elsewhere, but the essence is to get
> "config.h" processed before the system header files.
Particular reason here is the _LARGE_FILES macro, defined by config.h, which
has to be defined before any system header.
> blue# diff binutils/od-xcoff.c_orig binutils/od-xcoff.c
> 21a22,23
> > #include "config.h"
Same here.
> Also, the "configure" test for 'mkdtemp' gets a result which might
> best be described as unfortunate:
> bucomm.c:531: warning: implicit declaration of function 'mkdtemp'
> I didn't look at the details, but I'm guessing that "configure" did
> some less-than-thorough test for "mkdtemp". Perhaps "mkdtemp" is in
> some run-time library, so a link-only test might work, but it appears
> not to be in any of the system header files, so an actual compilation
> (with "warnings being treated as errors") will fail this way.
Exactly: Since AIX 6.1, mkdtemp() is declared upon _XOPEN_SOURCE >= 700, and
thus the symbol is available in libc.
The difference is: Upon _ALL_SOURCE (defined in config.h),
AIX 6.1 defines (overrides!) _XOPEN_SOURCE=600, while
AIX 7.1 defines (overrides!) _XOPEN_SOURCE=700,
This particularly isn't a problem on AIX 7.1, but still the check for mkdtemp()
should be extended to if the declaration is available too.
--
Configure bugmail: http://sourceware.org/bugzilla/userprefs.cgi?tab=email
------- You are receiving this mail because: -------
You are on the CC list for the bug.
[Prev in Thread] |
Current Thread |
[Next in Thread] |
- [Bug binutils/13558] binutils 2.22 v. AIX 6.1 -- build fails with large-file support problems (and mkdtemp confusion),
haubi at gentoo dot org <=