Difference between revisions of "Windows"

From GnuCash
Jump to: navigation, search
(no code for module (srfi srfi-39))
(Problems, issues, comments: Windows 11 fails to launch installer.)
 
(443 intermediate revisions by 67 users not shown)
Line 1: Line 1:
== [[GnuCash]] on Microsoft Windows ==
+
= [[GnuCash]] on Microsoft Windows =
  
This page collects various notes about compiling [[GnuCash]] on Microsoft Windows. See [[Windows/Old_Notes]] for old, solved issues.
+
This page collects various notes about running [[GnuCash]] on Microsoft Windows.
 +
 
 +
=== Q: Which Windows versions are supported? ===
 +
;Answer: The [{{URL:www}}/download.phtml download page] shows, which Windows version is officially supported by which GnuCash version.
 +
:;Note: ''Windows 3/95/98/Me'' and ''Windows NT3.5/4.0'' have never been supported.
 +
 
 +
=== Q: Where is the binary installer? ===
 +
'''A:''' The latest versions can be downloaded from the [{{{{URL:www}}}}/download.phtml download] page on the GnuCash website. Anyone who cares about their data should use the '''released version''' found there.
 +
:People looking to test new features - at the risk of running into extra bugs - could try a '''test version''':
 +
:* As it is not so easy to build GnuCash under Windows, a daily build of the [{{URL:Build:Win}} stable branch] is made available as well to '''test''' bugfixes.
 +
:* To closely follow development on the ''future branch'', which contains new features - and bugs - there are the [[#Q:_Are_there_nightly_builds.3F|nightly builds]]. Expect data loss if you try these though!
  
 
=== Q: Is it possible to compile GnuCash on Windows? ===
 
=== Q: Is it possible to compile GnuCash on Windows? ===
:'''A:''' Well, compiling is possible, and running as well, but so far not everything runs.
+
'''A:''' Yes. It's cumbersome, but possible. See the instructions in [[Building_on_Windows| Building on Windows]].
 +
 
 +
=== Q: Are there nightly builds? ===
 +
'''A:''' We run nightly builds for the '''stable''' (former <q>maint</q>) and after implmenting its first feature the '''future''' (former <q>master</q>) branch, but it's configured so that it runs only if changes have been pushed since the last build and only if the build is successful; they do fail from time to time. You can find the last 6-12 month's worth of builds at
 +
{{BuildURL}}/builds/win32/
 +
or, more specifically, for [{{URL:Build:Win}}?C=M;O=D stable], on demand for [{{URL:Build:Win|future}}?C=M;O=D future], and [{{URL:Build:Win|build-logs}}?C=M;O=D logs for all builds].
 +
 
 +
The product of the nightly builds is a Windows installer that will ''replace your existing GnuCash installation''. The future branch ''really is unstable'': Be sure to have suitable backups and don't use it for your "production" books.
 +
 
 +
=== Q: Anything else? ===
 +
To avoid making the installer file even bigger, some functionality is not available without further downloads and installations of software.
 +
 
 +
==== Preferences in GnuCash 2.6 and more recent ====
 +
gconf has been replaced with another preferences system. On Windows you
 +
will find the preferences directly in the Windows Registry under the
 +
registry key
 +
  HKEY_CURRENT_USER/software/GSettings/org/gnucash/
 +
 
 +
==== Pdf name for invoices ====
 +
 
 +
This name is controlled by two hidden preferences:
 +
* pdf-export/filename-format
 +
* pdf-export/filename-date-format
 +
 
 +
Both of them will reside in the registry under
 +
HKEY_CURRENT_USER/software/GSettings/org/gnucash/dialogs/general/report
 +
 
 +
These won't be there by default (only values that deviate from the default
 +
value will be effectively in the registry). To change it you will first
 +
have to create a sub key named '''pdf-export''.
 +
 
 +
Under this key you can create two string type keys named '''filename-format'''
 +
and '''filename-date-format'''.
 +
 
 +
This is the definition of these two string keys:
 +
;filename-format
 +
:This setting chooses the file name for PDF export. This is a sprintf(3) string with three arguments: "%1$s" is the report name such as "Invoice". "%2$s" is the number of the report, which for an invoice report is the invoice number. "%3$s" is the date of the report, formatted according to the filename-date-format setting. (Note: Any characters that are not allowed in filenames, such as '/', will be replaced with underscores '_' in the resulting file name.)<br/>The default value is %1$s-%2$s-%3$s
 +
 
 +
;filename-date-format
 +
:This setting chooses the way dates are used in the filename of PDF export. Possible values for this setting are "locale" to use the system locale setting, "ce" for Continental Europe style dates, "iso" for ISO 8601 standard dates , "uk" for United Kingdom style dates, and "us" for United States style dates.
 +
 
 +
==== Finance::Quote ====
 +
For the retrieval of [[Online Quotes]], you will need to install [{{URL:wp}}Perl Perl] and Finance::Quote (F::Q). See [[Online_Quotes#Installing_Perl_on_Windows|Installing Perl on Windows]].
  
=== Q: So, where is the binary? ===
+
= Notes =
We do not (yet) provide a binary for Windows. The simple reason is already stated above: We know compiling is possible, but the runtime testing has just started, and we expect a lot of issues still need to be resolved. This means the source code will change quite quickly and those early testers are expected to follow those source code changes by getting the code from [[SVN]]. On the other hand, providing a binary would mean people wouldn't follow the source code changes quickly enough, making the testing almost useless. (That would change if someone volunteers to provide e.g. a nightly binary build. Volunteers, anyone?) That's why we still do not provide a binary, until we've received enough positive feedback to know the program can actually be distributed.
+
== Error messages, Trace file ==
 +
In the GnuCash application, all error messages are redirected to a ''trace file''. There will be one trace file for each time GnuCash is run. For a user named "myname" these files are located in the folder
 +
* <tt>c:\Documents and Settings\myname\Local Settings\Temp</tt> (Windows XP) or
 +
* <tt>C:\Users\myname\AppData\Local\Temp</tt> (Windows Vista/7).
 +
They are named
 +
* <tt>gnucash.trace.ABCDEF</tt> (GnuCash 2.2.9 and older) or
 +
* <tt>gnucash.trace.ABCDEF.log</tt> (GnuCash 2.4.0 and newer)
 +
where the ABCDEF part is changed randomly on each start of gnucash. See also [[Tracefile]].
  
=== Instructions for an (almost) automated build ===
+
If you experience crashes or unexpected behavior, check the latest of these files (or the one created when the problem started) and add all interesting-looking lines of that file to your error reports, at least the lines with the keywords <tt>WARN</tt>ing and <tt>CRIT</tt>ical warning.
Copied from http://lists.gnucash.org/pipermail/gnucash-devel/2006-September/018588.html
 
  
Several people have now compiled and run GnuCash on MS Windows by the
+
See also [[Windows Debugging]].
mingw32/gcc compiler environment. These instructions explain how everyone else can give it
 
a try as well. We would be happy to hear any further feedback about
 
problems or (hopefully) success in this matter.
 
  
We've created a shell script that will download, compile, and install
+
== Determining the locale ==
all requirements of GnuCash on Windows and eventually GnuCash itself. It
+
When asked for the locale, take a look at the Regional Settings in your Control Panel and report the values found for "Standard and Formats", "Location" and "Language for non-Unicode programs".
will even make sure to retrieve the most up-to-date gnucash source code
 
directly from SVN. Running this script will probably download ~200MB of
 
data (but all downloaded data will be cached) and will take anything
 
between 0.5 through 5 hours of time. That shell script is located in
 
packaging/win32/install.sh of the gnucash [[SVN]] sources.  
 
  
Before you can execute this shell script (which will do everything else
+
Also, use [{{BugURL}}/show_bug.cgi?id=450353 this bug's] [{{BugURL}}/attachment.cgi?id=90557 attachment] to determine the locale as used internally by gettext.
automatically), you have to complete these steps manually:
 
  
* Get the contents of the packaging/win32/ directory of gnucash [[SVN]], most up-to-date [http://svn.gnucash.org/repo/gnucash/trunk/packaging/win32/ from SVN], and copy it to some directory on your Windows machine. Do not use a directory that is one of the parent directories of the path you intend to use for the repository in the next step (c:\soft\repos by default). Possible locations are c:\soft\packaging or c:\soft\downloads.
+
= Problems, issues, comments =
 +
For any problem that occurs now, you should add a new section below.
  
* Adapt the directory name variables in the custom.sh file according to your preferences; the defaults would install everything in subdirectories below c:\soft. (Note that due to shell syntax, every windows-style backslash has to be specified as two backslashes.)
+
== Issues with older versions of GnuCash ==
  
* Download the "MSYS" package from http://www.mingw.org/download.shtml -> Section "Current" -> Subsection "MSYS" -> MSYS-1.0.10.exe [http://prdownloads.sf.net/mingw/MSYS-1.0.10.exe?download Download link]
+
In an effort to keep the information somewhat manageable this page will only gather issues with the current stable version of GnuCash. For historical reference, the older issues will be moved to [[Windows/Old Issues|a separate page]].
  
* Execute this downloaded package to install it into the chosen directory, say, C:\soft\msys (which is the $MSYS_DIR variable in custom.sh)
+
If you experience issues with an older version of GnuCash, the first advice is normally to try again with the current stable version. There may however be situations where you need to revive an older version and in that case the information kept on the [[Windows/Old Issues|older issues page]] may be useful.
  
* Download the "wget" package from http://www.mingw.org/download.shtml -> Current -> mingwPORT -> wget-1.9.1-mingwPORT.tar.bz2 [http://prdownloads.sf.net/mingw/wget-1.9.1-mingwPORT.tar.bz2?download Download link] and place the downloaded file in the $DOWNLOAD_DIR you have set in custom.sh
+
In addition, if you experience any of the older issues in the current stable release of GnuCash, please [[Bugzilla|file a bug report]] or ask about it on the [[Mailing Lists|user mailing list]].
  
* Start the MSYS commandline shell by double-clicking the "MSYS" icon on the desktop which should have been created when you installed the MSYS package.
+
== Known issues ==
 +
Here is a list of the most often mentioned Windows issues. If you experience this problem, please check the respective bugzilla reports for potential workarounds.
 +
* {{BugURL}}/show_bug.cgi?id=466512 Win32: Wrong permissions for .gnucash directory (was: Win32 GnuCash 2.2.1 Fails to Start/Install)
 +
* {{BugURL}}/show_bug.cgi?id=645273#c40 Reports features do not work
  
* Let the automated build begin by typing:
+
== Windows 7 64-bit - GnuCash fails to run ==
  
  $INSTALLER_DIR/install.sh  (the complete path to the install.sh)
+
This is with GnuCash 2.4.3:
  
* Some of the downloaded packages are installed through graphical installer dialogs where you can choose an installation directory. In those cases, the install.sh script will tell you in the MSYS window the installation directory that you should choose, according to your settings in custom.sh. Please enter only those installation directory in the installer dialog because otherwise the install.sh script cannot find the newly installed software.
+
Starting GnuCash shows the splash screen and the tip of the day for a brief instant and then it disappears. To fix the problem, I did:
  
* If there haven't been any errors, you should be able (after several hours of compiling and installing) to start gnucash from the MSYS command line by typing
+
# Right-click on the GnuCash icon and select 'Run as Administrator'
 +
# GnuCash starts up as expected
 +
# Close GnuCash
  
  c:/soft/gnucash/bin/gnucash
+
After doing the above once, I can start GnuCash normally and it starts up properly.
  
or even without MSYS directly by "Start"-> "Run"-> "c:\soft\gnucash\bin\gnucash.bat"
+
Hopefully this helps someone. --[[User:Sketch|Sketch]] 05:05, 7 March 2011 (UTC)
  
* If there HAVE been errors, then please report them in the Section [[#Problems, issues, comments|Problems, issues, comments]].
+
== Font problems ==
  
Please spread the word and report back any problems you encounter. It is
+
After upgrading to 2.2.1, people have reported font-related issues:
probably not too difficult anymore to create a full self-contained
 
package of GnuCash on Windows as well! Some more information is also
 
collected here on this wiki page.
 
  
=== A bit of history ===
+
* The tick/check mark in the Reconcile window may look like a "nondescript squiggle"
This page used to collect random notes from the time when we manually tried to install each and every part of the requirements. They have been moved to [[Windows/Old Notes]].
+
* Register windows may open with all transactions scrolled out of sight (upwards)
 +
* Languages other than English show characters as a box of four zeros "0 0 0 0".
  
== Notes ==
+
The reason appears to be that GnuCash is now referring to Windows to determine what fonts to use,
 +
and in both these cases is using the one specified for "Message Box", which defaults to Tahoma 8.
  
=== gdb ===
+
Changing to Tahoma 10 fixed both of these for me.
In addition to [[Stack Trace]], here are a few instructions on how to run gnucash under gdb on Windows:
 
* Install "gdb" from mingw.org
 
* Modify the installed "gnucash" script to call "exec gdb gnucash-bin.exe" instead of "exec gnucash-bin.exe" at the end
 
* Then start gnucash, which will give you the gdb prompt
 
* Type "run" at the gdb prompt.
 
* Then provoke the crash and type "backtrace" or shorthand "bt" at the gdb prompt to obtain the backtrace, as explained on [[Stack Trace]] as well.
 
  
You can provide even better stack traces if you tell gdb where in memory dynamically loaded modules got mapped to, because otherwise function calls into those are only written as '??'. See [http://lists.gnucash.org/pipermail/gnucash-devel/2006-November/019042.html here] and [http://lists.gnucash.org/pipermail/gnucash-devel/2006-November/019048.html here] for a way to do this.
+
The procedure on WinXP is:
 +
# Start -> Control panel or My Computer -> Control panel
 +
# Appearance and Themes -> Display (or, if using the "Classic View", Display)
 +
# Appearance
 +
# Advanced
 +
# Select "Message Box" from the drop-down
 +
# Change as required (e.g. set to Tacoma 10 point)
 +
# OK
 +
# Apply
  
=== install.sh ===
+
[[User:Fred|Fred]] 10:30, 22 August 2007 (EDT)
* To debug install.sh, change <tt>set -e</tt> to <tt>set -ex</tt> at the top of it.
+
:Is this still necessary when using GnuCash 2.2.2? [[User:Andi5|andi5]]
* Once you have installed Subversion, you might want to checkout and update packaging/win32 as described in [[SVN]].
 
svn checkout <nowiki>http://svn.gnucash.org/repo/gnucash/trunk/packaging/win32</nowiki> packaging
 
  
== Problems, issues, comments ==
+
I ([[User:piyo|piyo]]) confirmed that the above procedure is necessary for viewing Japanese on Windows XP with GnuCash 2.2.3 (2008-01-08):
For any problem that occurs now, you should add a new section below.
+
* Confirmed that working fonts are '''Arial UI Unicode''', '''FixSys''', '''System''', '''Tahoma''' (including 8!), '''Terminal'''. Also for Japanese, '''MS P Gothic''', '''MS P Mincho''', '''MS UI Gothic''', '''MS Gothic''', '''MS Mincho fonts''' are working.
 +
* Confirmed that non-working fonts are '''Lucida Sans Unicode''' and '''Microsoft Sans Serif'''.
 +
--[[User:Piyo|Piyo]] 23:23, 5 February 2008 (EST)
  
=== pkg-config ===
+
== Program hangs constantly ==
Error: Endless loop with "The application failed to initialize properly (0xc0000142)."
 
problem is in install.sh (rev.15222 lines 541,546) the pkg_config here-file should not use the $(PKG_CONFIG) variable since it creates a self-referential-script. 
 
:Indeed, r15215 (r12155 is irrelevant here) introduced a regression, because the pkg-config-msys.sh script must not use $PKG_CONFIG as we export that. (Cstim says: Sorry, I replaced too much of pkg-config calls - my fault.) Fixed in r15224.
 
  
===Creating a binary package===
+
(GnuCash 2.4)
A script that copies everything that is needed for providing a binary has been added to SVN into packaging/win32. Its name is <tt>dist.sh</tt> and it will create the directory "dist" below the installation directory of gnucash, so by default the result will be copied to c:\soft\gnucash\dist .  
 
  
Additionally, an input script to the [http://www.jrsoftware.org/isdl.php Inno Setup Compiler] has been added to packaging/win32. That one can be run after <tt>dist.sh</tt> has finished, and it should package up everything in the dist directory into a self-installing setup.exe file. Feel free to try that and report back whether it works.
+
According to [{{BugURL}}/show_bug.cgi?id=677829 this bug report] GnuCash can become unstable with some themes. The original reporter didn't remember which themes caused issues, but had no problems when using the "Unity" theme.
  
===DLL install error===
+
--[[User:GJanssens|GJanssens]] 18 October 2013
I get an error like that:
 
  
'libgncmodule.la' 'c:/soft/gnucash/lib/libgncmodule.la'
+
== Gnucash fails to start with Failed to contact configuration server ==
/bin/install -c .libs/libgncmodule.dll.a
 
c:/soft/gnucash/lib/libgncmodule.dll.a
 
base_file=`basename ${file}`
 
  dlpath=`/bin/sh 2>&1 -c '. .libs/'${base_file}'i;echo $dlname'`
 
make[5]: *** [install-libLTLIBRARIES] Error 1
 
make[5]: Leaving directory `/c/soft/repos/src/gnc-module'
 
make[4]: *** [install-am] Error 2
 
  
This seems to be only an installation problem. Fine compiling it seems.
+
(GnuCash 2.4)
:I saw this at "make install" when I stopped and restarted the preceding compiling several times. So to me this looks like an artifact of DLLs that somehow "don't fit" to each other. The solution was always to run "make clean" in the source directory so that all DLLs are being deleted, and then starting the compiling again. --[[User:Cstim|Cstim]] 05:55, 4 December 2006 (EST)
 
  
::'make clean' in the repos/ and afterwards a rerun of install.sh really worked! thanks a lot [[User:Calmar|Calmar]] 08:47, 4 December 2006 (EST)
+
Copied from [{{BugURL}}/show_bug.cgi?id=708989 this bug report]:
:::actually it seems to be necessary here: to make 'make clean' in the repos/src/ dir *and* afterwards 'make clean' in the repos/ directory. Cheer [[User:Calmar|Calmar]] 08:14, 12 December 2006 (EST)
 
::::I don't think so. "make clean" in the repos/ directory calls the same thing in repos/src, but not vice versa. "make clean" in repos/ should clearly be enough. Anyway, this only concerns people who re-use an existing repos/ directory. --[[User:Cstim|Cstim]] 04:53, 13 December 2006 (EST)
 
:::::Yeah, that's the logical thing in my mind too. It just regurarly fails with a  'make clean' in repos only. Maybe it's only here anyway for some reason. I'm happy enough I can get it compiled/installed. (I get that error also after removing the repos directory completely and then an install.sh btw (win2000)) Cheers and thx [[User:Calmar|Calmar]] 07:31, 13 December 2006 (EST)
 
  
=== cannot move on swigwin ===
+
I installed GnuCash on Windows 7 and at one point I received the following error message
Extracting swigwin-1.3.29.zip ... done
 
mv: cannot move `mydir/Examples' to `./Examples'. I copied them manually then [[User:Calmar|Calmar]] 08:48, 4 December 2006 (EST)
 
:I guess the swig installation is not perfect with regard to updates. I will try to improve that. Meanwhile, removing the c:\soft\swig directory completely should solve the issue. -- [[User:Andi5|andi5]]
 
  
=== Text reports crash ===
+
  Failed to contact configuration server; some possible causes are that you need
Some text report crashed instantly, but on some other machines they worked fine. Same for graphical reports. Debugging is ongoing. When you run gnucash in gdb, the crash does reliably ''not'' occur the text reports.
+
  to enable TCP/IP networking for ORBit, or you have stale NFS locks due to a
:What we currently know: GnuCash spits a warning ([http://bugzilla.gnome.org/show_bug.cgi?id=378158]), but does not crash because of it. It crashes because of something different (in WinAPI?) we cannot detect in gdb. isDebuggerPresent() might be true, but a breakpoint will only be set for fatal errors, so we cannot set a breakpoint. We also cannot start gnucash with --g-fatal-warnings though, as a standard win32 glib build aborts the application after a critical error [http://bugzilla.gnome.org/show_bug.cgi?id=376645].
+
  system crash. See https://projects-old.gnome.org/gconf/ for information.
::The issue is described in this [http://bugzilla.gnome.org/show_bug.cgi?id=382852 bug] and a solution is committed in SVN's install.sh in r15213. Hopefully, these crashers are fixed now :) I think removal of c:\soft\regex, \guile, \tmp\guile-1.6.8 and \gnucash (the previous installation) is necessary. -- [[User:Andi5|andi5]]
+
  (Details -  1: IOR file
:::Thanks for the fix in r15213! Indeed I don't see any crash anymore, and even the graphical reports (wohoo!) work correctly. (The warning of [http://bugzilla.gnome.org/show_bug.cgi?id=378158] is still there, though.) --[[User:Cstim|Cstim]] 10:50, 15 December 2006 (EST)
+
  'C:\Users\Username\AppData\Local\Temp\gconfd-Username/lock/ior' not opened
 +
  successfully, no gconfd located: No such file or directory 2: IOR file
 +
  'C:\Users\Username\AppData\Local\Temp\gconfd-Username/lock/ior' not opened
 +
  successfully, no gconfd located: No such file or directory)
  
=== GConf/ORBit COMM_FAILURE ===
+
I do not know what caused this error message.
On some computers (Windows 2000/SP4), the following error has been observed, but on other computers GConf runs fine. GConf shows plenty of error messages like these: "Failed to save key /apps/gnucash/window/pages/account_tree/name_visible: Adding client to server's list failed, CORBA error: IDL:omg.org/CORBA/COMM_FAILURE:1.0" and also the "Cannot find default values" dialog is shown on each startup, regardless whether the "setup" is done or not. Also, the startup of GnuCash might open dozens of shell windows one after the other, and the startup of GnuCash is incredibly slow.
 
  
This is being reported to the ORBit crew as [http://bugzilla.gnome.org/show_bug.cgi?id=363648 bug#363648]. As a quick workaround, you have to install ORBit2-2.13.3 from [ftp://ftp.gnome.org/pub/gnome/binaries/win32/ORBit2/2.13/ here] instead of 2.14.2, as this seems to fix that problem.
+
Uninstalling GnuCash, removing an empty gnucash folder in C:\Program Files
 +
(x86)\, and reinstalling Gnucash does not restore GnuCash. I.e., same error
 +
message was produced.  
  
=== Failed to fork ===
+
Cleaning up the windows registry did not help either.
When starting GNUCash I receive the following message:
 
gnucash: [E] "Failed to fork child process."
 
It is not a fatal error (program continues to load).  Is this something I can safely ignore?  --[[User:Scbash|Scbash]] 17:10, 3 December 2006 (EST)
 
:This is from the file process.scm and it concerned with the Finance::Quote script for stock price retrieval. Chris wrote: "That's process.scm which is run during price-quote retrieval.  Perhaps guile's (primitive-fork) doesn't work on win32." You can ignore this for now. On the other hand, this means Finance::Quote and price retrieval currently doesn't work yet. --[[User:Cstim|Cstim]] 16:07, 4 December 2006 (EST)
 
  
=== Reading/writing compressed files===
+
What did work was to remove the folder
The current win32 SVN code doesn't read or write compressed (gzip'd) files. On Linux, gnucash forks gzip as a child process and pipes the file through it. On windows, there isn't an easy replacement for fork() and pipe(). See src/backend/file/io-gncxml-v2.c:1246 ff.
+
C:\Users\Username\AppData\Local\Temp\gconfd-Username/  
 +
which did not contain the subdirectory + file lock/ior that is mentioned in the
 +
error message.
  
As a consequence, a linux-stored data file which, by default, is stored in compressed form cannot be read by the Windows version at the moment. If you want to use the linux datafile, you need to switch off file compression beforehand.
+
The folder AppData is hidden (for Windows 7) and needs to be explicitly typed
Or 'mv datafile datafile.gz && gunzip datafile.gz #providing a .gz suffix, and finally enzipping it'
+
in the folder browser.
  
=== no code for module (srfi srfi-39) - ALL INSTALL ISSUES FIXED ===
+
And also note that 'Username' should be replaced with your real username in the path (it's in there two times).
* Thank you for the prompt responses!  i am continuing my reruns of the install.sh script and so i should get fresh copies of things in the repos directory and use them instead.  i will have to check whether install.sh line 205 has the rxspencer directory removed from regex_lib variable also.  the problem with using the same computer for multiple-tasks is that these compiles basically chew up 95+% cpu.
 
** im guessing that there must be some fix in the rxspencer regex directory that is required.  the compile finally finished and i saw the dos-screens come up and even (briefly) some tip-of-the-day type of box with the gnucash-splash-screen in the background.
 
** then, the bin failed with a back-trace in qif-parse.scm:9:3: unbound variable: make-regexp
 
** i pulled r15223 but am not sure whether it would fix these issues.  help?
 
:ive checked the downloaded regexp-spencer-3.8-lib.zip and the regexp.h inside ./include/ matches the one placed at the default location - so my hack to install.sh line 205 is ok.  im guessing it is actually a code-issue with the qif-parse routines... [[User Hfelton|Hfelton]]
 
* all issues listed above fixed with r15224 version of install.sh
 
** i give up - i believe that something is still wrong, but i have no idea what it is.  it might be related to this bug[[http://bugzilla.gnome.org/show_bug.cgi?id=382852]] or it might not.  i tried changing C:\soft\repos\src\import-export\qif-import\qif-parse.scm to see what the issue might be with the regexp.  unfortunately, when i went to the repos-dir and ran make, i ended up with the exact-same-error (even tho id changed the actual regexp call distinctly).  thus, i assume that some dependency was not triggered correctly and am too tired to try and fight any more today.
 
** in case it helps, here is a long directory listing of c:\soft\downloads which is the default place where install.sh/custom.sh were used/modified: [[User Hfelton|Hfelton]]
 
:Please update install.sh and rebuild guile, i.e. remove c:\soft\guile and c:\soft\tmp\guile-1.6.8, then run install.sh. I could imagine that guile searched for regex, did not find it and thus did not include functions that use it, like make-regexp. -- [[User:Andi5|andi5]]
 
:: thanx again - i did as requested and the compile halts with error: no code for module (srfi srfi-39) which is odd since it does exist in C:\soft\guile\share\guile\1.6\srfi (as before). in desperation, i tried removing all dirs except downloads and msys - and starting over - but guile will still not compile.  (i was guessing that regexp mightve influenced something else like readline)  any clues?  tia, [[User Hfelton|Hfelton]]
 
:::I cannot see how readline is involved. But c:\soft\guile\bin\libguile-srfi-srfi-*.dll depend on regex.dll, do you see them? And do you still have some spurious incorrect REGEX_CPPFLAGS (test with `echo $REGEX_CPPFLAGS, see c:\soft\msys\etc\profile.d\installer.sh)? I cannot say why that would hurt, but it would it be interesting. If nothing helps, please be more specific about what fails where and what does it print? (just built guile successfully). -- [[User:Andi5|andi5]]
 
:::: yes, files are being created - build fails at the install i think.  i was trying to understand where but could not locate it.  will research a bit more.  i do not have a profile.d, just a profile at that location.  i did a quick compare of the dirs from guile-worked-earlier to guile-not-currently-working and the difference is 1 file (out of the 471 or 472 files in 18 dirs)  im guessing it is the final-step.  the error said something about guile-not-installed-correctly and gave the exact halt-error i noted above.  the missing file appeared to be c:\soft\guile\share\guile\1.6\slibcat    -- [[User Hfelton|Hfelton]]
 
:::::  uh - nevermind?  it seems tove worked (i guess i needed to shut down the msys window i had been using before and this cleared out the environment?) this time!  it is currently working thru the gnome-build again and going strong...  should i/we delete this whole section?  -- [[User Hfelton|Hfelton]]
 
* the installation finally finished - anything else i might note has nothing to do with the install.  YEAH!  thanx so much for the help. 
 
** only possible-useful lesson from this section is just an intuitive feeling that there is a need to restart the msys-window at least once in this install process? 
 
*** oddly, i had not installed msys (initially) in the recommended location (c:\soft\msys) but rather in the default location (c:\msys\1.0).  interestingly i was able to get fairly far thru the downloads/install.sh using this incorrect start because of the msysDTK install (correct location).  im not exactly sure where i had errors but ended up deciding to restart the msys install from scratch (also the msysDTK) and this allowed the install.sh to get to the recursive error.  after restarting the msys-window of course.
 
*** next, after all these regexp-issues - i have a feeling that the msys-window is different now than it was before.  (ie - it has title of mingw rather than msys in taskbar?)  like i said, this is just a hunch...  if there IS a requirement to restart msys, then it might need to be labelled (at an appropriate spot - say after mingw-install?) inside the install.sh script.
 
** bottom lines:
 
*** install.sh is complete - and ive got a gnucash-system running finally - THANX!
 
*** any further issues i could note have nothing to do with the install, but rather the program itself - i think.  in particular, i went thru acct-creation and looked at all the tips-o-day [lots of blanks, not sure why] but upon saving and then closing/saving the program [after setting up several accts with some initial balances, but no other real program-usage] i got the following warning:  (gnucash:5724) failed to send buffer , gdkselection-win32.c:1068: openclipboard failed invalid window handle, failed to fork child process.
 
:i was using the same msys window as had just finished compiling install.sh and started the program via command line as ../gnucash/bin/gnucash command from c:\soft\downloads dir. [[User Hfelton|Hfelton]]
 
*** assuming this section is basically useless now - i (or andi5 or ...?) can delete it.  thanx for the pulling out (and editing) of the recursion-issue - looks nice.  take care, h.
 
  
== Todo ==
+
--[[User:GJanssens|GJanssens]] 18 October 2013
This section is intended mainly for developers to concisely specfiy what issues are open, assigned or closed (and can be removed then).
+
== Windows 11: GnuCash installer quits without doing anything ==
[ ] [[Windows#Text reports crash|R]] Text report crashers ([http://bugzilla.gnome.org/show_bug.cgi?id=382852 Bug], [http://bugzilla.gnome.org/show_bug.cgi?id=378158 Bug])
+
When launching <code>gnucash-setup.exe</code> Windows 10 and Windows 11 usually complain that GnuCash is from an unknown developer and will put up a scary dialog but if you accept the risk it will run the installer after the usual User Authorization Escalation dialog. We've had a [https://bugs.gnucash.org/show_bug.cgi?id=799299 report] that Windows 11 might silently fail to do anything. If that happens to you right-click on <code>gnucash-setup.exe</code> and select Properties from the context menu, then click Unblock and Save. You should be able to launch the installer normally.
[ ] [[Windows#GConf/ORBit COMM_FAILURE|R]]  GConf/ORBit2
 
[ ] [[Windows#cannot move on swigwin|R]]  SWIG installation (minor)
 
[ ]    Finance::Quote
 
[ ]    AqBanking
 
[ ]    Packaging
 
[ ]    Randomness ([http://lists.gnucash.org/pipermail/gnucash-devel/2006-December/019289.html Mail])
 
[ ] [[Windows#Reading/writing compressed files|R]]  Compressed files
 
A lot more, fill me
 

Latest revision as of 21:51, 3 May 2024

GnuCash on Microsoft Windows

This page collects various notes about running GnuCash on Microsoft Windows.

Q: Which Windows versions are supported?

Answer
The download page shows, which Windows version is officially supported by which GnuCash version.
Note
Windows 3/95/98/Me and Windows NT3.5/4.0 have never been supported.

Q: Where is the binary installer?

A: The latest versions can be downloaded from the [{{{{URL:www}}}}/download.phtml download] page on the GnuCash website. Anyone who cares about their data should use the released version found there.

People looking to test new features - at the risk of running into extra bugs - could try a test version:
  • As it is not so easy to build GnuCash under Windows, a daily build of the stable branch is made available as well to test bugfixes.
  • To closely follow development on the future branch, which contains new features - and bugs - there are the nightly builds. Expect data loss if you try these though!

Q: Is it possible to compile GnuCash on Windows?

A: Yes. It's cumbersome, but possible. See the instructions in Building on Windows.

Q: Are there nightly builds?

A: We run nightly builds for the stable (former maint) and after implmenting its first feature the future (former master) branch, but it's configured so that it runs only if changes have been pushed since the last build and only if the build is successful; they do fail from time to time. You can find the last 6-12 month's worth of builds at

https://code.gnucash.org/builds/win32/

or, more specifically, for stable, on demand for future, and logs for all builds.

The product of the nightly builds is a Windows installer that will replace your existing GnuCash installation. The future branch really is unstable: Be sure to have suitable backups and don't use it for your "production" books.

Q: Anything else?

To avoid making the installer file even bigger, some functionality is not available without further downloads and installations of software.

Preferences in GnuCash 2.6 and more recent

gconf has been replaced with another preferences system. On Windows you will find the preferences directly in the Windows Registry under the registry key

 HKEY_CURRENT_USER/software/GSettings/org/gnucash/

Pdf name for invoices

This name is controlled by two hidden preferences:

  • pdf-export/filename-format
  • pdf-export/filename-date-format

Both of them will reside in the registry under HKEY_CURRENT_USER/software/GSettings/org/gnucash/dialogs/general/report

These won't be there by default (only values that deviate from the default value will be effectively in the registry). To change it you will first have to create a sub key named 'pdf-export.

Under this key you can create two string type keys named filename-format and filename-date-format.

This is the definition of these two string keys:

filename-format
This setting chooses the file name for PDF export. This is a sprintf(3) string with three arguments: "%1$s" is the report name such as "Invoice". "%2$s" is the number of the report, which for an invoice report is the invoice number. "%3$s" is the date of the report, formatted according to the filename-date-format setting. (Note: Any characters that are not allowed in filenames, such as '/', will be replaced with underscores '_' in the resulting file name.)
The default value is %1$s-%2$s-%3$s
filename-date-format
This setting chooses the way dates are used in the filename of PDF export. Possible values for this setting are "locale" to use the system locale setting, "ce" for Continental Europe style dates, "iso" for ISO 8601 standard dates , "uk" for United Kingdom style dates, and "us" for United States style dates.

Finance::Quote

For the retrieval of Online Quotes, you will need to install Perl and Finance::Quote (F::Q). See Installing Perl on Windows.

Notes

Error messages, Trace file

In the GnuCash application, all error messages are redirected to a trace file. There will be one trace file for each time GnuCash is run. For a user named "myname" these files are located in the folder

  • c:\Documents and Settings\myname\Local Settings\Temp (Windows XP) or
  • C:\Users\myname\AppData\Local\Temp (Windows Vista/7).

They are named

  • gnucash.trace.ABCDEF (GnuCash 2.2.9 and older) or
  • gnucash.trace.ABCDEF.log (GnuCash 2.4.0 and newer)

where the ABCDEF part is changed randomly on each start of gnucash. See also Tracefile.

If you experience crashes or unexpected behavior, check the latest of these files (or the one created when the problem started) and add all interesting-looking lines of that file to your error reports, at least the lines with the keywords WARNing and CRITical warning.

See also Windows Debugging.

Determining the locale

When asked for the locale, take a look at the Regional Settings in your Control Panel and report the values found for "Standard and Formats", "Location" and "Language for non-Unicode programs".

Also, use this bug's attachment to determine the locale as used internally by gettext.

Problems, issues, comments

For any problem that occurs now, you should add a new section below.

Issues with older versions of GnuCash

In an effort to keep the information somewhat manageable this page will only gather issues with the current stable version of GnuCash. For historical reference, the older issues will be moved to a separate page.

If you experience issues with an older version of GnuCash, the first advice is normally to try again with the current stable version. There may however be situations where you need to revive an older version and in that case the information kept on the older issues page may be useful.

In addition, if you experience any of the older issues in the current stable release of GnuCash, please file a bug report or ask about it on the user mailing list.

Known issues

Here is a list of the most often mentioned Windows issues. If you experience this problem, please check the respective bugzilla reports for potential workarounds.

Windows 7 64-bit - GnuCash fails to run

This is with GnuCash 2.4.3:

Starting GnuCash shows the splash screen and the tip of the day for a brief instant and then it disappears. To fix the problem, I did:

  1. Right-click on the GnuCash icon and select 'Run as Administrator'
  2. GnuCash starts up as expected
  3. Close GnuCash

After doing the above once, I can start GnuCash normally and it starts up properly.

Hopefully this helps someone. --Sketch 05:05, 7 March 2011 (UTC)

Font problems

After upgrading to 2.2.1, people have reported font-related issues:

  • The tick/check mark in the Reconcile window may look like a "nondescript squiggle"
  • Register windows may open with all transactions scrolled out of sight (upwards)
  • Languages other than English show characters as a box of four zeros "0 0 0 0".

The reason appears to be that GnuCash is now referring to Windows to determine what fonts to use, and in both these cases is using the one specified for "Message Box", which defaults to Tahoma 8.

Changing to Tahoma 10 fixed both of these for me.

The procedure on WinXP is:

  1. Start -> Control panel or My Computer -> Control panel
  2. Appearance and Themes -> Display (or, if using the "Classic View", Display)
  3. Appearance
  4. Advanced
  5. Select "Message Box" from the drop-down
  6. Change as required (e.g. set to Tacoma 10 point)
  7. OK
  8. Apply

Fred 10:30, 22 August 2007 (EDT)

Is this still necessary when using GnuCash 2.2.2? andi5

I (piyo) confirmed that the above procedure is necessary for viewing Japanese on Windows XP with GnuCash 2.2.3 (2008-01-08):

  • Confirmed that working fonts are Arial UI Unicode, FixSys, System, Tahoma (including 8!), Terminal. Also for Japanese, MS P Gothic, MS P Mincho, MS UI Gothic, MS Gothic, MS Mincho fonts are working.
  • Confirmed that non-working fonts are Lucida Sans Unicode and Microsoft Sans Serif.

--Piyo 23:23, 5 February 2008 (EST)

Program hangs constantly

(GnuCash 2.4)

According to this bug report GnuCash can become unstable with some themes. The original reporter didn't remember which themes caused issues, but had no problems when using the "Unity" theme.

--GJanssens 18 October 2013

Gnucash fails to start with Failed to contact configuration server

(GnuCash 2.4)

Copied from this bug report:

I installed GnuCash on Windows 7 and at one point I received the following error message

 Failed to contact configuration server; some possible causes are that you need
 to enable TCP/IP networking for ORBit, or you have stale NFS locks due to a
 system crash. See https://projects-old.gnome.org/gconf/ for information.
 (Details -  1: IOR file
 'C:\Users\Username\AppData\Local\Temp\gconfd-Username/lock/ior' not opened
 successfully, no gconfd located: No such file or directory 2: IOR file
 'C:\Users\Username\AppData\Local\Temp\gconfd-Username/lock/ior' not opened
 successfully, no gconfd located: No such file or directory)

I do not know what caused this error message.

Uninstalling GnuCash, removing an empty gnucash folder in C:\Program Files (x86)\, and reinstalling Gnucash does not restore GnuCash. I.e., same error message was produced.

Cleaning up the windows registry did not help either.

What did work was to remove the folder C:\Users\Username\AppData\Local\Temp\gconfd-Username/ which did not contain the subdirectory + file lock/ior that is mentioned in the error message.

The folder AppData is hidden (for Windows 7) and needs to be explicitly typed in the folder browser.

And also note that 'Username' should be replaced with your real username in the path (it's in there two times).

--GJanssens 18 October 2013

Windows 11: GnuCash installer quits without doing anything

When launching gnucash-setup.exe Windows 10 and Windows 11 usually complain that GnuCash is from an unknown developer and will put up a scary dialog but if you accept the risk it will run the installer after the usual User Authorization Escalation dialog. We've had a report that Windows 11 might silently fail to do anything. If that happens to you right-click on gnucash-setup.exe and select Properties from the context menu, then click Unblock and Save. You should be able to launch the installer normally.