Gentoo Websites Logo
Go to: Gentoo Home Documentation Forums Lists Bugs Planet Store Wiki Get Gentoo!
Bug 148978 - [cross-mingw32/w32api] failed to compile due to native gcc and conflicting header files
Summary: [cross-mingw32/w32api] failed to compile due to native gcc and conflicting he...
Status: RESOLVED FIXED
Alias: None
Product: Gentoo Linux
Classification: Unclassified
Component: [OLD] Development (show other bugs)
Hardware: All Linux
: High normal (vote)
Assignee: Gentoo Toolchain Maintainers
URL:
Whiteboard:
Keywords:
: 149222 (view as bug list)
Depends on:
Blocks:
 
Reported: 2006-09-24 11:29 UTC by Martin von Gagern
Modified: 2006-09-27 15:34 UTC (History)
1 user (show)

See Also:
Package list:
Runtime testing required: ---


Attachments
cross-mingw32-w32api.log (cross-mingw32-w32api.log,12.51 KB, text/plain)
2006-09-24 11:31 UTC, Martin von Gagern
Details
cross-mingw32-info.log (cross-mingw32-info.log,4.62 KB, text/plain)
2006-09-24 11:31 UTC, Martin von Gagern
Details
w32api-3.7 config.log (bug148978_config.log,4.09 KB, text/plain)
2006-09-27 14:24 UTC, Martin von Gagern
Details

Note You need to log in before you can comment on or make changes to this bug.
Description Martin von Gagern 2006-09-24 11:29:45 UTC
I just did a "crossdev -t mingw32". Emerging w32api failed, though. :-(

gcc -c -march=prescott -O2 -I./../include  -o scrnsave.o scrnsave.c
In file included from /usr/include/sys/select.h:46,
                 from /usr/include/sys/types.h:220,
                 from /usr/include/stdlib.h:438,
                 from ./../include/objbase.h:12,
                 from ./../include/ole2.h:9,
                 from ./../include/windows.h:111,
                 from scrnsave.c:10:
/usr/include/bits/time.h:70: error: redefinition of 'struct timeval'
In file included from /usr/include/sys/types.h:220,
                 from /usr/include/stdlib.h:438,
                 from ./../include/objbase.h:12,
                 from ./../include/ole2.h:9,
                 from ./../include/windows.h:111,
                 from scrnsave.c:10:
/usr/include/sys/select.h:78: error: conflicting types for 'fd_set'
./../include/winsock2.h:64: error: previous declaration of 'fd_set' was here
/usr/include/sys/select.h:112: error: conflicting types for 'select'
./../include/winsock2.h:632: error: previous declaration of 'select' was here
make[1]: *** [scrnsave.o] Error 1
make[1]: Leaving directory `/var/tmp/cross/mingw32/portage/w32api-3.7/work/w32api-3.7/lib'

Perhaps the binary called should have been mingw32-mingw32-gcc instead of simply gcc. Don't know for sure, though, as I haven't much experience using cross compilers, and don't know what the ebuild is compiling here.
Comment 1 Martin von Gagern 2006-09-24 11:31:16 UTC
Created attachment 97964 [details]
cross-mingw32-w32api.log
Comment 2 Martin von Gagern 2006-09-24 11:31:48 UTC
Created attachment 97965 [details]
cross-mingw32-info.log
Comment 3 SpanKY gentoo-dev 2006-09-25 11:08:49 UTC
this is your problem:
checking for mingw32-gcc... no

and my guess is that is because of:
app-admin/eselect-compiler: 2.0.0_rc2-r1

but i cant tell for sure without the config.log file
Comment 4 SpanKY gentoo-dev 2006-09-26 14:46:08 UTC
*** Bug 149222 has been marked as a duplicate of this bug. ***
Comment 5 Martin von Gagern 2006-09-27 14:24:40 UTC
Created attachment 98260 [details]
w32api-3.7 config.log

(In reply to comment #3)
> but i cant tell for sure without the config.log file

I attached this config.log, but I can't see anything interesting there.

> this is your problem:
> checking for mingw32-gcc... no

What do you mean? "THIS is your problem", i.e. there lies the problem, or "this is YOUR problem", i.e. I did something foolish?

Looking at the configure script, it checks exactly for a program with this name, mingw32-gcc. But as I indirectly mentioned in comment #0, on my system it is called mingc32-mingw32-gcc.

The following programs have double mingw32-mingw32 prefix: cpp, gcc, gccbug, gcov. The other toolchain programs seem to be prefixt with only one mingw32-.

> and my guess is that is because of:
> app-admin/eselect-compiler: 2.0.0_rc2-r1

I assumed eselect-compiler to be only an eselect wrapper around gcc-config, but if this caused enough bugs to merit a mask, my assumption is clearly wrong.
I just unmerged this package and crossdev is rerunning right now. Let's see.
Comment 6 Martin von Gagern 2006-09-27 14:55:05 UTC
(In reply to comment #5)
> (In reply to comment #3)
> > and my guess is that is because of:
> > app-admin/eselect-compiler: 2.0.0_rc2-r1
> 
> I just unmerged this package and crossdev is rerunning right now.
> Let's see.

OK, w32api emerged cleanly, now it looks like I hit bug 148437. :-/
I suggest adding a blocker to avoid this issue in the future.
Comment 7 SpanKY gentoo-dev 2006-09-27 15:34:39 UTC
solution is to not use eselect-compiler at this time