#32722 closed defect (fixed)
pango, pango-devel: build failure with cairo +quartz
Reported by: | stealthjeff@… | Owned by: | ryandesign (Ryan Carsten Schmidt) |
---|---|---|---|
Priority: | Normal | Milestone: | |
Component: | ports | Version: | 2.0.3 |
Keywords: | Cc: | blender3dartist@…, macports@…, su-v, an0nym@…, Tom.Schoonjans@…, macports1@…, cz@… | |
Port: | pango, pango-devel |
Description (last modified by ryandesign (Ryan Carsten Schmidt))
Build fails on 10.7 (Lion) with XCode 4.2.1.
Also failed with configure.compiler=llvm-gcc-4.2
Also failed with configure.compiler=apple-gcc-4.2 configure.cxx=g++-apple-4.2
Text from main.log:
:info:build CC basic-coretext.lo :info:build /bin/sh ../../libtool --silent --tag=CC --mode=compile /opt/local/bin/gcc-apple-4.2 -DHAVE_CONFIG_H -I. -I../.. -DG_LOG_DOMAIN=\"Pango\" -DPANGO_ENABLE_ENGINE -DPANGO_ENABLE_DEBUG -I../.. -I../../pango -D_REENTRANT -I/opt/local/include/glib-2.0 -I/opt/local/lib/glib-2.0/include -I/opt/local/include -I/opt/local/include/freetype2 -I/opt/local/include -I/opt/local/include -D_REENTRANT -I/opt/local/include/cairo -I/opt/local/include/glib-2.0 -I/opt/local/lib/glib-2.0/include -I/opt/local/include -I/opt/local/include/pixman-1 -I/opt/local/include/freetype2 -I/opt/local/include/libpng14 -I/opt/local/include -pipe -O2 -arch x86_64 -arch i386 -Wall -c -o basic-coretext.lo basic-coretext.c :info:build CCLD pango-basic-fc.la :info:build CCLD pango-basic-coretext.la :info:build Undefined symbols for architecture x86_64: :info:build "_g_object_new", referenced from: :info:build _script_engine_create in basic-coretext.o :info:build "_pango_engine_shape_get_type", referenced from: :info:build _script_engine_init in basic-coretext.o :info:build "_g_type_module_register_type", referenced from: :info:build _script_engine_init in basic-coretext.o :info:build "_pango_font_get_glyph_extents", referenced from: :info:build _set_glyph in basic-coretext.o :info:build _basic_engine_shape in basic-coretext.o :info:build "_pango_core_text_font_get_type", referenced from: :info:build _basic_engine_shape in basic-coretext.o :info:build "_g_type_check_instance_cast", referenced from: :info:build _basic_engine_shape in basic-coretext.o :info:build "_pango_core_text_font_get_ctfont", referenced from: :info:build _basic_engine_shape in basic-coretext.o :info:build "_g_strndup", referenced from: :info:build _basic_engine_shape in basic-coretext.o :info:build "_g_free", referenced from: :info:build _basic_engine_shape in basic-coretext.o :info:build "_pango_glyph_string_set_size", referenced from: :info:build _basic_engine_shape in basic-coretext.o :info:build "_pango_font_get_type", referenced from: :info:build _basic_engine_shape in basic-coretext.o :info:build "_pango_font_get_coverage", referenced from: :info:build _basic_engine_shape in basic-coretext.o :info:build "_g_utf8_skip", referenced from: :info:build _basic_engine_shape in basic-coretext.o :info:build "_pango_is_zero_width", referenced from: :info:build _basic_engine_shape in basic-coretext.o :info:build "_g_utf8_get_char", referenced from: :info:build _basic_engine_shape in basic-coretext.o :info:build "_pango_coverage_get", referenced from: :info:build _basic_engine_shape in basic-coretext.o :info:build "_g_unichar_type", referenced from: :info:build _basic_engine_shape in basic-coretext.o :info:build "_pango_get_mirror_char", referenced from: :info:build _basic_engine_shape in basic-coretext.o :info:build "_pango_coverage_unref", referenced from: :info:build _basic_engine_shape in basic-coretext.o :info:build ld: symbol(s) not found for architecture x86_64 :info:build collect2: ld returned 1 exit status :info:build Undefined symbols for architecture i386: :info:build "_g_object_new", referenced from: :info:build _script_engine_create in basic-coretext.o :info:build "_pango_engine_shape_get_type", referenced from: :info:build _script_engine_init in basic-coretext.o :info:build "_g_type_module_register_type", referenced from: :info:build _script_engine_init in basic-coretext.o :info:build "_pango_font_get_glyph_extents", referenced from: :info:build _set_glyph in basic-coretext.o :info:build _basic_engine_shape in basic-coretext.o :info:build "_pango_core_text_font_get_type", referenced from: :info:build _basic_engine_shape in basic-coretext.o :info:build "_g_type_check_instance_cast", referenced from: :info:build _basic_engine_shape in basic-coretext.o :info:build "_pango_core_text_font_get_ctfont", referenced from: :info:build _basic_engine_shape in basic-coretext.o :info:build "_g_strndup", referenced from: :info:build _basic_engine_shape in basic-coretext.o :info:build "_g_free", referenced from: :info:build _basic_engine_shape in basic-coretext.o :info:build "_pango_glyph_string_set_size", referenced from: :info:build _basic_engine_shape in basic-coretext.o :info:build "_pango_font_get_type", referenced from: :info:build _basic_engine_shape in basic-coretext.o :info:build "_pango_font_get_coverage", referenced from: :info:build _basic_engine_shape in basic-coretext.o :info:build "_pango_is_zero_width", referenced from: :info:build _basic_engine_shape in basic-coretext.o :info:build "_g_utf8_get_char", referenced from: :info:build _basic_engine_shape in basic-coretext.o :info:build "_pango_coverage_get", referenced from: :info:build _basic_engine_shape in basic-coretext.o :info:build "_g_unichar_type", referenced from: :info:build _basic_engine_shape in basic-coretext.o :info:build "_pango_get_mirror_char", referenced from: :info:build _basic_engine_shape in basic-coretext.o :info:build "_pango_coverage_unref", referenced from: :info:build _basic_engine_shape in basic-coretext.o :info:build "_g_utf8_skip", referenced from: :info:build _basic_engine_shape in basic-coretext.o :info:build ld: symbol(s) not found for architecture i386 :info:build collect2: ld returned 1 exit status :info:build lipo: can't open input file: /var/tmp//ccz25ym7.out (No such file or directory) :info:build make[3]: *** [pango-basic-coretext.la] Error 1 :info:build make[3]: Leaving directory `/opt/local/var/macports/build/_opt_local_var_macports_sources_rsync.macports.org_release_tarballs_ports_x11_pango-devel/pango-devel/work/pango-1.29.4/modules/basic'
Can provide full log if required.
Attachments (2)
Change History (17)
comment:1 Changed 13 years ago by ryandesign (Ryan Carsten Schmidt)
Cc: | stealthjeff@… removed |
---|---|
Description: | modified (diff) |
Owner: | changed from macports-tickets@… to ryandesign@… |
comment:2 Changed 13 years ago by ryandesign (Ryan Carsten Schmidt)
comment:3 follow-up: 9 Changed 13 years ago by blender3dartist@…
The build fails because of the "-no-undefined" option being passed. Removing it allows pango to build and install. I don't know the repercussions in removing this flag, however.
comment:7 Changed 13 years ago by ryandesign (Ryan Carsten Schmidt)
Cc: | an0nym@… Tom.Schoonjans@… macports1@… added |
---|---|
Port: | pango added |
Status: | new → assigned |
Summary: | pango-devel @1.29.4 +no_x11 +quartz +universal - build failure → pango, pango-devel: build failure with +no_x11 +quartz |
Now that pango has been updated to 1.30.0 it also experiences this problem, as reported in duplicate #34055.
comment:8 Changed 13 years ago by jmroot (Joshua Root)
Summary: | pango, pango-devel: build failure with +no_x11 +quartz → pango, pango-devel: build failure with cairo +quartz |
---|
You don't need -x11/+no_x11 to get this, I'm seeing it with +x11. Given that the quartz variant does nothing in pango, this must depend on how cairo is built.
comment:9 Changed 13 years ago by seanfarley (Sean Farley)
Replying to blender3dartist@…:
The build fails because of the "-no-undefined" option being passed. Removing it allows pango to build and install. I don't know the repercussions in removing this flag, however.
Yes, this is the correct solution. -no-undefined is usually reserved for making static libraries. The symbols that are missing are all defined in libgobect, libpangocairo, or libpango itself (from other object files).
Changed 13 years ago by seanfarley (Sean Farley)
Attachment: | pango.patch added |
---|
remove the -no-undefined flag
comment:10 follow-up: 11 Changed 13 years ago by ryandesign (Ryan Carsten Schmidt)
Hmm, I wonder why we are using -no-undefined in the first place. I wonder also why we are using -bind_at_load. Both have been in the portfiles for awhile. Anybody know these things?
comment:11 Changed 13 years ago by seanfarley (Sean Farley)
Replying to ryandesign@…:
Hmm, I wonder why we are using -no-undefined in the first place. I wonder also why we are using -bind_at_load. Both have been in the portfiles for awhile. Anybody know these things?
While I can't say why this was changed in the first place, it looks like -no-undefined was first introduced here (syncing with fink?):
browser:trunk/dports/x11/pango/Portfile?rev=2670
As for the -bind_at_load, yeah, that should also be removed since it's only really for executables. It was first introduced here:
browser:trunk/dports/x11/pango/Portfile?rev=6220
Maybe it was a mistake in the first place?
comment:13 Changed 13 years ago by jmroot (Joshua Root)
The linking situation on Jaguar, which is what would have been targeted back then, is quite different to the platforms we support now. The glibtool situation probably wasn't nearly as good back then either. So yeah, if you don't know a reason to be adding those ldflags, don't.
comment:14 Changed 13 years ago by ryandesign (Ryan Carsten Schmidt)
Resolution: | → fixed |
---|---|
Status: | assigned → closed |
Ok, I've removed them in r92079.
You should attach the whole main.log.