Compile on Windows with Python Bindings

Adam adam-gnucash-devel at sccode.com
Wed Oct 12 16:21:49 EDT 2016


I am compiling gnucash in Windows using MinGW  in order to include the
Python bindings. I have been using 2.6.14 release source code from Git.

I have arrived at step 10 in the python-bindings sections but now have 3
issues:

1) I get the following error message when attempting to run gnucash
using 'gnucash-launcher.cmd': "The procedure entry point
__gmpn_cnd_add_n could not be located in dynamic link library
C:\GCDev\gnucash\inst\bin\libhogweed-2-5.dll"
   - this happens with and without python bindings installed, when not
   installed the program starts
The error does not occur when the gnucash.exe is run directly from the
dist directory created for the installer package.

2) When python bindings are enabled, gnucash terminates with an
exception when the splash screen reaches 'gnucash/python'. This is the
best I could capture from the error logging via command line switches:
* 07:54:02  INFO <gnc.gui> [main] System locale returned English_United
Kingdom.1252
* 07:54:02  INFO <gnc.gui> [main] Effective locale set to English_United
Kingdom.1252.
* 07:54:03  WARN <gnc.module> Failed to dlopen()
'C:\GCDev\gnucash\inst\bin\libgncmod-aqbanking.dll':
'C:\GCDev\gnucash\inst\bin\libgncmod-aqbanking.dll': The specified
procedure could not be found.
* 07:54:04  INFO <gnc.engine> [gnc_hook_lookup] no hook lists
* 07:54:04  INFO <qof.engine> [guid_init] got 1665 bytes
* 07:54:04  INFO <gnc.backend.dbi> [gnc_module_init_backend_dbi] 3 DBD
drivers found
* 07:54:04  INFO <gnc.backend.dbi> [gnc_module_init_backend_dbi] Driver:
mysql
* 07:54:04  INFO <gnc.backend.dbi> [gnc_module_init_backend_dbi] Driver:
pgsql
* 07:54:04  INFO <gnc.backend.dbi> [gnc_module_init_backend_dbi] Driver:
sqlite3
* 07:54:06 MESSG <gnc.module> Could not locate optional module
gnucash/import-export/aqbanking interface v.0
* 07:54:13 MESSG <gnc.module> Could not locate optional module
gnucash/gtkmm interface v.0

3) With the following batch script  setup, I have run Python and
attempted to import gnucash:

SET PYTHONPATH=C:\GCDev\gnucash\inst\lib\site-packages
SET PATH=%PATH%;C:\gcdev\gnucash\inst\bin
SET PATH=%PATH%;C:\gcdev\gnome\bin
SET PATH=%PATH%;C:\gcdev\mingw\bin
SET PATH=%PATH%;C:\gcdev\regex\bin
SET PATH=%PATH%;C:\gcdev\guile\bin
SET PATH=%PATH%;C:\gcdev\libxslt\bin
SET PATH=%PATH%;C:\gcdev\libdbi\bin
SET PATH=%PATH%;C:\gcdev\mysql\lib
SET PATH=%PATH%;C:\gcdev\pgsql\bin
SET PATH=%PATH%;C:\gcdev\pgsql\lib
SET PATH=%PATH%;C:\gcdev\sqlite3\bin

python -v

This crashes python.exe with an exception and results in the following
output:

# C:\Python27\lib\encodings\cp850.pyc matches
C:\Python27\lib\encodings\cp850.py
import encodings.cp850 # precompiled from
C:\Python27\lib\encodings\cp850.pyc
import gnucash # directory
C:\GCDev\gnucash\inst\lib\site-packages\gnucash
# C:\GCDev\gnucash\inst\lib\site-packages\gnucash\__init__.pyc matches
C:\GCDev\gnucash\inst\lib\site-packages\gnucash\__init__.py
import gnucash # precompiled from
C:\GCDev\gnucash\inst\lib\site-packages\gnucash\__init__.pyc
# C:\GCDev\gnucash\inst\lib\site-packages\gnucash\gnucash_core.pyc
matches C:\GCDev\gnucash\inst\lib\site-packages\gnucash\gnucash_core.py
import gnucash.gnucash_core # precompiled from
C:\GCDev\gnucash\inst\lib\site-packages\gnucash\gnucash_core.pyc
# C:\GCDev\gnucash\inst\lib\site-packages\gnucash\gnucash_core_c.pyc
matches
C:\GCDev\gnucash\inst\lib\site-packages\gnucash\gnucash_core_c.py
import gnucash.gnucash_core_c # precompiled from
C:\GCDev\gnucash\inst\lib\site-packages\gnucash\gnucash_core_c.pyc
import imp # builtin
* 21:17:31 OTHER <GLib-GIO> No GSettings schemas are installed on the
system

This application has requested the Runtime to terminate it in an unusual
way.
Please contact the application's support team for more information.

Any thoughts on where I might be going wrong? Is trying to compile with
Python bindings a lost cause?

Thanks

Adam


More information about the gnucash-devel mailing list