[MacPorts] #70482: qemu @9.0.2: error: initializing 'NSEdgeInsets' (aka 'struct NSEdgeInsets') with an expression of incompatible type 'id' (was: Error while installing qemu on Catalina (10.15.7))

MacPorts noreply at macports.org
Fri Aug 2 20:35:27 UTC 2024


#70482: qemu @9.0.2: error: initializing 'NSEdgeInsets' (aka 'struct NSEdgeInsets')
with an expression of incompatible type 'id'
----------------------------+--------------------------------
  Reporter:  RobertPHeller  |      Owner:  raimue
      Type:  defect         |     Status:  assigned
  Priority:  Normal         |  Milestone:
 Component:  ports          |    Version:
Resolution:                 |   Keywords:  catalina legacy-os
      Port:  qemu           |
----------------------------+--------------------------------
Changes (by ryandesign):

 * status:  new => assigned
 * cc: herbygillot (added)
 * keywords:   => catalina legacy-os
 * owner:  (none) => raimue
 * port:   => qemu


Old description:

> I am trying to install qemu:
>
> sudo port install qemu
>
> and I am getting an error:
>
> :info:build FAILED: libcommon.fa.p/ui_cocoa.m.o
> :info:build /usr/bin/clang -m64 -mcx16 -Ilibcommon.fa.p
> -Isubprojects/dtc/libfdt -I../qemu-9.0.2/subprojects/dtc/libfdt
> -I/opt/local/include/p11-kit-1 -I/opt/local/include/pixman-1
> -I/opt/local/include/libpng16 -I/opt/local/include/spice-server
> -I/opt/local/include/glib-2.0 -I/opt/local/lib/glib-2.0/include
> -I/opt/local/libexec/openssl3/include -I/opt/local/include/spice-1
> -I/opt/local/include/libusb-1.0 -I/opt/local/include/gio-unix-2.0
> -I/opt/local/include/slirp -fdiagnostics-color=auto -Wall -Winvalid-pch
> -std=gnu11 -O2 -g -Wempty-body -Wendif-labels -Wexpansion-to-defined
> -Wformat-security -Wformat-y2k -Wignored-qualifiers -Winit-self
> -Wmissing-format-attribute -Wmissing-prototypes -Wnested-externs -Wold-
> style-definition -Wredundant-decls -Wstrict-prototypes -Wtype-limits
> -Wundef -Wvla -Wwrite-strings -Wno-gnu-variable-sized-type-not-at-end
> -Wno-initializer-overrides -Wno-missing-include-dirs -Wno-shift-negative-
> value -Wno-string-plus-int -Wno-tautological-type-limit-compare -Wno-
> typedef-redefinition -iquote . -iquote
> /opt/local/var/macports/build/_opt_local_var_macports_sources_rsync.macports.org_macports_release_tarballs_ports_emulators_qemu/qemu/work/qemu-9.0.2
> -iquote
> /opt/local/var/macports/build/_opt_local_var_macports_sources_rsync.macports.org_macports_release_tarballs_ports_emulators_qemu/qemu/work/qemu-9.0.2/include
> -iquote
> /opt/local/var/macports/build/_opt_local_var_macports_sources_rsync.macports.org_macports_release_tarballs_ports_emulators_qemu/qemu/work/qemu-9.0.2/host/include/x86_64
> -iquote
> /opt/local/var/macports/build/_opt_local_var_macports_sources_rsync.macports.org_macports_release_tarballs_ports_emulators_qemu/qemu/work/qemu-9.0.2/host/include/generic
> -iquote
> /opt/local/var/macports/build/_opt_local_var_macports_sources_rsync.macports.org_macports_release_tarballs_ports_emulators_qemu/qemu/work/qemu-9.0.2/tcg/i386
> -D_GNU_SOURCE -D_FILE_OFFSET_BITS=64 -D_LARGEFILE_SOURCE -fno-strict-
> aliasing -fno-common -fwrapv -fno-pie -pipe -Os
> -isysroot/Library/Developer/CommandLineTools/SDKs/MacOSX10.15.sdk -arch
> x86_64 -D_DARWIN_C_SOURCE -DNCURSES_WIDECHAR -DNCURSES_WIDECHAR=1
> -DSTRUCT_IOVEC_DEFINED -MD -MQ libcommon.fa.p/ui_cocoa.m.o -MF
> libcommon.fa.p/ui_cocoa.m.o.d -o libcommon.fa.p/ui_cocoa.m.o -c
> ../qemu-9.0.2/ui/cocoa.m
> :info:build ../qemu-9.0.2/ui/cocoa.m:542:51: warning: instance method
> '-safeAreaInsets' not found (return type defaults to 'id') [-Wobjc-
> method-access]
> :info:build     NSEdgeInsets insets = [[[self window] screen]
> safeAreaInsets];
> :info:build
> ^~~~~~~~~~~~~~
> :info:build
> /Library/Developer/CommandLineTools/SDKs/MacOSX10.15.sdk/System/Library/Frameworks/AppKit.framework/Headers/NSScreen.h:20:12:
> note: receiver is instance of class declared here
> :info:build @interface NSScreen : NSObject
> :info:build            ^
> :info:build ../qemu-9.0.2/ui/cocoa.m:542:18: error: initializing
> 'NSEdgeInsets' (aka 'struct NSEdgeInsets') with an expression of
> incompatible type 'id'
> :info:build     NSEdgeInsets insets = [[[self window] screen]
> safeAreaInsets];
> :info:build                  ^
> ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
> :info:build 1 warning and 1 error generated.
> :info:build [1076/3645] /usr/bin/clang -m64 -mcx16 -Ilibcommon.fa.p
> -Isubproject

New description:

 I am trying to install qemu:

 {{{
 sudo port install qemu
 }}}

 and I am getting an error:

 {{{
 :info:build FAILED: libcommon.fa.p/ui_cocoa.m.o
 :info:build /usr/bin/clang -m64 -mcx16 -Ilibcommon.fa.p
 -Isubprojects/dtc/libfdt -I../qemu-9.0.2/subprojects/dtc/libfdt
 -I/opt/local/include/p11-kit-1 -I/opt/local/include/pixman-1
 -I/opt/local/include/libpng16 -I/opt/local/include/spice-server
 -I/opt/local/include/glib-2.0 -I/opt/local/lib/glib-2.0/include
 -I/opt/local/libexec/openssl3/include -I/opt/local/include/spice-1
 -I/opt/local/include/libusb-1.0 -I/opt/local/include/gio-unix-2.0
 -I/opt/local/include/slirp -fdiagnostics-color=auto -Wall -Winvalid-pch
 -std=gnu11 -O2 -g -Wempty-body -Wendif-labels -Wexpansion-to-defined
 -Wformat-security -Wformat-y2k -Wignored-qualifiers -Winit-self -Wmissing-
 format-attribute -Wmissing-prototypes -Wnested-externs -Wold-style-
 definition -Wredundant-decls -Wstrict-prototypes -Wtype-limits -Wundef
 -Wvla -Wwrite-strings -Wno-gnu-variable-sized-type-not-at-end -Wno-
 initializer-overrides -Wno-missing-include-dirs -Wno-shift-negative-value
 -Wno-string-plus-int -Wno-tautological-type-limit-compare -Wno-typedef-
 redefinition -iquote . -iquote
 /opt/local/var/macports/build/_opt_local_var_macports_sources_rsync.macports.org_macports_release_tarballs_ports_emulators_qemu/qemu/work/qemu-9.0.2
 -iquote
 /opt/local/var/macports/build/_opt_local_var_macports_sources_rsync.macports.org_macports_release_tarballs_ports_emulators_qemu/qemu/work/qemu-9.0.2/include
 -iquote
 /opt/local/var/macports/build/_opt_local_var_macports_sources_rsync.macports.org_macports_release_tarballs_ports_emulators_qemu/qemu/work/qemu-9.0.2/host/include/x86_64
 -iquote
 /opt/local/var/macports/build/_opt_local_var_macports_sources_rsync.macports.org_macports_release_tarballs_ports_emulators_qemu/qemu/work/qemu-9.0.2/host/include/generic
 -iquote
 /opt/local/var/macports/build/_opt_local_var_macports_sources_rsync.macports.org_macports_release_tarballs_ports_emulators_qemu/qemu/work/qemu-9.0.2/tcg/i386
 -D_GNU_SOURCE -D_FILE_OFFSET_BITS=64 -D_LARGEFILE_SOURCE -fno-strict-
 aliasing -fno-common -fwrapv -fno-pie -pipe -Os
 -isysroot/Library/Developer/CommandLineTools/SDKs/MacOSX10.15.sdk -arch
 x86_64 -D_DARWIN_C_SOURCE -DNCURSES_WIDECHAR -DNCURSES_WIDECHAR=1
 -DSTRUCT_IOVEC_DEFINED -MD -MQ libcommon.fa.p/ui_cocoa.m.o -MF
 libcommon.fa.p/ui_cocoa.m.o.d -o libcommon.fa.p/ui_cocoa.m.o -c
 ../qemu-9.0.2/ui/cocoa.m
 :info:build ../qemu-9.0.2/ui/cocoa.m:542:51: warning: instance method
 '-safeAreaInsets' not found (return type defaults to 'id') [-Wobjc-method-
 access]
 :info:build     NSEdgeInsets insets = [[[self window] screen]
 safeAreaInsets];
 :info:build
 ^~~~~~~~~~~~~~
 :info:build
 /Library/Developer/CommandLineTools/SDKs/MacOSX10.15.sdk/System/Library/Frameworks/AppKit.framework/Headers/NSScreen.h:20:12:
 note: receiver is instance of class declared here
 :info:build @interface NSScreen : NSObject
 :info:build            ^
 :info:build ../qemu-9.0.2/ui/cocoa.m:542:18: error: initializing
 'NSEdgeInsets' (aka 'struct NSEdgeInsets') with an expression of
 incompatible type 'id'
 :info:build     NSEdgeInsets insets = [[[self window] screen]
 safeAreaInsets];
 :info:build                  ^
 ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
 :info:build 1 warning and 1 error generated.
 :info:build [1076/3645] /usr/bin/clang -m64 -mcx16 -Ilibcommon.fa.p
 -Isubproject
 }}}

--

Comment:

 Theqemu  port enables the cocoa variant by default on macOS 10.14 and
 older. It may be the case that due to changes in the qemu code this
 variant can no longer build on 10.15. Try building without the cocoa
 variant:
 {{{
 sudo port clean qemu
 sudo port install qemu -cocoa
 }}}

-- 
Ticket URL: <https://trac.macports.org/ticket/70482#comment:1>
MacPorts <https://www.macports.org/>
Ports system for macOS


More information about the macports-tickets mailing list