Opened 15 years ago

Closed 14 years ago

Last modified 14 years ago

#20920 closed defect (fixed)

texlive_base fails to build when icu is installed

Reported by: jean-philippe.humbert@… Owned by: drkp (Dan Ports)
Priority: Normal Milestone:
Component: ports Version: 1.8.0
Keywords: Cc: jungwook.shin@…, bgrupe27, n.a.hawes@…, sck-nogas (Scott C. Kennedy), nox@…, bm55b@…, drkp (Dan Ports), roland@…, vinc17@…
Port: texlive_base

Description

When I upgraded to Snow Leopard I removed MacPorts and did a fresh install. texlive_base, however, failed to build.

Output from "sudo port install texlive_base"

--->  Building texlive_base
Error: Target org.macports.build returned: shell command " cd "/opt/local/var/macports/build/_opt_local_var_macports_sources_rsync.macports.org_release_ports_tex_texlive_base/work/texlive_base-2007" && /usr/bin/make all " returned error 2
Command output:       _readFile in makeconv.o
  "_uprv_malloc_3_4", referenced from:
      _MBCSOpen in genmbcs.o
      _MBCSAddTable in genmbcs.o
      _MBCSAddTable in genmbcs.o
      _CnvExtOpen in gencnvex.o
  "_u_strFromUTF32_3_4", referenced from:
      _generateToUTable in gencnvex.o
      _generateToUTable in gencnvex.o
  "_T_CString_stricmp_3_4", referenced from:
      _main in makeconv.o
  "_uprv_isInvariantString_3_4", referenced from:
      _main in makeconv.o
  "_u_getDataDirectory_3_4", referenced from:
      _main in makeconv.o
  "_T_FileStream_close_3_4", referenced from:
      _readFile in makeconv.o
      _main in makeconv.o
  "_uprv_free_3_4", referenced from:
      _MBCSClose in genmbcs.o
      _MBCSClose in genmbcs.o
      _MBCSClose in genmbcs.o
  "_u_getVersion_3_4", referenced from:
      _main in makeconv.o
ld: symbol(s) not found
collect2: ld returned 1 exit status
make[3]: *** [../../bin/makeconv] Error 1
make[2]: *** [all-recursive] Error 2
make[1]: *** [all-recursive] Error 2
make: *** [libs/icu-xetex/lib/libsicuuc.a] Error 2

Error: Status 1 encountered during processing.
jph@lolo/~ % 

Attachments (1)

DebugOutput.zip (40.9 KB) - added by jean-philippe.humbert@… 15 years ago.
sudo port -d install texlive_base

Download all attachments as: .zip

Change History (34)

comment:1 Changed 15 years ago by jmroot (Joshua Root)

Keywords: snowleopard added; snow leopard textlive_base removed
Summary: textlive_base fails to build on snow leopardtexlive_base fails to build on snow leopard

Installed OK here. That doesn't look like the first error, so please attach debug output.

comment:2 Changed 15 years ago by nerdling (Jeremy Lavergne)

This works for me.

Changed 15 years ago by jean-philippe.humbert@…

Attachment: DebugOutput.zip added

sudo port -d install texlive_base

comment:3 Changed 15 years ago by jungwook.shin@…

Cc: jungwook.shin@… added

Cc Me!

comment:4 Changed 15 years ago by bgrupe27

Cc: bgrupe@… added

Cc Me!

comment:5 Changed 15 years ago by yves@…

Fails the same for me on Leopard (10.5)

comment:6 Changed 15 years ago by n.a.hawes@…

Cc: n.a.hawes@… added

Cc Me!

comment:7 Changed 15 years ago by ben@…

Cc: ben@… added

Cc Me!

comment:8 in reply to:  description Changed 15 years ago by sebastian@…

Replying to jean-philippe.humbert@…:

When I upgraded to Snow Leopard I removed MacPorts and did a fresh install. texlive_base, however, failed to build.

Output from "sudo port install texlive_base"

--->  Building texlive_base
Error: Target org.macports.build returned: shell command " cd "/opt/local/var/macports/build/_opt_local_var_macports_sources_rsync.macports.org_release_ports_tex_texlive_base/work/texlive_base-2007" && /usr/bin/make all " returned error 2
Command output:       _readFile in makeconv.o
  "_uprv_malloc_3_4", referenced from:
      _MBCSOpen in genmbcs.o
      _MBCSAddTable in genmbcs.o
      _MBCSAddTable in genmbcs.o
      _CnvExtOpen in gencnvex.o
  "_u_strFromUTF32_3_4", referenced from:
      _generateToUTable in gencnvex.o
      _generateToUTable in gencnvex.o
  "_T_CString_stricmp_3_4", referenced from:
      _main in makeconv.o
  "_uprv_isInvariantString_3_4", referenced from:
      _main in makeconv.o
  "_u_getDataDirectory_3_4", referenced from:
      _main in makeconv.o
  "_T_FileStream_close_3_4", referenced from:
      _readFile in makeconv.o
      _main in makeconv.o
  "_uprv_free_3_4", referenced from:
      _MBCSClose in genmbcs.o
      _MBCSClose in genmbcs.o
      _MBCSClose in genmbcs.o
  "_u_getVersion_3_4", referenced from:
      _main in makeconv.o
ld: symbol(s) not found
collect2: ld returned 1 exit status
make[3]: *** [../../bin/makeconv] Error 1
make[2]: *** [all-recursive] Error 2
make[1]: *** [all-recursive] Error 2
make: *** [libs/icu-xetex/lib/libsicuuc.a] Error 2

Error: Status 1 encountered during processing.
jph@lolo/~ % 

texlive_base was compiled here without problems (Snow Leopard Update, fresh install of Macports)

comment:9 Changed 15 years ago by nerdling (Jeremy Lavergne)

Have you tried doing a clean on texlive and attempted to recompile it then?

comment:10 Changed 15 years ago by jean-philippe.humbert@…

Yes I have tried it (again). It does not help.

comment:11 Changed 15 years ago by joshua.levasseur@…

I get the exact same build error on Snow Leopard. It is a fresh install of MacPorts (I think; I didn't uninstall anything, but moved the old /opt/local to /opt/local.old). I did build some other ports before trying to build texlive.

The following ports are currently installed:
  autoconf @2.64_2 (active)
  automake @1.11_0 (active)
  cairo @1.8.8_0+macosx (active)
  couchdb @0.9.1_0 (active)
  erlang @R13B01_1+darwin_10 (active)
  expat @2.0.1_0 (active)
  fontconfig @2.7.3_0+macosx (active)
  freetype @2.3.9_1+macosx (active)
  gawk @3.1.7_0 (active)
  gettext @0.17_4 (active)
  ghostscript @8.70_0 (active)
  gperf @3.0.4_0 (active)
  help2man @1.36.4_1 (active)
  icu @4.3.1_0 (active)
  jpeg @6b_3 (active)
  libiconv @1.13_0 (active)
  libpixman @0.16.0_0 (active)
  libpng @1.2.38_0 (active)
  libtool @2.2.6a_0 (active)
  lzmautils @4.32.7_1 (active)
  m4 @1.4.13_0 (active)
  ncurses @5.7_0+darwin_10 (active)
  ncursesw @5.7_0+darwin_10 (active)
  nspr @4.8_2 (active)
  openmotif @2.3.2_0 (active)
  p5-locale-gettext @1.05_0 (active)
  perl5 @5.8.9_0 (active)
  perl5.8 @5.8.9_3 (active)
  pkgconfig @0.23_1 (active)
  readline @6.0.000_1+darwin (active)
  spidermonkey @1.7.0_4 (active)
  tcl @8.5.6_0+darwin (active)
  texi2html @1.82_0 (active)
  texinfo @4.13_0 (active)
  texlive_texmf-full @2007_4 (active)
  texlive_texmf-minimal @2007_3 (active)
  tk @8.5.6_1+darwin (active)
  xbitmaps @1.0.1_1 (active)
  Xft2 @2.1.13_2 (active)
  xorg-bigreqsproto @1.1.0_0 (active)
  xorg-inputproto @1.5.1_0 (active)
  xorg-kbproto @1.0.3_0 (active)
  xorg-libice @1.0.6_0 (active)
  xorg-libsm @1.1.1_0 (active)
  xorg-libX11 @1.2.2_0 (active)
  xorg-libXau @1.0.5_0 (active)
  xorg-libXdmcp @1.0.2_1 (active)
  xorg-libXext @1.0.99.4_1 (active)
  xorg-libXmu @1.0.4_1 (active)
  xorg-libXp @1.0.0_3 (active)
  xorg-libXScrnSaver @1.2.0_0 (active)
  xorg-libXt @1.0.6_0 (active)
  xorg-printproto @1.0.4_0 (active)
  xorg-renderproto @0.11_0 (active)
  xorg-scrnsaverproto @1.2.0_0 (active)
  xorg-util-macros @1.3.0_0 (active)
  xorg-xcmiscproto @1.2.0_0 (active)
  xorg-xextproto @7.1.1_0 (active)
  xorg-xf86bigfontproto @1.2.0_0 (active)
  xorg-xproto @7.0.15_0 (active)
  xorg-xtrans @1.2.4_0 (active)
  xrender @0.9.4_6 (active)
  zlib @1.2.3_3 (active)

comment:12 Changed 15 years ago by sven@…

The build seems to fail if you have ICU 4.3 installed.

comment:13 Changed 15 years ago by jean-philippe.humbert@…

ICU is installed on my computer too

comment:14 Changed 15 years ago by mf2k (Frank Schima)

Cc: sck@… added

Cc reporter of duplicate #20302.

comment:15 Changed 15 years ago by mf2k (Frank Schima)

Keywords: snowleopard removed

I can confirm that deactivating icu allows texlive_base to build for me. Also, this is not a Snow Leopard only issue.

comment:16 in reply to:  15 Changed 15 years ago by joshua.levasseur@…

Replying to macsforever2000@…:

I can confirm that deactivating icu allows texlive_base to build for me. Also, this is not a Snow Leopard only issue.

I also was able to build by deactivating icu. Thanks for the hint.

Also, it seems that moving the old ports from /opt/local to /opt/local.old doesn't actually work (I'd described doing this in my prior comment). Mac OS X still found stuff under there, such as libXpm.

comment:17 Changed 15 years ago by ben@…

Cc: ben@… removed

Cc Me!

comment:18 Changed 15 years ago by jean-philippe.humbert@…

It works for me too. I have deactivated ICU too and I was able to build texlive_base.

comment:19 Changed 15 years ago by mf2k (Frank Schima)

Summary: texlive_base fails to build on snow leopardtexlive_base fails to build when icu is installed

comment:20 Changed 15 years ago by ryandesign (Ryan Carsten Schmidt)

Cc: nox@… added

Perhaps texlive_base needs to be marked as conflicting with icu.

comment:21 Changed 15 years ago by JDLH (Jim DeLaHunt)

I observe this error when building texlive_base as a dependency of lilypond. I am on Mac OS X 10.5.8 (i.e. not Snow Leopard).

I do appear to have ICU:

% port installed icu texlive_base
The following ports are currently installed:
  icu @4.2.1_1 (active)

Turning off ICU, cleaning texlive_base, and reinstalling texlive_base appears to succeed:

sudo port deactivate icu
Password:
--->  Deactivating icu
% sudo port clean texlive_base
--->  Cleaning texlive_base
% sudo port install texlive_base
--->  Computing dependencies for texlive_base
--->  Fetching texlive_base
--->  Verifying checksum(s) for texlive_base
--->  Extracting texlive_base
--->  Applying patches to texlive_base
--->  Configuring texlive_base
--->  Building texlive_base
--->  Staging texlive_base into destroot
--->  Installing texlive_base @2007_7+no_x11
--->  Activating texlive_base @2007_7+no_x11
--->  Cleaning texlive_base

Thus I it looks to me (though I know very little about all these ports) like texlive_base @2007_7+no_x11 does have some kind of conflict with icu @4.2.1_1 on Mac OS X 10.5.8.

This was the tail end of stdout for my failing build (while ICU was activated):

--->  Attempting to fetch texlive_base-2007-src.tar.bz2 from ftp://ftp.openbsd.org/pub/OpenBSD/distfiles
--->  Verifying checksum(s) for texlive_base
--->  Extracting texlive_base
--->  Applying patches to texlive_base
--->  Configuring texlive_base
--->  Building texlive_base
Error: Target org.macports.build returned: shell command " cd "/opt/local/var/macports/build/_opt_local_var_macports_sources_rsync.macports.org_release_ports_tex_texlive_base/work/texlive_base-2007" && /usr/bin/make all " returned error 2
Command output:       _main in makeconv.o
  "_u_errorName_3_4", referenced from:
      _main in makeconv.o
      _main in makeconv.o
      _main in makeconv.o
  "_u_strFromUTF32_3_4", referenced from:
      _generateToUTable in gencnvex.o
      _generateToUTable in gencnvex.o
  "_T_FileStream_write_3_4", referenced from:
      _main in makeconv.o
  "_uprv_free_3_4", referenced from:
      _MBCSClose in genmbcs.o
      _MBCSClose in genmbcs.o
      _MBCSClose in genmbcs.o
  "_T_FileStream_open_3_4", referenced from:
      _readFile in makeconv.o
      _main in makeconv.o
  "_T_FileStream_readLine_3_4", referenced from:
      _readFile in makeconv.o
      _readFile in makeconv.o
  "_T_CString_stricmp_3_4", referenced from:
      _main in makeconv.o
  "_uprv_isInvariantString_3_4", referenced from:
      _main in makeconv.o
ld: symbol(s) not found
collect2: ld returned 1 exit status
make[3]: *** [../../bin/makeconv] Error 1
make[2]: *** [all-recursive] Error 2
make[1]: *** [all-recursive] Error 2
make: *** [libs/icu-xetex/lib/libsicuuc.a] Error 2

Error: The following dependencies failed to build: mftrace texlive texlive_base netpbm urw-fonts
Error: Status 1 encountered during processing.

comment:22 Changed 15 years ago by bm55b@…

Cc: bm55b@… added

Cc Me!

comment:23 Changed 15 years ago by drkp (Dan Ports)

Cc: dports@… added

Cc Me!

comment:24 Changed 15 years ago by roland@…

Cc: roland@… added

Cc Me!

comment:25 Changed 15 years ago by philip@…

I appreciate the detailed workaround provided in comment #21 above, because it worked for me. If you find yourself here, then try that.

comment:26 Changed 15 years ago by drkp (Dan Ports)

To add a bit more clarification about what's going on: texlive includes its own version of icu which, regrettably, is different from standard icu. If icu is installed before building texlive, it tries to link against the system icu rather than its own.

I actually thought this one had been fixed -- guess it was just wishful thinking on my part.

I'm working on many changes to the texlive ports (#16492) and will make a note to deal with this. If nothing else we should mark a conflict or print a warning if icu is installed.

comment:27 Changed 14 years ago by vinc17@…

Cc: vinc17@… added

Cc Me!

comment:28 Changed 14 years ago by vinc17@…

Making texlive conflict with icu would be a very bad idea, due to the dependencies.

In the mean time, it might be possible to disable the build of icu-xetex. But perhaps the bug can be fixed:

Here the failure occurs with:

/usr/bin/g++-4.0 -pipe -O2 -arch ppc  -L/opt/local/lib -arch ppc  -o ../../bin/makeconv makeconv.o ucnvstat.o genmbcs.o gencnvex.o -L../../lib -lsicutu -L../../lib -lsicui18n -L../../lib -lsicuuc -L../../lib -L../../stubdata -lsicudata -lpthread -lm

The problem seems to be the first -L/opt/local/lib, which comes from:

ac_cv_env_LDFLAGS_value='-L/opt/local/lib -arch ppc'

(see config.log in libs/icu-xetex).

Setting -L options in LDFLAGS is wrong IMHO, because one cannot control the precedence. Ditto for CPPFLAGS and CFLAGS. See the ENVIRONMENT section of the gcc man page; that should be better.

comment:29 Changed 14 years ago by drkp (Dan Ports)

texlive 2009 (see #16492) seems to build OK even with icu installed, so hopefully that should resolve this one too.

Unless I hear about any bugs or other objections, I'm planning on committing that set of updates in a week or so (to allow some more time for testing, and to ensure that people have upgraded to MP1.9 since it uses 1.9 features)

comment:30 Changed 14 years ago by drkp (Dan Ports)

Owner: changed from macports-tickets@… to dports@…
Status: newassigned

The TeX Live 2009 update is in, and I think it fixes this bug. Is anyone still experiencing this problem?

(Note that texlive_base is replaced by texlive-bin for TL2009)

comment:31 in reply to:  30 Changed 14 years ago by drkp (Dan Ports)

Resolution: fixed
Status: assignedclosed

Replying to dports@…:

The TeX Live 2009 update is in, and I think it fixes this bug. Is anyone still experiencing this problem?

I'll assume that the resounding silence means it's fixed.

comment:32 Changed 14 years ago by jean-philippe.humbert@…

Well Sorry it is ok now.

comment:33 in reply to:  30 Changed 14 years ago by vinc17@…

I forgot this bug...

Replying to dports@…:

The TeX Live 2009 update is in, and I think it fixes this bug. Is anyone still experiencing this problem?

Yes, see bug #25772.

Note: See TracTickets for help on using tickets.