Re: [Gtk-osx-users] [gtk-osx-users] Building gnucash on OS X 10.10 - Finally Success
Status: Beta
Brought to you by:
jralls
From: John R. <jr...@ce...> - 2015-04-14 14:45:01
|
> On Apr 14, 2015, at 4:34 AM, Thinus Pollard <th...@po...> wrote: > > I finally got a successful build, and here is how I did it. > > Start at http://wiki.gnucash.org/wiki/MacOSX/Quartz > > Look at the preliminaries: > 1. download .jhbuildrc-custom into your homefolder > 2. edit .jhbuildrc-custom, add 'skip.append("openssl")' somewhere in the file > 3. download gtk-osx-build-setup.sh from https://live.gnome.org/GTK+/OSX/Building > 4. run "sh gtk-osx-build-setup.sh" > 5. run "jhbuild bootstrap" > > That takes care of the setup. At this point in time I backed up the > gnucash-stable dir > > Now: > 6. run "LC_ALL=C jhbuild build". OS X does not define LC_ALL and > webkit likes to have it > 7. The build will fail at gwenhywfar with a error about implicit > function declaration > 8. Hit 4 to drop to a shell, edit src/os/posix/directory.c and add "# > include <mach-o/dyld.h>" just after "# include > <CoreFoundation/CFBundle.h>" > 9. type "exit" > 10. Hit 1, Rerun phase Build > > 11. libsoup with a bang, it crashes python hard > 12. hit 4 to drop to a shell > 13. type "cd ../glib-networking-2.42.1/" > 14. type "make uninstall && make install" > 15. type "exit" > 16. Hit 1 to Rerun phase Build > > 17. webkit will fail with: Source/WebCore/xml/XPathParser.cpp:480:22: > error: no matching function for call to 'xpathyyparse' > 18. Hit 4 to drop to a shell. > 19. go one level up "cd .." > 20. type "cd pkgs" to go to the downloaded source archives > 21. Backup the original webkit archive "cp webkit-1.6.1.tar.gz > webkit-1.6.1.tar.gz_orig" > 22. extract webkit "tar xpvf webkit-1.6.1.tar.gz" > 23. enter the directory "cd webkit-1.6.1" > 24. apply the attached patch webkit.patch. "patch -Np1 < webkit.patch" > > This patch is a collection of the following: > Fixes some Bison incompatibilities: > https://bugs.webkit.org/show_bug.cgi?id=92264 > Fixes the "cannot inline" warnings: > https://bugs.webkit.org/show_bug.cgi?id=124186 > My own, remove Tools/DumpRenderTree from the build process by removing > the references to it from various GNUmakefile.am files > DumpRenderTree fails to build due to some pointer incompatibilities > between itself and nullptr. > > 25. From the webkit root do a "aclocal" > 26. From the webkit root do a "automake" > 27. Go one directory level up - to the source archives "cd .." > 28. Re-create the tar.gz archive for webkit "rm webkit-1.6.1.tar.gz && > tar cpvf webkit-1.6.1.tar webkit-1.6.1 && gzip webkit-1.6.1.tar" > 29. exit > 30. [6] Go to phase "wipe directory and start over" > 31. Type "yes" > 32. Webkit should build now and it should go all the way to the end of > building gnucash > > Thanks to John for helping with known issues. I hope this can help > someone else out there, maybe even make it into the official build > process. You can set LC_ALL in your .jhbuild-custom with os.environ["LC_ALL"] = "C" if that's what you need to get webkit to build, though I think that it's weird that you'd need to. What's OS X setting $LANG to on your system? If you think that that's the solution to your earlier reported error Tools/DumpRenderTree/gtk/DumpRenderTree.cpp:470:15: error: use of undeclared identifier 'LC_ALL'; did you mean 'P_ALL'? setlocale(LC_ALL, ""); ^~~~~~ P_ALL Then you don't understand C. Something else is wrong here: The current moduleset builds WebKitGtk 1.10, not 1.6, which explains why you need those old patches. Regards, John Ralls |