Opened 3 years ago

Last modified 2 years ago

#64944 assigned defect

gobject-introspection @1.72.0 for +universal: An exe_wrapper is needed but was not found — at Initial Version

Reported by: barracuda156 Owned by: mascguy (Christopher Nielsen)
Priority: Normal Milestone:
Component: ports Version: 2.7.2
Keywords: powerpc, leopard, ppc64 Cc: kencu (Ken)
Port: gobject-introspection

Description

This is a different issue from: https://trac.macports.org/ticket/64769

I finally have built dependencies as ppc+ppc64 (aside of python310 and its modules). Thanks to Kencu's advice, I fixed meson so that it can now build for ppc+ppc64.

So at first I added depends_skip_archcheck-append python310 py310-cython to gobject-introspection Portfile and tried to build it as +universal. It failed with the following:

--->  Configuring gobject-introspection
Executing:  cd "/opt/local/var/macports/build/_opt_local_var_macports_sources_rsync.macports.org_macports_release_tarballs_ports_gnome_gobject-introspection/gobject-introspection/work/gobject-introspection-1.72.0" && /opt/local/bin/meson --prefix=/opt/local -Ddoctool=enabled -Dpython=/opt/local/bin/python3.10 /opt/local/var/macports/build/_opt_local_var_macports_sources_rsync.macports.org_macports_release_tarballs_ports_gnome_gobject-introspection/gobject-introspection/work/gobject-introspection-1.72.0 /opt/local/var/macports/build/_opt_local_var_macports_sources_rsync.macports.org_macports_release_tarballs_ports_gnome_gobject-introspection/gobject-introspection/work/build 
The Meson build system
Version: 0.59.1
Source dir: /opt/local/var/macports/build/_opt_local_var_macports_sources_rsync.macports.org_macports_release_tarballs_ports_gnome_gobject-introspection/gobject-introspection/work/gobject-introspection-1.72.0
Build dir: /opt/local/var/macports/build/_opt_local_var_macports_sources_rsync.macports.org_macports_release_tarballs_ports_gnome_gobject-introspection/gobject-introspection/work/build
Build type: native build
Project name: gobject-introspection
Project version: 1.72.0

meson.build:1:0: ERROR: Unable to detect linker for compiler "/usr/bin/gcc-4.2 -Wl,--version -pipe -Os -arch ppc -arch ppc64 -I/opt/local/include"
stdout: 
stderr: 

A full log can be found at /opt/local/var/macports/build/_opt_local_var_macports_sources_rsync.macports.org_macports_release_tarballs_ports_gnome_gobject-introspection/gobject-introspection/work/build/meson-logs/meson-log.txt
Command failed:  cd "/opt/local/var/macports/build/_opt_local_var_macports_sources_rsync.macports.org_macports_release_tarballs_ports_gnome_gobject-introspection/gobject-introspection/work/gobject-introspection-1.72.0" && /opt/local/bin/meson --prefix=/opt/local -Ddoctool=enabled -Dpython=/opt/local/bin/python3.10 /opt/local/var/macports/build/_opt_local_var_macports_sources_rsync.macports.org_macports_release_tarballs_ports_gnome_gobject-introspection/gobject-introspection/work/gobject-introspection-1.72.0 /opt/local/var/macports/build/_opt_local_var_macports_sources_rsync.macports.org_macports_release_tarballs_ports_gnome_gobject-introspection/gobject-introspection/work/build 
Exit code: 1
Error: Failed to configure gobject-introspection: consult /opt/local/var/macports/build/_opt_local_var_macports_sources_rsync.macports.org_macports_release_tarballs_ports_gnome_gobject-introspection/gobject-introspection/work/build/meson-logs/meson-log.txt
Error: Failed to configure gobject-introspection: configure failure: command execution failed

Then I added muniversal 1.0 PortGroup and tried to build again. It still failed however:

Build targets in project: 37

Found ninja-1.10.2 at /opt/local/bin/ninja

ERROR: An exe_wrapper is needed but was not found. Please define one in cross file and check the command and/or add it to PATH.

A full log can be found at /opt/local/var/macports/build/_opt_local_var_macports_sources_rsync.macports.org_macports_release_tarballs_ports_gnome_gobject-introspection/gobject-introspection/work/build-ppc64/meson-logs/meson-log.txt
Command failed:  cd "/opt/local/var/macports/build/_opt_local_var_macports_sources_rsync.macports.org_macports_release_tarballs_ports_gnome_gobject-introspection/gobject-introspection/work/gobject-introspection-1.72.0-ppc64" && /opt/local/bin/meson --prefix=/opt/local -Ddoctool=enabled -Dpython=/opt/local/bin/python3.10 /opt/local/var/macports/build/_opt_local_var_macports_sources_rsync.macports.org_macports_release_tarballs_ports_gnome_gobject-introspection/gobject-introspection/work/gobject-introspection-1.72.0-ppc64 /opt/local/var/macports/build/_opt_local_var_macports_sources_rsync.macports.org_macports_release_tarballs_ports_gnome_gobject-introspection/gobject-introspection/work/build-ppc64 --cross-file=ppc64-darwin 
Exit code: 1

ppc32 part had this:

Build targets in project: 37

Found ninja-1.10.2 at /opt/local/bin/ninja
WARNING: Cross file does not specify strip binary, result will not be stripped.
WARNING: Cross file does not specify strip binary, result will not be stripped.

Now, I made cross-files for ppc and ppc64 by just copying from Kencu and replacing arch. For example, original in /opt/local/share/meson/cross for i386-darwin has:

[host_machine]
system = 'darwin'
cpu_family = 'x86'
cpu = 'i386'
endian = 'little'

[binaries]
pkgconfig = '/opt/local/bin/pkg-config'
cmake = '/opt/local/bin/cmake'

Then my ppc64-darwin:

[host_machine]
system = 'darwin'
cpu_family = 'ppc64'
cpu = 'ppc64'
endian = 'big'

[binaries]
pkgconfig = '/opt/local/bin/pkg-config'
cmake = '/opt/local/bin/cmake'

There was nothing about strip binary there. What did I do wrong and how to fix this?

Change History (1)

Changed 3 years ago by barracuda156

Attachment: main.log added
Note: See TracTickets for help on using tickets.