Opened 5 months ago

Closed 5 months ago

#68930 closed defect (worksforme)

gobject-introspection fails to compile on Sonoma 14.1.2, Macbook Air M1

Reported by: michalsvanda Owned by:
Priority: Normal Milestone:
Component: ports Version: 2.8.1
Keywords: Cc:
Port: gobject-introspection

Description (last modified by michalsvanda)

Hi,

gobject-introspection fails to compile on Sonoma 14.1.2 using either clang or gcc compilers. The build fails on

:info:build ../../../../../../../include/glib-2.0/glib/gurifuncs.h:68:
:info:build ../../../../../../../include/glib-2.0/glib/guri.h:390: Fatal: GLib: Namespace conflict for 'uri_unescape_string'
:info:build ../../../../../../../include/glib-2.0/glib/guri.h:390: Fatal: GLib: Namespace conflict for 'uri_unescape_string'
:info:build ninja: build stopped: subcommand failed.
:info:build Command failed:  cd "/opt/local/var/macports/build/_opt_local_var_macports_sources_rsync.macports.org_release_tarballs_ports_gnome_gobject-introspection/gobject-introspection/work/build" && /opt/local/bin/ninja -j8 -v
:info:build Exit code: 1
:error:build Failed to build gobject-introspection: command execution failed
:debug:build Error code: CHILDSTATUS 60524 1
:debug:build Backtrace: command execution failed
:debug:build     while executing
:debug:build "system {*}$notty {*}$callback {*}$nice $fullcmdstring"
:debug:build     invoked from within
:debug:build "command_exec -callback portprogress::target_progress_callback build"
:debug:build     (procedure "portbuild::build_main" line 8)
:debug:build     invoked from within
:debug:build "$procedure $targetname"
:error:build See /opt/local/var/macports/logs/_opt_local_var_macports_sources_rsync.macports.org_release_tarballs_ports_gnome_gobject-introspection/gobject-introspection/main.log for details.

This happened during migration of the machine to Sonoma following the instructions on https://trac.macports.org/wiki/Migration. I tried several time to reinstall glib2 (version 2.78.0) with no effect. Clang and gcc compilers (by using configure.compiler directive) both stop at the same point (port --dist cleaning was performed always before each attempt). Xcode 15.1.

Attachments (1)

main.log (280.1 KB) - added by michalsvanda 5 months ago.
build log

Download all attachments as: .zip

Change History (6)

Changed 5 months ago by michalsvanda

Attachment: main.log added

build log

comment:1 Changed 5 months ago by michalsvanda

Description: modified (diff)

comment:2 Changed 5 months ago by kencu (Ken)

mine builds fine:

% port -v installed gobject-introspection
The following ports are currently installed:
  gobject-introspection @1.78.1_0 (active) requested_variants='' platform='darwin 23' archs='arm64' date='2023-12-17T12:44:53-0800'

I believe you somehow have an errant header in there. I don't have

/opt/local/include/glib-2.0/glib/gurifuncs.h

as you can see:

% port contents glib2 | grep guri
  /opt/local/include/glib-2.0/glib/guri.h

You might do this, just for fun:

port provides /opt/local/include/glib-2.0/glib/gurifuncs.h

But in the end, I think you probably have to just delete that file, and then ponder your recent actions to see how it might be there...

Last edited 5 months ago by kencu (Ken) (previous) (diff)

comment:3 Changed 5 months ago by kencu (Ken)

I don't know exactly what you meant by this:

"I tried several time to reinstall glib2 (version 2.78.0) with no effect."

but ... that sounds like where things may have gone wrong to me.

It's very important to have a clean, un-screwed-up installation of macports or nothing will build right. If I had serious doubts about the status of my installation, as I might if I had the issues you are mentioning, I just delete completely all my ports, and start over.

The amount of time spent starting fresh is usually about 1/1000th the amount of time you'll spend chasing down weird build failures, never knowing if it is your system that is hosed, or the build itself.

comment:4 in reply to:  3 Changed 5 months ago by michalsvanda

Replying to kencu:

I don't know exactly what you meant by this:

"I tried several time to reinstall glib2 (version 2.78.0) with no effect."

but ... that sounds like where things may have gone wrong to me.

Essentially a series of

port -f uninstall glib2
port clean --dist glib2
port reclaim
port install glib2

Anyhow, the file you mentioned

/opt/local/include/glib-2.0/glib/gurifuncs.h

indeed did not belong to any port. After removing it manually, gobject-introspection compiled all right. Thanks for help. This ticked may be closed.

It's very important to have a clean, un-screwed-up installation of macports or nothing will build right.

Yeah, good advice. On the other hand, if I understand the migration correctly, it does delete (uninstall) all ports during the process. I don't know why this file was left over.

comment:5 Changed 5 months ago by kencu (Ken)

Resolution: worksforme
Status: newclosed
Note: See TracTickets for help on using tickets.