Dr. David Kirkby wrote:> I'm trying to build R 2.10.1 on a Sun Blade 1000 running Solaris 10
> (03/05 release). I've installed iconv 1.13.1 and used:
>
> CPPFLAGS="-I
/export/home/drkirkby/sage-4.3.3.alpha0/local/include"
> (which is where iconv is)
>
> LDFLAGS> -R/export/home/drkirkby/sage-4.3.3.alpha0/local/lib
> -L/export/home/drkirkby/sage-4.3.3.alpha0/local/lib
>
>
> The build of R fails as below.
>
>
> gcc -std=gnu99 -I../../src/extra/zlib -I../../src/extra/bzip2
> -I../../src/extra/pcre -I../../src/extra -I../../src/extra/xz/api -I.
> -I../../src/include -I../../src/include -I
> /export/home/drkirkby/sage-4.3.3.alpha0/local/include -DHAVE_CONFIG_H
> -g -O2 -c unique.c -o unique.o
> gcc -std=gnu99 -I../../src/extra/zlib -I../../src/extra/bzip2
> -I../../src/extra/pcre -I../../src/extra -I../../src/extra/xz/api -I.
> -I../../src/include -I../../src/include -I
> /export/home/drkirkby/sage-4.3.3.alpha0/local/include -DHAVE_CONFIG_H
> -g -O2 -c util.c -o util.o
> util.c: In function 'Rf_Scollate':
> util.c:1679: warning: implicit declaration of function
'uiter_setUTF8'
> util.c:1681: warning: implicit declaration of function
'ucol_strcollIter'
> gcc -std=gnu99 -I../../src/extra/zlib -I../../src/extra/bzip2
> -I../../src/extra/pcre -I../../src/extra -I../../src/extra/xz/api -I.
> -I../../src/include -I../../src/include -I
> /export/home/drkirkby/sage-4.3.3.alpha0/local/include -DHAVE_CONFIG_H
> -g -O2 -c version.c -o version.o
> gcc -std=gnu99 -I../../src/extra/zlib -I../../src/extra/bzip2
> -I../../src/extra/pcre -I../../src/extra -I../../src/extra/xz/api -I.
> -I../../src/include -I../../src/include -I
> /export/home/drkirkby/sage-4.3.3.alpha0/local/include -DHAVE_CONFIG_H
> -g -O2 -c vfonts.c -o vfonts.o
> gfortran -g -O2 -c xxxpr.f -o xxxpr.o
> gcc -std=gnu99 -I../../src/extra/zlib -I../../src/extra/bzip2
> -I../../src/extra/pcre -I../../src/extra -I../../src/extra/xz/api -I.
> -I../../src/include -I../../src/include -I
> /export/home/drkirkby/sage-4.3.3.alpha0/local/include -DHAVE_CONFIG_H
> -g -O2 -c mkdtemp.c -o mkdtemp.o
> ar cr libR.a CConverters.o CommandLineArgs.o Rdynload.o Renviron.o RNG.o
> agrep.o apply.o arithmetic.o array.o attrib.o base.o bind.o builtin.o
> character.o coerce.o colors.o complex.o connections.o context.o cov.o
> cum.o dcf.o datetime.o debug.o deparse.o deriv.o devices.o dotcode.o
> dounzip.o dstruct.o duplicate.o engine.o envir.o errors.o eval.o
> format.o fourier.o gevents.o gram.o gram-ex.o gramRd.o graphics.o grep.o
> identical.o inlined.o inspect.o internet.o iosupport.o lapack.o list.o
> localecharset.o logic.o main.o mapply.o match.o memory.o model.o names.o
> objects.o optim.o optimize.o options.o par.o paste.o pcre.o platform.o
> plot.o plot3d.o plotmath.o print.o printarray.o printvector.o
> printutils.o qsort.o random.o raw.o registration.o relop.o rlocale.o
> saveload.o scan.o seq.o serialize.o size.o sort.o source.o split.o
> sprintf.o startup.o subassign.o subscript.o subset.o summary.o
> sysutils.o unique.o util.o version.o vfonts.o xxxpr.o mkdtemp.o libs/*o
> ranlib libR.a
> gcc -std=gnu99 -R/export/home/drkirkby/sage-4.3.3.alpha0/local/lib
> -L/export/home/drkirkby/sage-4.3.3.alpha0/local/lib -o R.bin Rmain.o
> libR.a -L../../lib -lRblas
> -R/export/home/drkirkby/sage-4.3.3.alpha0/local/lib -lgfortran -lm
> -lreadline -ltermcap -lnsl -lsocket -ldl -lm -liconv -licuuc -licui18n
> Undefined first referenced
> symbol in file
> uiter_setUTF8 libR.a(util.o)
> ucol_strcollIter libR.a(util.o)
> ld: fatal: Symbol referencing errors. No output written to R.bin
> collect2: ld returned 1 exit status
>
>
> note the two earlier lines:
> util.c:1679: warning: implicit declaration of function
'uiter_setUTF8'
> util.c:1681: warning: implicit declaration of function
'ucol_strcollIter'
>
> Any ideas how I might solve this? I'm using gcc 4.4.3.
>
> Dave
Someone emailed me privately about this matter, and suggested I tried the
configure option
--without-ICU
That did solve the problem, which means the ICU library
http://site.icu-project.org/ is not needed. I can't see this option
documented
anywhere, so it would be helpful if put in the installation manual.
R is used as part of the Sage maths project. The ICU library issue is documented
on the Sage bug tracker, although some of the issues reported in this particular
ticket are not directly related to ICU library issue, but a bit of a clean-up of
how Sage uses R.
http://trac.sagemath.org/sage_trac/ticket/8285
Dave