Opened 10 years ago

Closed 10 years ago

Last modified 10 years ago

#4487 closed defect (invalid)

ICU-52.1 compile failure

Reported by: thomas Owned by: blfs-book@…
Priority: normal Milestone:
Component: BOOK Version: SVN
Severity: major Keywords:
Cc:

Description

Hi,

there is a "CC=g++" in front of the "configure" command which causes that C programs are also compiled using g++ instead of gcc. This in turn causes compilation to fail this way:

cc1plus: Warnung: Kommandozeilenoption »-std=c99« ist gültig für C/ObjC, aber nicht für C++ [standardmäßig aktiviert]
   g++   ...  uinvchar.c
cc1plus: Warnung: Kommandozeilenoption »-Wmissing-prototypes« ist gültig für C/ObjC, aber nicht für C++ [standardmäßig aktiviert]
cc1plus: Warnung: Kommandozeilenoption »-std=c99« ist gültig für C/ObjC, aber nicht für C++ [standardmäßig aktiviert]
   g++   ...  umutex.cpp
   g++   ...  ucln_cmn.c
cc1plus: Warnung: Kommandozeilenoption »-Wmissing-prototypes« ist gültig für C/ObjC, aber nicht für C++ [standardmäßig aktiviert]
cc1plus: Warnung: Kommandozeilenoption »-std=c99« ist gültig für C/ObjC, aber nicht für C++ [standardmäßig aktiviert]
ucln_cmn.c: In Funktion »UBool ucln_lib_cleanup_52()«:
ucln_cmn.c:90:17: Fehler: kein »operator++(int)« für Suffix »++« deklariert [-fpermissive]
     for (libType++; libType<UCLN_COMMON; libType++) {
                 ^
ucln_cmn.c:90:49: Fehler: kein »operator++(int)« für Suffix »++« deklariert [-fpermissive]
     for (libType++; libType<UCLN_COMMON; libType++) {
                                                 ^
ucln_cmn.c:94:20: Fehler: kein »operator++(int)« für Suffix »++« deklariert [-fpermissive]
     for (commonFunc++; commonFunc<UCLN_COMMON_COUNT; commonFunc++) {
                    ^
ucln_cmn.c:94:64: Fehler: kein »operator++(int)« für Suffix »++« deklariert [-fpermissive]
     for (commonFunc++; commonFunc<UCLN_COMMON_COUNT; commonFunc++) {
                                                                ^
*** Failed compilation command follows: ----------------------------------------------------------
g++ -D_REENTRANT -DU_HAVE_ELF_H=1 -DU_HAVE_ATOMIC=1 -I. -DDEFAULT_ICU_PLUGINS="/usr/lib/icu"  -DU_ATTRIBUTE_DEPRECATED= -DU_COMMON_IMPLEMENTATION -O2 -std=c99 -Wall -pedantic -Wshadow -Wpointer-arith -Wmissing-prototypes -Wwrite-strings -c -DPIC -fPIC -o ucln_cmn.o ucln_cmn.c
--- ( rebuild with "make VERBOSE=1 all" to show all parameters ) --------
../config/mh-linux:44: recipe for target 'ucln_cmn.o' failed
make[1]: *** [ucln_cmn.o] Error 1
make[1]: Leaving directory '/srv/tmp/build/icu/build/icu/source/common'
Makefile:141: recipe for target 'all-recursive' failed
make: *** [all-recursive] Error 2

Can you comfirm the failure or is it just here? Btw, I've no LLVM installed on the machine which is fairly new (LFS 2013-12-16). So I cannot chekc the LLVM stuff.

I removed the "CC=g++" at all and compilation works fine - also true when "CC=gcc" is specified.

-- Thomas

Change History (2)

comment:1 by thomas, 10 years ago

Resolution: invalid
Status: newclosed

Sorry for the noise ... in the book is "CXX=g++" not "CC=g++".

My fault, I misread that.

Last edited 10 years ago by thomas (previous) (diff)

comment:2 by bdubbs@…, 10 years ago

Milestone: current

Milestone current deleted

Note: See TracTickets for help on using tickets.