Opened 15 months ago
Last modified 7 months ago
#68112 assigned defect
gtk3 @3.24.38+universal: Error: gtk3 requires at least one architecture runnable on this machine to be able to build universally
Reported by: | Liontooth (David Liontooth) | Owned by: | mascguy (Christopher Nielsen) |
---|---|---|---|
Priority: | Normal | Milestone: | |
Component: | ports | Version: | |
Keywords: | arm64 | Cc: | cooljeanius (Eric Gallager) |
Port: | gtk3 |
Description
---> Attempting to fetch gtk+-3.24.38.tar.xz from http://ftp.gnome.org/pub/GNOME/sources/gtk+/3.24/ ---> Verifying checksums for gtk3 ---> Extracting gtk3 ---> Applying patches to gtk3 ---> Configuring gtk3 Error: Error: gtk3 requires at least one architecture runnable on this Error: machine to be able to build universally. Please add at least Error: one of the following architectures to `universal_archs` in Error: "/opt/local/etc/macports/macports.conf": Error: Error: ppc64 ppc
/opt/local/etc/macports/macports.conf has
#universal_archs x86_64
Attachments (2)
Change History (13)
comment:1 Changed 15 months ago by ryandesign (Ryan Carsten Schmidt)
Cc: | mascguy removed |
---|---|
Keywords: | arm64 added |
Owner: | set to mascguy |
Status: | new → assigned |
Summary: | arm64 not accepted → gtk3 @3.24.38+universal: Error: gtk3 requires at least one architecture runnable on this machine to be able to build universally |
comment:2 follow-up: 3 Changed 15 months ago by jmroot (Joshua Root)
There's a part in the Portfile where it tries to figure out which archs can be run on the build machine. It looks like this code doesn't account for arm64 systems.
comment:3 Changed 15 months ago by mascguy (Christopher Nielsen)
Replying to jmroot:
There's a part in the Portfile where it tries to figure out which archs can be run on the build machine. It looks like this code doesn't account for arm64 systems.
Yep. And ideally we shouldn't need it, if we could leverage what's already being done by muniversal
.
So I could use some advice/guidance on this, from you more Universal-savvy folks:
- The port is based on
muniversal 1.0
. Would migrating tomuniversal 1.1
assist at all with this? - Suggestions on how to eliminate the logic in question?
Changed 14 months ago by Liontooth (David Liontooth)
Attachment: | main.2.log added |
---|
2023-09-12 Build log
comment:4 follow-up: 5 Changed 14 months ago by Liontooth (David Liontooth)
I did a port update and attempted an install of gtk3-3.24.38 again. This time I got a different error:
build ninja: error: unknown target 'CC=/usr/bin/clang -arch arm64'
Context:
:notice:build ---> Building gtk3 :debug:build Executing org.macports.build (gtk3) :info:build ---> Building gtk3 for architecture arm64 :debug:build setting option build.dir to /opt/local/var/macports/build/_opt_local_var_macports_sources_rsync.macports.org_macports_release_tarballs_ports_gnome_gtk3/gtk3/work/build-arm64 :debug:build Environment: :debug:build CC_PRINT_OPTIONS='YES' :debug:build CC_PRINT_OPTIONS_FILE='/opt/local/var/macports/build/_opt_local_var_macports_sources_rsync.macports.org_macports_release_tarballs_ports_gnome_gtk3/gtk3/work/.CC_PRINT_OPTIONS' :debug:build CPATH='/opt/local/include' :debug:build DEVELOPER_DIR='/Library/Developer/CommandLineTools' :debug:build LIBRARY_PATH='/opt/local/lib' :debug:build MACOSX_DEPLOYMENT_TARGET='13.0' :debug:build MACPORTS_LEGACY_SUPPORT_DISABLED='1' :debug:build SDKROOT='/Library/Developer/CommandLineTools/SDKs/MacOSX13.sdk' :info:build Executing: cd "/opt/local/var/macports/build/_opt_local_var_macports_sources_rsync.macports.org_macports_release_tarballs_ports_gnome_gtk3/gtk3/work/build-arm64" && /opt/local/bin/ninja -j8 CC='/usr/bin/clang -arch arm64' CC_FOR_BUILD='/usr/bin/clang -arch arm64' -v :debug:build system: cd "/opt/local/var/macports/build/_opt_local_var_macports_sources_rsync.macports.org_macports_release_tarballs_ports_gnome_gtk3/gtk3/work/build-arm64" && /opt/local/bin/ninja -j8 CC='/usr/bin/clang -arch arm64' CC_FOR_BUILD='/usr/bin/clang -arch arm64' -v :info:build ninja: error: unknown target 'CC=/usr/bin/clang -arch arm64' :info:build 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-arm64" && /opt/local/bin/ninja -j8 CC='/usr/bin/clang -arch arm64' CC_FOR_BUILD='/usr/bin/clang -arch arm64' -v :info:build Exit code: 1 :error:build Failed to build gtk3: command execution failed :debug:build Error code: NONE
I enclose the main.log file.
comment:5 Changed 14 months ago by mascguy (Christopher Nielsen)
Replying to Liontooth:
I did a port update and attempted an install of gtk3-3.24.38 again. This time I got a different error:
build ninja: error: unknown target 'CC=/usr/bin/clang -arch arm64'
Thanks for the update, and the log file.
I'll try to find some time to test and fix this, over the next few days. More to follow.
comment:6 Changed 13 months ago by Liontooth (David Liontooth)
Hi Chris! You're no doubt a busy man. I'm still getting
unknown target 'CC=/usr/bin/clang -arch arm64'
Why isn't this particular package familiar with arm64? Since we're building for arm64 all the time, what is it that gtk3 is doing that makes the ninja build tool not recognize the target?
Build failure on arm64 with --build-tool=ninja https://github.com/randombit/botan/issues/3750 is reported fixed for botan with Fix Ninja build to pass instruction set flags to the compiler https://github.com/randombit/botan/pull/3751.
https://gitweb.gentoo.org/repo/gentoo.git/commit/?id=f84e0bd3e7f13888c343883bbc5e0b26b0694bf3 shows the details, involving
--cpu=${chostarch}
comment:7 Changed 11 months ago by kencu (Ken)
this is still dying building universal on arm/Intel...
comment:8 Changed 8 months ago by gregyao
Still dying building universal on arm/Intel: it fails for me when install kdelibs4 tries to install gtk3 as a dependency. Would be grateful for any help. Thanks
comment:9 Changed 8 months ago by Liontooth (David Liontooth)
Yes, this is now blocking all updates for me
comment:10 Changed 8 months ago by kencu (Ken)
If you don't really need gtk3 to be universal, just install it non-universal and you're good to go.
If you believe you really do need it universal (you probably don't), you are out of luck for the foreseeable future as nobody appears motivated to fix it, now three years after arm Macs came out.
comment:11 Changed 7 months ago by cooljeanius (Eric Gallager)
Cc: | cooljeanius added |
---|
We'll need more information. Could you attach the main.log file, please? It does sound like something that's been reported before (I remember seeing the erroneous reference to ppc archs on arm64 before) but I can't find it right now.