Homebrew / legacy-homebrew

💀 The former home of Homebrew/homebrew (deprecated)
https://brew.sh
26.99k stars 11.36k forks source link

gtkmm failed to build on 10.9.1 #26923

Closed sbp closed 10 years ago

sbp commented 10 years ago

Logs and details:

https://gist.github.com/sbp/9162614

Looks tricky:

libtool: link: clang++ [...]
Undefined symbols for architecture x86_64:
"Glib::ustring::ustring(std::string const&)", referenced from:
Gdk::DragContext::get_selection() const in dragcontext.o
ld: symbol(s) not found for architecture x86_64
clang: error: linker command failed with exit code 1 (use -v to see invocation)
make[1]: *** [libgdkmm-2.4.la] Error 1

And gtkmm is a dependency for inkscape.

adamv commented 10 years ago

Please post your brew doctor as well.

mistydemeo commented 10 years ago

Try rebuilding its dependencies, like glib.

sbp commented 10 years ago

My brew doctor:

https://gist.github.com/sbp/9158848#file-brew-doctor

sbp commented 10 years ago
$ brew remove glibmm gtk+ libsigc++ pangomm atkmm cairomm
$ brew install glibmm gtk+ libsigc++ pangomm atkmm cairomm
$ brew install gtkmm

Results in the same error.

adamv commented 10 years ago

Missed some deps.

sbp commented 10 years ago
$ brew info gtkmm
[...]
==> Dependencies
Build: xz ✔, pkg-config ✔
Required: glibmm ✔, gtk+ ✔, libsigc++ ✔, pangomm ✔, atkmm ✔, cairomm ✔

$ brew remove xz pkg-config glibmm gtk+ libsigc++ pangomm atkmm cairomm 
$ brew install xz pkg-config glibmm gtk+ libsigc++ pangomm atkmm cairomm
$ brew install gtkmm

Results in the same error.

adamv commented 10 years ago
$ brew deps gtkmm
atk
atkmm
cairo
cairomm
fontconfig
freetype
gdk-pixbuf
gettext
glib
glibmm
gobject-introspection
gtk+
harfbuzz
icu4c
jpeg
libffi
libpng
libsigc++
libtiff
pango
pangomm
pixman
pkg-config
xz
mistydemeo commented 10 years ago

Try removing glib as well as glibmm.

Can I see the build logs from your second attempt?

sbp commented 10 years ago
$ brew uninstall $(brew deps gtkmm)
$ brew install atk atkmm cairo cairomm fontconfig freetype \
    gdk-pixbuf gettext glib glibmm gobject-introspection gtk+ \
    harfbuzz icu4c jpeg libffi libpng libsigc++ libtiff pango \
    pangomm pixman pkg-config xz
$ brew install gtkmm

Results in the same error.

Logs from this installation attempt are here:

https://gist.github.com/sbp/9163221

mistydemeo commented 10 years ago

-lstdc++

Hm, I wonder what the chances are that it's trying to build against libstdc++ when its deps were all built with libc++.

mistydemeo commented 10 years ago

I can't reproduce this, however my 02.make.cc doesn't include -lstdc++ anywhere.

adamv commented 10 years ago

I'm sorry we don't have a better answer for this.

Since this has been opened there have been updates to most of the gtkmm dependency tree, so at this point the way forward is to (again, sorry) remove all of the dependencies and let them rebuild. If it still fails, we'll need updated troubleshooting information.