* RE: EXTERNAL: Crosstool Build Fails under cygwin
2013-06-27 21:17 Crosstool Build Fails under cygwin Jeremy Cole-Baker
@ 2013-06-28 11:27 ` Dorrington, Albert
2013-08-30 19:57 ` Crifan Li
1 sibling, 0 replies; 3+ messages in thread
From: Dorrington, Albert @ 2013-06-28 11:27 UTC (permalink / raw)
To: jeremy, crossgcc
I was trying to use crosstool-ng under Cygwin to build an x86 Linux cross-compiler (need to be able to generate ELF output) and ran into the same issue with _libintl_gettext. I found the following two references with patches to the Makefile and nconf.c files:
http://stackoverflow.com/questions/13881633/error-when-installing-crosstool-ng-on-cygwin-libintl-gettext
http://sourceware.org/ml/crossgcc/2012-05/msg00012.html
Unfortunately, I didn't get much farther than that before I had to put my effort on hold. I couldn't get past the build steps involving cloog-ppl.
-Al
-----Original Message-----
From: crossgcc-owner@sourceware.org [mailto:crossgcc-owner@sourceware.org] On Behalf Of Jeremy Cole-Baker
Sent: Thursday, June 27, 2013 5:17 PM
To: crossgcc@sourceware.org
Subject: EXTERNAL: Crosstool Build Fails under cygwin
Hello all,
I've been instructed to get a cross-compiler for Power PC working under Cygwin (crazy idea I know, but that's what they want!). Having trouble, though.
I have tried crisstools-ng version 1.17 and 1.18, but they won't build.
"Configure" seemed to work fine, but "make" for both versions stopped with this error:
$make
SED 'ct-ng'
SED 'scripts/crosstool-NG.sh'
SED 'scripts/saveSample.sh'
SED 'scripts/showTuple.sh'
GEN 'config/configure.in'
GEN 'paths.mk'
GEN 'paths.sh'
DEP 'nconf.gui.dep'
DEP 'nconf.dep'
DEP 'lxdialog/checklist.dep'
DEP 'lxdialog/inputbox.dep'
DEP 'lxdialog/util.dep'
DEP 'lxdialog/textbox.dep'
DEP 'lxdialog/yesno.dep'
DEP 'lxdialog/menubox.dep'
DEP 'mconf.dep'
DEP 'conf.dep'
BISON 'zconf.tab.c'
GPERF 'zconf.hash.c'
LEX 'lex.zconf.c'
DEP 'zconf.tab.dep'
CC 'zconf.tab.o'
CC 'conf.o'
LD 'conf'
zconf.tab.o:zconf.tab.c:(.text+0x1671): undefined reference to `_libintl_gettext'
zconf.tab.o:zconf.tab.c:(.text+0x4845): undefined reference to `_libintl_gettext'
zconf.tab.o:zconf.tab.c:(.text+0x5733): undefined reference to `_libintl_gettext'
zconf.tab.o:zconf.tab.c:(.text+0x5905): undefined reference to `_libintl_gettext'
zconf.tab.o:zconf.tab.c:(.text+0xc750): undefined reference to `_libintl_gettext'
zconf.tab.o:zconf.tab.c:(.text+0xc75e): more undefined references to `_libintl_gettext' follow
/usr/lib/gcc/i686-pc-cygwin/4.5.3/../../../../i686-pc-cygwin/bin/ld:
zconf.tab.o: bad reloc address 0x110 in section `.data'
/usr/lib/gcc/i686-pc-cygwin/4.5.3/../../../../i686-pc-cygwin/bin/ld:
final link failed: Invalid operation
collect2: ld returned 1 exit status
Makefile:108: recipe for target `conf' failed
make[2]: *** [conf] Error 1
Makefile:160: recipe for target `build-lib-kconfig' failed
make[1]: *** [build-lib-kconfig] Error 2
Makefile:120: recipe for target `build' failed
make: *** [build] Error 2
My system is Windows 7 64 bit, and I installed the latest Cygwin (I think it's 1.7). I installed all the dev tools in the Cygwin setup.
This may or may not be relevant, but:
A couple of days ago, I downloaded and installed crosstools-ng 1.9
(because it was at the bottom of the page! I guess I failed the first
intelligence test!).
1.9 built OK, and I was able to run the "menuconfig" option and set up
my toolchain. Running the toolchain build took a loooooooooooooooong
time (11 hours!) and eventually ended with an error. Here are the last
few lines of the log file:
[ALL ] make[3]: Entering directory
`/opt/build_gcc_xtools/targets/src/glibc-2.9/wctype'
[ALL ] /opt/build_gcc_xtools/targets/tools/bin/install -c -m 644
wctype.h
/opt/x-tools/powerpc-unknown-linux-gnu/powerpc-unknown-linux-gnu//sys-root/usr/include/wctype.h
[ALL ] make[3]: Leaving directory
`/opt/build_gcc_xtools/targets/src/glibc-2.9/wctype'
[ALL ] /usr/bin/make -j2 subdir=manual -C manual ..=../ install-headers
[ALL ] make[3]: Entering directory
`/opt/build_gcc_xtools/targets/src/glibc-2.9/manual'
[ALL ] Makefile:240: *** mixed implicit and normal rules. Stop.
[ALL ] make[3]: Leaving directory
`/opt/build_gcc_xtools/targets/src/glibc-2.9/manual'
[ALL ] Makefile:207: recipe for target `manual/install-headers' failed
[ERROR] make[2]: *** [manual/install-headers] Error 2
[ALL ] make[2]: Leaving directory
`/opt/build_gcc_xtools/targets/src/glibc-2.9'
[ALL ] Makefile:12: recipe for target `install-headers' failed
[ERROR] make[1]: *** [install-headers] Error 2
[ALL ] make[1]: Leaving directory
`/opt/build_gcc_xtools/targets/powerpc-unknown-linux-gnu/build/build-libc-headers'
[ERROR] Build failed in step 'Installing C library headers'
[ERROR] Error happened in
'/usr/crosstool/lib/ct-ng-1.9.3/scripts/functions' in function
'CT_DoExecLog' (line unknown, sorry)
[ERROR] called from
'/usr/crosstool/lib/ct-ng-1.9.3/scripts/build/libc/glibc.sh' at line #
175 in function 'do_libc_headers'
[ERROR] called from
'/usr/crosstool/lib/ct-ng-1.9.3/scripts/crosstool-NG.sh' at line # 597
in function 'main'
[ERROR] Look at '/opt/x-tools/powerpc-unknown-linux-gnu/build.log'
for more info on this error.
[ERROR] (elapsed: 686:48.54)
That seems slow! (Athlon 64 X2 dual core @ 3.1 Ghz and 6 GB RAM).
I've become completely obsessed by this task (i.e. building a toolchain
for cygwin) and I've lost all sense of perspective, so suggestions would
be appreciated!
Thanks,
Jeremy
--
Riverhead Technology
Jeremy Cole-Baker
Ph. (+64) 27 673 0129
www.rhtech.co.nz
--
For unsubscribe information see http://sourceware.org/lists.html#faq
--
For unsubscribe information see http://sourceware.org/lists.html#faq
^ permalink raw reply [flat|nested] 3+ messages in thread
* Re: Crosstool Build Fails under cygwin
2013-06-27 21:17 Crosstool Build Fails under cygwin Jeremy Cole-Baker
2013-06-28 11:27 ` EXTERNAL: " Dorrington, Albert
@ 2013-08-30 19:57 ` Crifan Li
1 sibling, 0 replies; 3+ messages in thread
From: Crifan Li @ 2013-08-30 19:57 UTC (permalink / raw)
To: jeremy; +Cc: crossgcc
Hi
I have encounted same issues, in same environment: x74 win7 + Cywin
1.7.17
issue1: zconf.tab.o:zconf.tab.c:(.text+0x1671): undefined reference to
`_libintl_gettext'
issue2: Makefile:240: *** mixed implicit and normal rules. Stop.
issue3: That seems slow!
but now, has already fixed them before.
in brief, the (best) solution is:
1. for issue1: zconf.tab.o:zconf.tab.c:(.text+0x1671): undefined
reference to `_libintl_gettext'
reason:
lack related lib (when build under Cygwin)
solution:
change the makefile
crosstool-ng-1.18.0\kconfig\Makefile
to add intl and curses lib for conf, mconf, nconf
like this:
# Whatâs needed to build âconfâ
conf_SRC = conf.c
conf_OBJ = $(patsubst %.c,%.o,$(conf_SRC))
conf_DEP = $(patsubst %.o,%.dep,$(conf_OBJ))
$(conf_OBJ) $(conf_DEP): CFLAGS += $(INTL_CFLAGS)
conf: LDFLAGS += -lintl
# Whatâs needed to build âmconfâ
mconf_SRC = mconf.c
mconf_OBJ = $(patsubst %.c,%.o,$(mconf_SRC))
mconf_DEP = $(patsubst %.c,%.dep,$(mconf_SRC))
$(mconf_OBJ) $(mconf_DEP): CFLAGS += $(NCURSES_CFLAGS) $(INTL_CFLAGS)
#mconf: LDFLAGS += $(NCURSES_LDFLAGS)
mconf: LDFLAGS += -lintl $(NCURSES_LDFLAGS)
# Whatâs needed to build ânconfâ
nconf_SRC = nconf.c nconf.gui.c
nconf_OBJ = $(patsubst %.c,%.o,$(nconf_SRC))
nconf_DEP = $(patsubst %.c,%.dep,$(nconf_SRC))
#$(nconf_OBJ) $(nconf_DEP): CFLAGS += $(INTL_CFLAGS) -I/usr/include/ncurses
#nconf: LDFLAGS += -lmenu -lpanel -lncurses
$(nconf_OBJ) $(nconf_DEP): CFLAGS += -I/usr/include/ncurses/ $(INTL_CFLAGS)
nconf: LDFLAGS += -lintl -lmenu -lpanel -lncurses
2. for issue2: Makefile:240: *** mixed implicit and normal rules. Stop.
reason:
make v3.81 support those "mixed implicit and normal rules"
but new v3.82 make, not support them.
solution:
use crosstool-ng (included) companion make:
in ct-ng menuconfig, config to use its (v3.81) make:
Paths and misc options â>
[*] Try features marked as EXPERIMENTAL
Companion tools â>
[*] Build some companion tools
[*] make
3. for issue3: That seems slow!
config crosstool-ng to use multithread, such as 4 thread:
Paths and misc options
(4) Number of parallel jobs
for more details, can refer my posts(written in Chinese, you can use
google translate it to English):
1. for issue1: zconf.tab.o:zconf.tab.c:(.text+0x1671): undefined
reference to `_libintl_gettext'
http://www.crifan.com/crosstool_ng_cygwin_zconf_tab_o_zconf_tab_c_text_0x162a_undefined_reference_to_libintl_gettext/
http://www.crifan.com/crosstool_ng_cygwin_zconf_tab_o_zconf_tab_c_text_0x162a_undefined_reference_to_libintl_gettext-2/
2. for issue2: Makefile:240: *** mixed implicit and normal rules. Stop.
http://www.crifan.com/crosstool_ng_makefile_mixed_implicit_and_normal_rules_stop/
http://www.crifan.com/cygwin_make_linux_kernel_makefile_mixed_implicit_and_normal_rules_stop/
3. for issue3: That seems slow!
http://www.crifan.com/summary_crosstool_ng_note/
Crifan Li
Jeremy Cole-Baker wrote on Fri, 28 Jun 2013 09:17:09 +1200:
> Hello all,
>
> I've been instructed to get a cross-compiler for Power PC working
under Cygwin (crazy idea I know, but that's what they want!). Having
trouble, though.
>
>
> I have tried crisstools-ng version 1.17 and 1.18, but they won't
build. "Configure" seemed to work fine, but "make" for both versions
stopped with this error:
>
>
> $make
> SED 'ct-ng'
> SED 'scripts/crosstool-NG.sh'
> SED 'scripts/saveSample.sh'
> SED 'scripts/showTuple.sh'
> GEN 'config/configure.in'
> GEN 'paths.mk'
> GEN 'paths.sh'
> DEP 'nconf.gui.dep'
> DEP 'nconf.dep'
> DEP 'lxdialog/checklist.dep'
> DEP 'lxdialog/inputbox.dep'
> DEP 'lxdialog/util.dep'
> DEP 'lxdialog/textbox.dep'
> DEP 'lxdialog/yesno.dep'
> DEP 'lxdialog/menubox.dep'
> DEP 'mconf.dep'
> DEP 'conf.dep'
> BISON 'zconf.tab.c'
> GPERF 'zconf.hash.c'
> LEX 'lex.zconf.c'
> DEP 'zconf.tab.dep'
> CC 'zconf.tab.o'
> CC 'conf.o'
> LD 'conf'
>
> zconf.tab.o:zconf.tab.c:(.text+0x1671): undefined reference to
`_libintl_gettext' zconf.tab.o:zconf.tab.c:(.text+0x4845): undefined
reference to `_libintl_gettext' zconf.tab.o:zconf.tab.c:(.text+0x5733):
undefined reference to `_libintl_gettext'
zconf.tab.o:zconf.tab.c:(.text+0x5905): undefined reference to
`_libintl_gettext' zconf.tab.o:zconf.tab.c:(.text+0xc750): undefined
reference to `_libintl_gettext' zconf.tab.o:zconf.tab.c:(.text+0xc75e):
more undefined references to `_libintl_gettext' follow
/usr/lib/gcc/i686-pc-cygwin/4.5.3/../../../../i686-pc-cygwin/bin/ld:
zconf.tab.o: bad reloc address 0x110 in section `.data'
/usr/lib/gcc/i686-pc-cygwin/4.5.3/../../../../i686-pc-cygwin/bin/ld:
final link failed: Invalid operation
>
> collect2: ld returned 1 exit status
> Makefile:108: recipe for target `conf' failed
> make[2]: *** [conf] Error 1
> Makefile:160: recipe for target `build-lib-kconfig' failed
> make[1]: *** [build-lib-kconfig] Error 2
> Makefile:120: recipe for target `build' failed
> make: *** [build] Error 2
>
> My system is Windows 7 64 bit, and I installed the latest Cygwin (I
think it's 1.7). I installed all the dev tools in the Cygwin setup.
>
>
>
> This may or may not be relevant, but:
>
> A couple of days ago, I downloaded and installed crosstools-ng 1.9
(because it was at the bottom of the page! I guess I failed the first
intelligence test!).
>
>
> 1.9 built OK, and I was able to run the "menuconfig" option and set
up my toolchain. Running the toolchain build took a loooooooooooooooong
time (11 hours!) and eventually ended with an error. Here are the last
few lines of the log file:
>
>
> [ALL ] make[3]: Entering directory
`/opt/build_gcc_xtools/targets/src/glibc-2.9/wctype' [ALL ]
/opt/build_gcc_xtools/targets/tools/bin/install -c -m 644 wctype.h
/opt/x-tools/powerpc-unknown-linux-gnu/powerpc-unknown-linux-gnu//sys-root/usr/include/wctype.h
[ALL ] make[3]: Leaving directory
`/opt/build_gcc_xtools/targets/src/glibc-2.9/wctype'
>
> [ALL ] /usr/bin/make -j2 subdir=manual -C manual ..=../
install-headers
>
> [ALL ] make[3]: Entering directory
`/opt/build_gcc_xtools/targets/src/glibc-2.9/manual'
>
> [ALL ] Makefile:240: *** mixed implicit and normal rules. Stop.
>
> [ALL ] make[3]: Leaving directory
`/opt/build_gcc_xtools/targets/src/glibc-2.9/manual'
>
> [ALL ] Makefile:207: recipe for target `manual/install-headers'
failed
> [ERROR] make[2]: *** [manual/install-headers] Error 2
>
> [ALL ] make[2]: Leaving directory
`/opt/build_gcc_xtools/targets/src/glibc-2.9'
>
> [ALL ] Makefile:12: recipe for target `install-headers' failed
> [ERROR] make[1]: *** [install-headers] Error 2
>
> [ALL ] make[1]: Leaving directory
`/opt/build_gcc_xtools/targets/powerpc-unknown-linux-gnu/build/build-libc-headers'
>
> [ERROR] Build failed in step 'Installing C library headers'
>
> [ERROR] Error happened in
'/usr/crosstool/lib/ct-ng-1.9.3/scripts/functions' in function
'CT_DoExecLog' (line unknown, sorry) [ERROR] called from
'/usr/crosstool/lib/ct-ng-1.9.3/scripts/build/libc/glibc.sh' at line #
175 in function 'do_libc_headers' [ERROR] called from
'/usr/crosstool/lib/ct-ng-1.9.3/scripts/crosstool-NG.sh' at line # 597
in function 'main' [ERROR] Look at
'/opt/x-tools/powerpc-unknown-linux-gnu/build.log' for more info on this
error.
>
> [ERROR] (elapsed: 686:48.54)
>
> That seems slow! (Athlon 64 X2 dual core @ 3.1 Ghz and 6 GB RAM).
>
> I've become completely obsessed by this task (i.e. building a
toolchain for cygwin) and I've lost all sense of perspective, so
suggestions would be appreciated!
>
>
> Thanks,
> Jeremy
>
>
> --
> Riverhead Technology
> Jeremy Cole-Baker
> Ph. (+64) 27 673 0129
> www.rhtech.co.nz
--
For unsubscribe information see http://sourceware.org/lists.html#faq
^ permalink raw reply [flat|nested] 3+ messages in thread