Cannot install kmymoney4 due to gwenhywfar4 failure on Big Sur

Jeffrey Walton noloader at gmail.com
Sat Dec 5 02:51:15 UTC 2020


On Fri, Dec 4, 2020 at 9:38 PM Ryan Schmidt <ryandesign at macports.org> wrote:
>
> On Dec 4, 2020, at 20:27, Jeffrey Walton wrote:
>
> > On Fri, Dec 4, 2020 at 9:26 PM Ryan Schmidt wrote:
> >
> >> On Dec 4, 2020, at 20:24, Jeffrey Walton wrote:
> >>
> >>> On Fri, Dec 4, 2020 at 8:53 PM Timothy Allison wrote:
> >>>>
> >>>> I have been using kmymoney on my Macs for many years now.  I stupidly upgraded to Big Sur a month ago, and have been paying the price with kmymoney4 for about a month.
> >>>> Now that qt4 installs, kmymoney4 fails because gwenhywfar4 fails to build.  The log file contains 3 errors:
> >>>> :info:build libtest.m:57:2: error: implicit declaration of function 'test1' is invalid in C99 [-Werror,-Wimplicit-function-declaration]:info:build         test1();:info:build         ^:info:build libtest.m:88:6: error: implicit declaration of function 'Cocoa_Gui_new' is invalid in C99 [-Werror,-Wimplicit-function-declaration]:info:build         gui=Cocoa_Gui_new();:info:build             ^:info:build libtest.m:88:5: warning: incompatible integer to pointer conversion assigning to 'GWEN_GUI *' (aka 'struct GWEN_GUI *') from 'int' [-Wint-conversion]:info:build         gui=Cocoa_Gui_new();:info:build            ^~~~~~~~~~~~~~~~:info:build libtest.m:93:6: error: implicit declaration of function 'Dlg_Test1_new' is invalid in C99 [-Werror,-Wimplicit-function-declaration]:info:build         dlg=Dlg_Test1_new();:info:build             ^
> >>>>
> >>>> Unlike qt4-mac, I haven’t found any MacPorts tickets on this issue.  Is there a workaround?  I’d really like to go back to kmymoney, and a month is a long time to wait.
> >>>
> >>> After you configure, run the following script before running make.
> >>>
> >>> IFS="" find "./" -iname 'Makefile' -print | while read -r file
> >>> do
> >>>
> >>>   touch -a -m -r "$file" "$file.timestamp"
> >>>   chmod a+w "$file"
> >>>   sed -e "s/-Werror//g" "$file" > "$file.fixed" && \
> >>>   mv "$file.fixed" "$file"
> >>>
> >>>   chmod a-w "$file"
> >>>   touch -a -m -r "$file.timestamp" "$file"
> >>>   rm "$file.timestamp"
> >>> done
> >>
> >> Dunno what you're suggesting here, but it's not the correct fix.
> >
> > The script above removes the DoS the user is currently suffering.
>
> It looks like the script removes "-Werror" from any Makefile. The problem the user is experiencing is not the result of any "-Werror" in any Makefile; rather, it is the result of the fact that Apple changed implicit declaration of functions from a warning to an error in Xcode 12. The fix is not to attempt to turn the error back into a warning again. The fix is to define functions before you use them.

The user does not care what the developer's fix is. He just wants the
DoS gone so he can use his software.

Jeff


More information about the macports-users mailing list