[GNC-dev] Help with making changes on Windows maint

Robert Fewell 14ubobit at gmail.com
Sun Apr 22 09:42:51 EDT 2018


Deleting the maint/inst/lib/gnucash directory did not fix it but what did
was when you get the jhbuild menu after it fails, copying all the
maint/build/bin files to maint/inst/bin and then I selected option 1 to
rebuild.

Had some time and with the changes made to gnc-main-window.c/h, at the
failure all I needed to do was copy
maint/build/bin/libgncmod-gnome-utils.dll to the maint/inst/bin directory
and continue with the rebuild and all was OK.

Not sure why at build time it is looking in the inst directory ?

Bob

On 20 April 2018 at 14:53, John Ralls <jralls at ceridwen.us> wrote:

> Bob,
>
> Sorry, I misunderstood. Try rm -rf c:\gcdev64\gnucash\maint\inst\
> lib\gnucash\*.
>
> Regards,
> John Ralls
>
>
> On Apr 20, 2018, at 6:31 AM, Robert Fewell <14ubobit at gmail.com> wrote:
>
> John,
>
> I did that at the beginning of the week. As I said at the top of my first
> message, I had a successful build, made some changes to prove a bug fix,
> rebuilt and that was OK. It is only when I tried to make changes to
> gnc-main-window.c/h that I get the error message. If I change them back, it
> will work again.
> Maybe I need to delete more files and not just the build/gnucash-git
> directory.
>
> Bob
>
> On 20 April 2018 at 03:23, John Ralls <jralls at ceridwen.us> wrote:
>
>>
>>
>> On Apr 19, 2018, at 9:16 AM, Robert Fewell <14ubobit at gmail.com> wrote:
>>
>> Hi,
>> I have successfully built maint and needed to test some changes for some
>> bug fixes on Windows. So for the first couple of bugs I made the changes
>> to
>> files in the following path...
>> c:\gcdev64\gnucash\maint\src\gnucash-git\gnucash\...
>>
>> Went to my msys32 shell, used the usual jhbuild command which ran
>> successfully and was able to run gnucash from the maint directory via a
>> cmd
>> file, some icons were missing but not relevant for my tests.
>>
>> Now the problem...
>> Wanted to change file
>> c:\gcdev64\gnucash\maint\src\gnucash-git\gnucash\gnome-utils
>> \gnc-main-window.c/h
>>
>> There is a function in there gnc_main_window_popup_menu_cb which was
>> declared static but I wanted to expose it so I could call it from
>> gnc-plugin-page-register.c
>> Removed the static, added function to .h file and started the rebuild
>> which
>> all looked fine until it failed with...
>>
>> Backtrace:
>> In ice-9/eval.scm:
>> 432: 19 [eval # #]
>> In C:/gcdev64/gnucash/maint/inst/bin/guild:
>>  72: 18 [main ("C:/gcdev64/gnucash/maint/inst/bin/guild" "compile" "-o"
>> ...)]
>> In srfi/srfi-1.scm:
>> 616: 17 [for-each #<procedure 4a697c0 at scripts/compile.scm:187:14
>> (file)> #]
>> In scripts/compile.scm:
>> 190: 16 [#<procedure 4a697c0 at scripts/compile.scm:187:14 (file)>
>> "C:/gcdev64/gnucash/maint/src/gnucash-git/gnucash/import-exp
>> ort/qif-imp/qif-import.scm"]
>> In system/base/target.scm:
>>  59: 15 [with-target "i686-w64-mingw32" ...]
>> In system/base/compile.scm:
>> 152: 14 [compile-file
>> "C:/gcdev64/gnucash/maint/src/gnucash-git/gnucash/import-exp
>> ort/qif-imp/qif-import.scm"
>> ...]
>>  43: 13 [call-once #<procedure 4a69120 at system/base/compile.scm:56:5
>> ()>]
>> In ice-9/boot-9.scm:
>> 174: 12 [with-throw-handler #t ...]
>> In system/base/compile.scm:
>>  59: 11 [#<procedure 4a69100 at system/base/compile.scm:58:9 ()>]
>> 155: 10 [#<procedure 4a69140 at system/base/compile.scm:153:8 (port)>
>> #<closed: file 0>]
>> 218: 9 [read-and-compile #<input: qif-import.scm 5> #:from ...]
>> 234: 8 [lp (# # #) #<directory # 4d5df50> #<directory # 4d5df50>]
>> 182: 7 [lp (#<procedure compile-tree-il (x e opts)>) (eval-when # #) ...]
>> In ice-9/boot-9.scm:
>> 2412: 6 [save-module-excursion #<procedure cb3ba98 at
>> language/scheme/compile-tree-il.scm:29:3 ()>]
>> In language/scheme/compile-tree-il.scm:
>>  31: 5 [#<procedure cb3ba98 at language/scheme/compile-tree-il.scm:29:3
>> ()>]
>> In ice-9/psyntax.scm:
>> 1107: 4 [expand-top-sequence ((eval-when # #)) () ((top)) ...]
>> 990: 3 [scan ((eval-when # #)) () ((top)) ...]
>> 279: 2 [scan ((load-extension "libgnc-gnome" "scm_init_sw_gnome_module"))
>> () ...]
>> In unknown file:
>>   ?: 1 [load-extension "libgnc-gnome" "scm_init_sw_gnome_module"]
>> In ice-9/boot-9.scm:
>> 109: 0 [#<procedure 4a690e0 at ice-9/boot-9.scm:100:6 (thrown-k . args)>
>> misc-error ...]
>>
>> ice-9/boot-9.scm:109:20: In procedure #<procedure 4a690e0 at
>> ice-9/boot-9.scm:100:6 (thrown-k . args)>:
>> ice-9/boot-9.scm:109:20: In procedure dynamic-link: file: "libgnc-gnome",
>> message: "The specified module could not be found."
>> make[2]: ***
>> [gnucash/import-export/qif-imp/CMakeFiles/scm-qif-import-2.
>> dir/build.make:63:
>> lib/gnucash/scm/ccache/2.0/gnucash/import-export/qif-import.go] Error 1
>> make[1]: *** [CMakeFiles/Makefile2:9685:
>> gnucash/import-export/qif-imp/CMakeFiles/scm-qif-import-2.dir/all] Error
>> 2
>> make: *** [Makefile:163: all] Error 2
>>
>> Next I deleted maint/build/gnucash-git but that made no difference.
>> Added a duplicate of that function with a different name but that made no
>> difference.
>>
>> Why do my changes cause this scheme error?
>> Do I need to remove more files before the rebuild ?
>>
>>
>> Bob,
>>
>> This is probably due to https://github.com/Alexpux/
>> MINGW-packages/issues/3609. The workaround for now is to set ignorepkg
>> in paceman.conf, see https://wiki.gnucash.org/wiki/Building_on_Windows
>>
>> To recover you need to revert the upgrades of ICU, Boost, and harfbuzz.
>> The previous versions will be in /var/cache/pacman/pkg; you want the
>> next-to-latest of each. Open an msys shell (doesn’t matter which), do e.g.
>>   ls /var/cache/pacman/pkg/*boost*
>>   pacman -U /var/cache/pacman/pkg/<filename>
>> for each one.
>>
>> Regards,
>> John Ralls
>>
>
>
>


More information about the gnucash-devel mailing list