Opened 17 months ago
Last modified 5 weeks ago
#67675 assigned defect
gtk3 @3.24.38 +quartz: Undefined symbols for architecture x86_64
Reported by: | cooljeanius (Eric Gallager) | Owned by: | mascguy (Christopher Nielsen) |
---|---|---|---|
Priority: | Normal | Milestone: | |
Component: | ports | Version: | 2.8.1 |
Keywords: | ventura | Cc: | |
Port: | gtk3 |
Description
FAILED: gdk/libgdk-3.0.dylib /usr/bin/clang -arch x86_64 -o gdk/libgdk-3.0.dylib gdk/libgdk-3.0.dylib.p/meson-generated_.._gdkenumtypes.c.o gdk/libgdk-3.0.dylib.p/meson-generated_.._gdkmarshalers.c.o gdk/libgdk-3.0.dylib.p/meson-generated_.._gdkresources.c.o gdk/libgdk-3.0.dylib.p/gdk-private.c.o gdk/libgdk-3.0.dylib.p/gdk.c.o gdk/libgdk-3.0.dylib.p/gdkapplaunchcontext.c.o gdk/libgdk-3.0.dylib.p/gdkcairo.c.o gdk/libgdk-3.0.dylib.p/gdkcursor.c.o gdk/libgdk-3.0.dylib.p/gdkdeprecated.c.o gdk/libgdk-3.0.dylib.p/gdkdevice.c.o gdk/libgdk-3.0.dylib.p/gdkdevicemanager.c.o gdk/libgdk-3.0.dylib.p/gdkdevicepad.c.o gdk/libgdk-3.0.dylib.p/gdkdisplay.c.o gdk/libgdk-3.0.dylib.p/gdkdisplaymanager.c.o gdk/libgdk-3.0.dylib.p/gdkdnd.c.o gdk/libgdk-3.0.dylib.p/gdkevents.c.o gdk/libgdk-3.0.dylib.p/gdkframetimings.c.o gdk/libgdk-3.0.dylib.p/gdkgl.c.o gdk/libgdk-3.0.dylib.p/gdkglcontext.c.o gdk/libgdk-3.0.dylib.p/gdkglobals.c.o gdk/libgdk-3.0.dylib.p/gdkkeys.c.o gdk/libgdk-3.0.dylib.p/gdkkeyuni.c.o gdk/libgdk-3.0.dylib.p/gdkoffscreenwindow.c.o gdk/libgdk-3.0.dylib.p/gdkframeclock.c.o gdk/libgdk-3.0.dylib.p/gdkframeclockidle.c.o gdk/libgdk-3.0.dylib.p/gdkpango.c.o gdk/libgdk-3.0.dylib.p/gdkpixbuf-drawable.c.o gdk/libgdk-3.0.dylib.p/gdkprofiler.c.o gdk/libgdk-3.0.dylib.p/gdkproperty.c.o gdk/libgdk-3.0.dylib.p/gdkrectangle.c.o gdk/libgdk-3.0.dylib.p/gdkrgba.c.o gdk/libgdk-3.0.dylib.p/gdkscreen.c.o gdk/libgdk-3.0.dylib.p/gdkselection.c.o gdk/libgdk-3.0.dylib.p/gdkvisual.c.o gdk/libgdk-3.0.dylib.p/gdkwindow.c.o gdk/libgdk-3.0.dylib.p/gdkwindowimpl.c.o gdk/libgdk-3.0.dylib.p/gdkseat.c.o gdk/libgdk-3.0.dylib.p/gdkseatdefault.c.o gdk/libgdk-3.0.dylib.p/gdkdevicetool.c.o gdk/libgdk-3.0.dylib.p/gdkdrawingcontext.c.o gdk/libgdk-3.0.dylib.p/gdkmonitor.c.o gdk/libgdk-3.0.dylib.p/deprecated_gdkcolor.c.o -L/opt/local/lib -I/opt/local/include -Wl,-dead_strip_dylibs -Wl,-headerpad_max_install_names -Wl,-undefined,error -shared -install_name @rpath/libgdk-3.0.dylib -compatibility_version 2407 -current_version 2407.32.0 -Wl,-force_load gdk/quartz/libgdk-quartz.a -Wl,-headerpad_max_install_names -Wl,-syslibroot,/Library/Developer/CommandLineTools/SDKs/MacOSX11.sdk -arch x86_64 -pipe -Os -fstrict-aliasing -isysroot/Library/Developer/CommandLineTools/SDKs/MacOSX11.sdk -arch x86_64 -DX_LOCALE -isysroot/Library/Developer/CommandLineTools/SDKs/MacOSX11.sdk -Wl,-rpath,/opt/local/lib -lm /opt/local/lib/libgdk_pixbuf-2.0.dylib /opt/local/lib/libgobject-2.0.dylib /opt/local/lib/libglib-2.0.dylib /opt/local/lib/libintl.dylib /opt/local/lib/libcairo.dylib /opt/local/lib/libpango-1.0.dylib /opt/local/lib/libharfbuzz.dylib /opt/local/lib/libfribidi.dylib /opt/local/lib/libcairo-gobject.dylib /opt/local/lib/libepoxy.dylib /opt/local/lib/libgio-2.0.dylib /opt/local/lib/libpangocairo-1.0.dylib -framework CoreGraphics -framework AppKit -framework Cocoa -framework Carbon -framework QuartzCore -framework IOSurface -framework CoreGraphics -framework AppKit -framework Cocoa -framework Carbon -framework QuartzCore -framework IOSurface Undefined symbols for architecture x86_64: "_OBJC_CLASS_$_NSConstantIntegerNumber", referenced from: l__unnamed_nsconstantintegernumber_ in libgdk-quartz.a(GdkQuartzView.c.o) l__unnamed_nsconstantintegernumber_.1 in libgdk-quartz.a(GdkQuartzView.c.o) ld: symbol(s) not found for architecture x86_64 clang: error: linker command failed with exit code 1 (use -v to see invocation) ninja: build stopped: subcommand failed. Command failed: cd "/opt/local/var/macports/build/_opt_local_var_macports_sources_rsync.macports.org_macports_release_tarballs_ports_gnome_gtk3/gtk3/work/build" && /opt/local/bin/ninja -j16 -v Exit code: 1 Error: Failed to build gtk3: command execution failed DEBUG: Error code: CHILDSTATUS 16711 1
I'm on Big Sur with Xcode 13. Looks kinda similar to some other bugs I've filed, which might mean it's just the result of some oddity of my environment, but I figured I'd file it anyways just in case.
Attachments (1)
Change History (13)
Changed 17 months ago by cooljeanius (Eric Gallager)
Attachment: | gtk3_main.log added |
---|
comment:1 follow-up: 2 Changed 17 months ago by mascguy (Christopher Nielsen)
Cc: | mascguy removed |
---|---|
Keywords: | ventura added |
Owner: | set to mascguy |
Status: | new → assigned |
Last week, I was able to successfully install gtk3 +quartz
on a friends MacBook Air Intel, running the latest version of Ventura. Along with GIMP, and other GTK3 apps.
All built and run fine.
Can't remember which Xcode version it was though, and don't have access to the machine at this point.
But can at least confirm that we don't have issues in-general.
Will scrutinize your log when I can find some time.
comment:2 follow-up: 3 Changed 17 months ago by mascguy (Christopher Nielsen)
Replying to mascguy:
Last week, I was able to successfully install
gtk3 +quartz
on a friends MacBook Air Intel, running the latest version of Ventura. Along with GIMP, and other GTK3 apps. All built and run fine.
Ugh, sorry, missed your comment that you're building on Big Sur. Not caffeinated enough yet.
So it looks like you're using Xcode 13.2.1, which has the Monterey SDK. But the latest version of Xcode for Big Sur - with a matching SDK - is Xcode 13.0:
https://xcodereleases.com/?scope=release
Can you try downgrading to 13.0, and see if that fixes the issue?
comment:3 follow-up: 4 Changed 17 months ago by mascguy (Christopher Nielsen)
Replying to mascguy:
So it looks like you're using Xcode 13.2.1, which has the Monterey SDK. But the latest version of Xcode for Big Sur - with a matching SDK - is Xcode 13.0:
https://xcodereleases.com/?scope=release
Can you try downgrading to 13.0, and see if that fixes the issue?
Of note, my Big Sur VM has Xcode 13.0, and everything related to GTK3/Quartz builds and runs fine.
comment:4 follow-up: 5 Changed 17 months ago by cooljeanius (Eric Gallager)
Replying to mascguy:
Replying to mascguy:
So it looks like you're using Xcode 13.2.1, which has the Monterey SDK. But the latest version of Xcode for Big Sur - with a matching SDK - is Xcode 13.0:
https://xcodereleases.com/?scope=release
Can you try downgrading to 13.0, and see if that fixes the issue?
Of note, my Big Sur VM has Xcode 13.0, and everything related to GTK3/Quartz builds and runs fine.
Hm, could you maybe force a build of it +quartz on the buildbot so that I could just grab a binary of it? (I guess this is kind of an example of #60511 in that case, then, since if quartz were the default gtk backend, the buildbots would have already done so...)
comment:5 follow-up: 6 Changed 17 months ago by mascguy (Christopher Nielsen)
Replying to cooljeanius:
Replying to mascguy:
Replying to mascguy:
So it looks like you're using Xcode 13.2.1, which has the Monterey SDK. But the latest version of Xcode for Big Sur - with a matching SDK - is Xcode 13.0:
https://xcodereleases.com/?scope=release
Can you try downgrading to 13.0, and see if that fixes the issue?
Of note, my Big Sur VM has Xcode 13.0, and everything related to GTK3/Quartz builds and runs fine.
Hm, could you maybe force a build of it +quartz on the buildbot so that I could just grab a binary of it? (I guess this is kind of an example of #60511 in that case, then, since if quartz were the default gtk backend, the buildbots would have already done so...)
It's not possible to build ports for Quartz on our buildbots, so that's not an option.
Are you reluctant to downgrade your version of Xcode? That's by far the best way forward, to rule out Xcode 13.2.1.
comment:6 follow-up: 10 Changed 16 months ago by cooljeanius (Eric Gallager)
Replying to mascguy:
Replying to cooljeanius:
Replying to mascguy:
Replying to mascguy:
So it looks like you're using Xcode 13.2.1, which has the Monterey SDK. But the latest version of Xcode for Big Sur - with a matching SDK - is Xcode 13.0:
https://xcodereleases.com/?scope=release
Can you try downgrading to 13.0, and see if that fixes the issue?
Of note, my Big Sur VM has Xcode 13.0, and everything related to GTK3/Quartz builds and runs fine.
Hm, could you maybe force a build of it +quartz on the buildbot so that I could just grab a binary of it? (I guess this is kind of an example of #60511 in that case, then, since if quartz were the default gtk backend, the buildbots would have already done so...)
It's not possible to build ports for Quartz on our buildbots, so that's not an option.
Are you reluctant to downgrade your version of Xcode?
Yeah, kinda, I mean, I guess I can, it'll just be a pain... Xcode is big, after all...
comment:7 follow-up: 8 Changed 16 months ago by kencu (Ken)
Or try keeping your new version of Xcode, just steal the system-matching SDK from someplace and put it where it goes.
comment:8 follow-up: 9 Changed 16 months ago by cooljeanius (Eric Gallager)
Replying to kencu:
Or try keeping your new version of Xcode, just steal the system-matching SDK from someplace and put it where it goes.
Actually wait, aren't there ports for that?
comment:9 Changed 16 months ago by kencu (Ken)
Replying to cooljeanius:
Replying to kencu:
Or try keeping your new version of Xcode, just steal the system-matching SDK from someplace and put it where it goes.
Actually wait, aren't there ports for that?
Sorta, but the SDK ports don't put the SDK in the location where macports base looks for it, so -- not really the solution, exactly. You could try using the port to install the right SDK and the ditto it into the right places it needs to be -- or just get the SDK yourself, it's probably just as easy to do that.
comment:10 Changed 16 months ago by mascguy (Christopher Nielsen)
Replying to cooljeanius:
Yeah, kinda, I mean, I guess I can, it'll just be a pain... Xcode is big, after all...
Well, this is just a one-time change, and it's not like you have to reinstall macOS or MacPorts.
I'd love to help you resolve this, but we need to rule out Xcode first.
comment:11 Changed 14 months ago by cooljeanius (Eric Gallager)
So I was looking through other tickets and came across #62537 where I solved a similar problem by adding -Wl,-F/System/Library/Frameworks/
to my linker flags; I'm trying that here too, now, with configure.ldflags
...
...and it seems to have worked.
comment:12 Changed 5 weeks ago by cooljeanius (Eric Gallager)
I'm running into this again while testing PR 26062: https://github.com/macports/macports-ports/pull/26062
main.log for gtk3