-
Notifications
You must be signed in to change notification settings - Fork 0
Commit
This commit does not belong to any branch on this repository, and may belong to a fork outside of the repository.
- Loading branch information
1 parent
697f595
commit 457a0b3
Showing
1 changed file
with
141 additions
and
0 deletions.
There are no files selected for viewing
141 changes: 141 additions & 0 deletions
141
_posts/2024-09-21-macports-2.10-gnucash-ports-failure.md
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -0,0 +1,141 @@ | ||
--- | ||
layout: page_with_comment | ||
title: "Lots of errors during the installation of Gnucash by macports after upgrading to macports 2.10 and macOS 15.0 Sequoia" | ||
date: "2024-09-21" | ||
tags: | ||
- "gnucash" | ||
- "rust" | ||
- "libdbi-drivers" | ||
- "cflags" | ||
- "x86-64" | ||
--- | ||
|
||
**TLDR** | ||
|
||
Wait until https://github.com/macports/macports-ports/pull/25835 merged and | ||
use below command to install GnuCash in macOS 15.0 by macports 2.10 | ||
|
||
```bash | ||
sudo port install gnucash build_arch=x86_64 configure.cflags="-Wno-error=int-conversion -Wno-error=incompatible-function-pointer-types" | ||
``` | ||
|
||
|
||
**Content** | ||
|
||
I was using macports because I needed to use macports to install GnuCash in mac so that I could use GnuCash python bindings. | ||
|
||
After upgrading to macports 2.10, things went broken. First, dependency `gstreamer1-gst-plugins-bad` failed | ||
|
||
``` | ||
Error: Failed to build libffi: command execution failed | ||
Error: See /opt/local/var/macports/logs/_opt_local_var_macports_sources_rsync.macports.org_macports_release_tarballs_ports_devel_libffi/libffi/main.log for details. | ||
Error: Unable to execute port gstreamer1-gst-plugins-bad: upgrade gtk-doc failed | ||
``` | ||
|
||
I checked logs and found that installation failed because macports built `x86_64` but tried to link `arm64`. I cannot force macports to build all in `arm64` because GnuCash depends on `rust` which only supports `x86_64` in mac. | ||
|
||
I then tried | ||
|
||
```bash | ||
sudo port clean libdbi-drivers && sudo port install libdbi-drivers build_arch=x86_64 | ||
``` | ||
|
||
but then logs indicated that | ||
|
||
```bash | ||
error: incompatible integer to pointer conversion passing 'intptr_t' (aka 'long') to parameter of type 'const void *' [-Wint-conversion] | ||
``` | ||
|
||
and | ||
|
||
```bash | ||
error: incompatible function pointer types passing ..... [-Wincompatible-function-pointer-types] | ||
``` | ||
|
||
I then tried below and finally got libdbi-drivers installed. | ||
|
||
```bash | ||
sudo port clean libdbi-drivers && sudo port install libdbi-drivers build_arch=x86_64 configure.cflags="-Wno-error=int-conversion -Wno-error=incompatible-function-pointer-types" | ||
``` | ||
|
||
To avoid possible errors, I tried to install GnuCash with below command | ||
|
||
```bash | ||
sudo port install gnucash build_arch=x86_64 configure.cflags="-Wno-error=int-conversion -Wno-error=incompatible-function-pointer-types" | ||
``` | ||
|
||
I still see errors | ||
|
||
```bash | ||
Error: Failed to build at-spi2-core: command execution failed | ||
``` | ||
|
||
Checking logs I find | ||
|
||
```bash | ||
:info:build In file included from ../at-spi2-core-2.38.0/registryd/deviceeventcontroller-x11.c:46: | ||
:info:build In file included from /opt/local/include/glib-2.0/glib.h:34: | ||
:info:build In file included from /opt/local/include/glib-2.0/glib/gasyncqueue.h:34: | ||
:info:build In file included from /opt/local/include/glib-2.0/glib/gthread.h:36: | ||
:info:build In file included from /opt/local/include/glib-2.0/glib/gutils.h:426: | ||
:info:build In file included from /Library/Developer/CommandLineTools/SDKs/MacOSX15.sdk/usr/include/stdlib.h:58: | ||
:info:build In file included from /Library/Developer/CommandLineTools/SDKs/MacOSX15.sdk/usr/include/_stdlib.h:66: | ||
:info:build /Library/Developer/CommandLineTools/SDKs/MacOSX15.sdk/usr/include/sys/wait.h:207:19: error: duplicate member 'w_Filler' | ||
:info:build 207 | unsigned int w_Filler:16, /* upper bits filler */ | ||
:info:build | ^ | ||
:info:build /Library/Developer/CommandLineTools/SDKs/MacOSX15.sdk/usr/include/sys/wait.h:204:7: note: previous declaration is here | ||
:info:build 204 | w_Filler:16; /* upper bits filler */ | ||
:info:build | ^ | ||
:info:build /Library/Developer/CommandLineTools/SDKs/MacOSX15.sdk/usr/include/sys/wait.h:208:7: error: duplicate member 'w_Retcode' | ||
:info:build 208 | w_Retcode:8, /* exit code if w_termsig==0 */ | ||
:info:build | ^ | ||
:info:build /Library/Developer/CommandLineTools/SDKs/MacOSX15.sdk/usr/include/sys/wait.h:203:7: note: previous declaration is here | ||
:info:build 203 | w_Retcode:8, /* exit code if w_termsig==0 */ | ||
:info:build | ^ | ||
:info:build /Library/Developer/CommandLineTools/SDKs/MacOSX15.sdk/usr/include/sys/wait.h:209:7: error: duplicate member 'w_Coredump' | ||
:info:build 209 | w_Coredump:1, /* core dump indicator */ | ||
:info:build | ^ | ||
:info:build /Library/Developer/CommandLineTools/SDKs/MacOSX15.sdk/usr/include/sys/wait.h:202:7: note: previous declaration is here | ||
:info:build 202 | w_Coredump:1, /* core dump indicator */ | ||
:info:build | ^ | ||
:info:build /Library/Developer/CommandLineTools/SDKs/MacOSX15.sdk/usr/include/sys/wait.h:210:7: error: duplicate member 'w_Termsig' | ||
:info:build 210 | w_Termsig:7; /* termination signal */ | ||
:info:build | ^ | ||
:info:build /Library/Developer/CommandLineTools/SDKs/MacOSX15.sdk/usr/include/sys/wait.h:201:19: note: previous declaration is here | ||
:info:build 201 | unsigned int w_Termsig:7, /* termination signal */ | ||
:info:build | ^ | ||
:info:build /Library/Developer/CommandLineTools/SDKs/MacOSX15.sdk/usr/include/sys/wait.h:225:19: error: duplicate member 'w_Filler' | ||
:info:build 225 | unsigned int w_Filler:16, /* upper bits filler */ | ||
:info:build | ^ | ||
:info:build /Library/Developer/CommandLineTools/SDKs/MacOSX15.sdk/usr/include/sys/wait.h:222:7: note: previous declaration is here | ||
:info:build 222 | w_Filler:16; /* upper bits filler */ | ||
:info:build | ^ | ||
:info:build /Library/Developer/CommandLineTools/SDKs/MacOSX15.sdk/usr/include/sys/wait.h:226:7: error: duplicate member 'w_Stopsig' | ||
:info:build 226 | w_Stopsig:8, /* signal that stopped us */ | ||
:info:build | ^ | ||
:info:build /Library/Developer/CommandLineTools/SDKs/MacOSX15.sdk/usr/include/sys/wait.h:221:7: note: previous declaration is here | ||
:info:build 221 | w_Stopsig:8, /* signal that stopped us */ | ||
:info:build | ^ | ||
:info:build /Library/Developer/CommandLineTools/SDKs/MacOSX15.sdk/usr/include/sys/wait.h:227:7: error: duplicate member 'w_Stopval' | ||
:info:build 227 | w_Stopval:8; /* == W_STOPPED if stopped */ | ||
:info:build | ^ | ||
:info:build /Library/Developer/CommandLineTools/SDKs/MacOSX15.sdk/usr/include/sys/wait.h:220:19: note: previous declaration is here | ||
:info:build 220 | unsigned int w_Stopval:8, /* == W_STOPPED if stopped */ | ||
``` | ||
Then I find this https://trac.macports.org/ticket/70776 | ||
> #70776 assigned defect | ||
> at-spi2-core @2.38.0_0 fails to build on MacOS 15 Sequoia | ||
and | ||
> Changed 3 days ago by slewsys (Andrew L. Moore) | ||
> Patch submitted as: https://github.com/macports/macports-ports/pull/25835 | ||
This PR was open on Sep 19 2024 at 2:16 AM PDT. | ||
Looks like I need to wait until this PR merged | ||