<?xml version="1.0"?>
<feed xmlns="http://www.w3.org/2005/Atom" xml:lang="en">
	<id>https://wiki.jayscafe.net/index.php?action=history&amp;feed=atom&amp;title=%27%27%27vice-3.6.1%2Fdoc%2Fbuilding%2FWindows-MinGW-GTK3-Howto.txt%27%27%27</id>
	<title>'''vice-3.6.1/doc/building/Windows-MinGW-GTK3-Howto.txt''' - Revision history</title>
	<link rel="self" type="application/atom+xml" href="https://wiki.jayscafe.net/index.php?action=history&amp;feed=atom&amp;title=%27%27%27vice-3.6.1%2Fdoc%2Fbuilding%2FWindows-MinGW-GTK3-Howto.txt%27%27%27"/>
	<link rel="alternate" type="text/html" href="https://wiki.jayscafe.net/index.php?title=%27%27%27vice-3.6.1/doc/building/Windows-MinGW-GTK3-Howto.txt%27%27%27&amp;action=history"/>
	<updated>2026-04-08T12:39:14Z</updated>
	<subtitle>Revision history for this page on the wiki</subtitle>
	<generator>MediaWiki 1.37.2</generator>
	<entry>
		<id>https://wiki.jayscafe.net/index.php?title=%27%27%27vice-3.6.1/doc/building/Windows-MinGW-GTK3-Howto.txt%27%27%27&amp;diff=455&amp;oldid=prev</id>
		<title>Jayctheriot at 08:50, 25 December 2022</title>
		<link rel="alternate" type="text/html" href="https://wiki.jayscafe.net/index.php?title=%27%27%27vice-3.6.1/doc/building/Windows-MinGW-GTK3-Howto.txt%27%27%27&amp;diff=455&amp;oldid=prev"/>
		<updated>2022-12-25T08:50:34Z</updated>

		<summary type="html">&lt;p&gt;&lt;/p&gt;
&lt;table style=&quot;background-color: #fff; color: #202122;&quot; data-mw=&quot;interface&quot;&gt;
				&lt;col class=&quot;diff-marker&quot; /&gt;
				&lt;col class=&quot;diff-content&quot; /&gt;
				&lt;col class=&quot;diff-marker&quot; /&gt;
				&lt;col class=&quot;diff-content&quot; /&gt;
				&lt;tr class=&quot;diff-title&quot; lang=&quot;en&quot;&gt;
				&lt;td colspan=&quot;2&quot; style=&quot;background-color: #fff; color: #202122; text-align: center;&quot;&gt;← Older revision&lt;/td&gt;
				&lt;td colspan=&quot;2&quot; style=&quot;background-color: #fff; color: #202122; text-align: center;&quot;&gt;Revision as of 03:50, 25 December 2022&lt;/td&gt;
				&lt;/tr&gt;&lt;tr&gt;&lt;td colspan=&quot;2&quot; class=&quot;diff-lineno&quot; id=&quot;mw-diff-left-l204&quot;&gt;Line 204:&lt;/td&gt;
&lt;td colspan=&quot;2&quot; class=&quot;diff-lineno&quot;&gt;Line 204:&lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;&lt;td class=&quot;diff-marker&quot;&gt;&lt;/td&gt;&lt;td style=&quot;background-color: #f8f9fa; color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #eaecf0; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;br/&gt;&lt;/td&gt;&lt;td class=&quot;diff-marker&quot;&gt;&lt;/td&gt;&lt;td style=&quot;background-color: #f8f9fa; color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #eaecf0; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;br/&gt;&lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;&lt;td class=&quot;diff-marker&quot;&gt;&lt;/td&gt;&lt;td style=&quot;background-color: #f8f9fa; color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #eaecf0; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;div&gt;$ pacboy sync portaudio&lt;/div&gt;&lt;/td&gt;&lt;td class=&quot;diff-marker&quot;&gt;&lt;/td&gt;&lt;td style=&quot;background-color: #f8f9fa; color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #eaecf0; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;div&gt;$ pacboy sync portaudio&lt;/div&gt;&lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;&lt;td colspan=&quot;2&quot; class=&quot;diff-side-deleted&quot;&gt;&lt;/td&gt;&lt;td class=&quot;diff-marker&quot; data-marker=&quot;+&quot;&gt;&lt;/td&gt;&lt;td style=&quot;color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #a3d3ff; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;div&gt;&lt;ins style=&quot;font-weight: bold; text-decoration: none;&quot;&gt;&amp;lt;/pre&gt;&lt;/ins&gt;&lt;/div&gt;&lt;/td&gt;&lt;/tr&gt;
&lt;/table&gt;</summary>
		<author><name>Jayctheriot</name></author>
	</entry>
	<entry>
		<id>https://wiki.jayscafe.net/index.php?title=%27%27%27vice-3.6.1/doc/building/Windows-MinGW-GTK3-Howto.txt%27%27%27&amp;diff=454&amp;oldid=prev</id>
		<title>Jayctheriot: Created page with &quot;&lt;pre&gt; VICE on Windows - The Next G(TK)eneration =========================================  These are some instructions about getting VICE with the GTK3 GUI compiled on Windows under MinGW.   NOTE: Although msys2 can build both 32-bit and 64-bit Windows binaries, a       64-bit Windows (7 or later) host is required.   1. Get MSYS2 (includes mingw):  http://www.msys2.org/ Install as per that webpage.   1.1. Update the distribution:  $ pacman -Syu  This will usually update...&quot;</title>
		<link rel="alternate" type="text/html" href="https://wiki.jayscafe.net/index.php?title=%27%27%27vice-3.6.1/doc/building/Windows-MinGW-GTK3-Howto.txt%27%27%27&amp;diff=454&amp;oldid=prev"/>
		<updated>2022-12-25T08:50:05Z</updated>

		<summary type="html">&lt;p&gt;Created page with &amp;quot;&amp;lt;pre&amp;gt; VICE on Windows - The Next G(TK)eneration =========================================  These are some instructions about getting VICE with the GTK3 GUI compiled on Windows under MinGW.   NOTE: Although msys2 can build both 32-bit and 64-bit Windows binaries, a       64-bit Windows (7 or later) host is required.   1. Get MSYS2 (includes mingw):  http://www.msys2.org/ Install as per that webpage.   1.1. Update the distribution:  $ pacman -Syu  This will usually update...&amp;quot;&lt;/p&gt;
&lt;p&gt;&lt;b&gt;New page&lt;/b&gt;&lt;/p&gt;&lt;div&gt;&amp;lt;pre&amp;gt;&lt;br /&gt;
VICE on Windows - The Next G(TK)eneration&lt;br /&gt;
=========================================&lt;br /&gt;
&lt;br /&gt;
These are some instructions about getting VICE with the GTK3 GUI&lt;br /&gt;
compiled on Windows under MinGW.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
NOTE: Although msys2 can build both 32-bit and 64-bit Windows binaries, a&lt;br /&gt;
      64-bit Windows (7 or later) host is required.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
1. Get MSYS2 (includes mingw):&lt;br /&gt;
 http://www.msys2.org/&lt;br /&gt;
Install as per that webpage.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
1.1. Update the distribution:&lt;br /&gt;
&lt;br /&gt;
$ pacman -Syu&lt;br /&gt;
&lt;br /&gt;
This will usually update only a few packages (the package manager itself and&lt;br /&gt;
some related packages), and then require you to exit the shell by clicking 'x'.&lt;br /&gt;
You can then start the shell again and run the same command again to update the&lt;br /&gt;
rest of the packages.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
2. Check your MSYS2 username for spaces, for example:&lt;br /&gt;
&lt;br /&gt;
$ whoami&lt;br /&gt;
David Hogan&lt;br /&gt;
&lt;br /&gt;
If your Windows username has spaces like mine (David Hogan), then your&lt;br /&gt;
home dir will also have spaces in it, which causes problems with our&lt;br /&gt;
bindist build script later. To fix this, you'll need to change your MSYS2&lt;br /&gt;
home dir to something without spaces in it.&lt;br /&gt;
&lt;br /&gt;
$ /usr/bin/mkpasswd &amp;gt; /etc/passwd&lt;br /&gt;
&lt;br /&gt;
Use your favourite editor to change your home dir entry in /etc/passwd:&lt;br /&gt;
&lt;br /&gt;
$ # pacman -S vim&lt;br /&gt;
$ # vim /etc/passwd&lt;br /&gt;
&lt;br /&gt;
For example, change &amp;quot;/home/David Hogan&amp;quot; to &amp;quot;/home/dqh&amp;quot;. You also can change&lt;br /&gt;
the username at the start of the entry if you like.&lt;br /&gt;
&lt;br /&gt;
Finally, rename your existing homedir folder and exit and relaunch the&lt;br /&gt;
MSYS2 shell:&lt;br /&gt;
&lt;br /&gt;
$ cd /home&lt;br /&gt;
$ # mv 'David Hogan' dqh&lt;br /&gt;
$ exit&lt;br /&gt;
&lt;br /&gt;
&amp;lt;relaunch MSYS2 MinGW&amp;gt;&lt;br /&gt;
&lt;br /&gt;
$ pwd&lt;br /&gt;
/home/dqh&lt;br /&gt;
&lt;br /&gt;
$ whoami&lt;br /&gt;
dqh&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
3. Install the stuff that you need to build VICE:&lt;br /&gt;
Launch either the MSYS2 MinGW 64-bit shell or the MSYS2 MinGW 32-bit shell&lt;br /&gt;
(use the one that matches the version of MSYS2 that you installed).&lt;br /&gt;
&lt;br /&gt;
DON'T USE THE NON-MINGW ONE, STUFF WON'T WORK.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
Run the following command lines to install the prerequisites:&lt;br /&gt;
&lt;br /&gt;
$ pacman -S --noconfirm --needed base-devel pactoys&lt;br /&gt;
$ pacboy sync autotools pkg-config gcc ntldd zip: p7zip: subversion: gtk3 glew giflib icoutils ffmpeg flac mpg123&lt;br /&gt;
&lt;br /&gt;
(Note: type the colons that you see in the second command; they are important.&lt;br /&gt;
 Hit enter for the default on all the prompts, then wait for a lot of stuff&lt;br /&gt;
 to download and install.)&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
4. Then you need the xa 6502 cross-assembler, which is used to assemble the&lt;br /&gt;
&amp;quot;driver&amp;quot; program for vsid (the SID player that comes with VICE). It can be found&lt;br /&gt;
here: http://www.floodgap.com/retrotech/xa/&lt;br /&gt;
&lt;br /&gt;
Don't log out of the shell.  After you download xa, go back to the shell.&lt;br /&gt;
&lt;br /&gt;
Alternatively, use wget (in the shell) to download it:&lt;br /&gt;
&lt;br /&gt;
$ cd /c/Users/&amp;lt;login-name&amp;gt;/Downloads/&lt;br /&gt;
$ wget https://www.floodgap.com/retrotech/xa/dists/xa-2.3.11.tar.gz&lt;br /&gt;
&lt;br /&gt;
Make the directory &amp;quot;/usr/local/src/&amp;quot;.&lt;br /&gt;
Use tar to unpack xa (use the MSYS2 path to where you downloaded it):&lt;br /&gt;
&lt;br /&gt;
$ cd /usr/local&lt;br /&gt;
$ mkdir -p src&lt;br /&gt;
$ cd src&lt;br /&gt;
$ tar -xzf /c/Users/&amp;lt;login-name&amp;gt;/Downloads/xa-2.3.11.tar.gz&lt;br /&gt;
&lt;br /&gt;
NOTE: if fetching the above mentioned tarball fails, then probably XA was&lt;br /&gt;
      updated, have a look at https://www.floodgap.com/retrotech/xa/dists/ and&lt;br /&gt;
      change the name of the tarball accordingly.&lt;br /&gt;
&lt;br /&gt;
      A mirror of the xa source packages is available via Github:&lt;br /&gt;
      https://github.com/fachat/xa65/archive/refs/tags/xa-2.3.11.tar.gz&lt;br /&gt;
&lt;br /&gt;
Then build and install it:&lt;br /&gt;
&lt;br /&gt;
$ cd xa-2.3.11&lt;br /&gt;
$ make mingw install&lt;br /&gt;
$ mv ../../bin/xa.exe ../../bin/xa65.exe&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
5. Get MiKTeX, in order to build the PDF documentation (optional).&lt;br /&gt;
NOTE: if you skip this step, you will need to ./configure with --disable-pdf-docs&lt;br /&gt;
&lt;br /&gt;
Download and install it, see: https://miktex.org/howto/install-miktex&lt;br /&gt;
&lt;br /&gt;
Set $PATH so configure will find the required binaries:&lt;br /&gt;
&lt;br /&gt;
(My MiKTeX path is C:\miktex, I'll use that as the example -- assumes 64-bit&lt;br /&gt;
 Windows.)&lt;br /&gt;
$ export PATH=&amp;quot;$PATH:/c/miktex/miktex/bin/x64&amp;quot;&lt;br /&gt;
&lt;br /&gt;
Remember either to do that last step every time you open the msys64 terminal,&lt;br /&gt;
or edit your &amp;quot;~/.bash_profile&amp;quot;.&lt;br /&gt;
&lt;br /&gt;
Also, add this line to your &amp;quot;~/.bash_profile&amp;quot; file:&lt;br /&gt;
&lt;br /&gt;
export OSTYPE=&amp;quot;MSYS&amp;quot;&lt;br /&gt;
&lt;br /&gt;
(It works around a current bug that makes it impossible to build the PDF&lt;br /&gt;
document without that line.)&lt;br /&gt;
&lt;br /&gt;
If you change your &amp;quot;.bash_profile&amp;quot; exit from the shell and relaunch that&lt;br /&gt;
shell (it will use your updated profile).&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
6. Get VICE's source code.&lt;br /&gt;
To check out the source with Subversion (into &amp;quot;~/vice-trunk/&amp;quot;, for example),&lt;br /&gt;
you could type:&lt;br /&gt;
&lt;br /&gt;
$ cd ~&lt;br /&gt;
$ svn checkout http://svn.code.sf.net/p/vice-emu/code/trunk vice-trunk&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
7. Now, you can try to build VICE:&lt;br /&gt;
&lt;br /&gt;
$ cd ~/vice-trunk/vice&lt;br /&gt;
$ ./autogen.sh&lt;br /&gt;
$ ./configure -C --enable-native-gtk3ui&lt;br /&gt;
$ make -s --no-print-dir&lt;br /&gt;
$ make -s --no-print-dir bindist&lt;br /&gt;
&lt;br /&gt;
NOTE: if you want to help us out with bug reports, please instead configure&lt;br /&gt;
with:&lt;br /&gt;
&lt;br /&gt;
$ ./configure -C --enable-native-gtk3ui --enable-debug-gtk3ui --enable-debug&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
8. If it got through all those steps, you should have some executables to play&lt;br /&gt;
with in &amp;quot;GTK3VICE-3.?-win??-*/&amp;quot; (the &amp;quot;win??&amp;quot; part of that name tells you which&lt;br /&gt;
type [32-bit or 64-bit] you built).&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
9. You can build the 32-bit version of VICE and/or the 64-bit version.  You&lt;br /&gt;
make the choice by choosing to run a particular one of the MSYS2 MinGW shells&lt;br /&gt;
(its environment variables control VICE's configuration).&lt;br /&gt;
&lt;br /&gt;
make the choice by choosing to run a particular one of the MSYS2 MinGW shells&lt;br /&gt;
(its environment variables control VICE's configuration).&lt;br /&gt;
&lt;br /&gt;
If you build one version, then want to build the other version, you must clean&lt;br /&gt;
away the object files first.  Then, you must configure VICE again.&lt;br /&gt;
&lt;br /&gt;
$ make clean&lt;br /&gt;
$ rm config.cache&lt;br /&gt;
$ ./configure -C --enable-native-gtk3ui&lt;br /&gt;
$ make -s --no-print-dir&lt;br /&gt;
$ make -s --no-print-dir bindist&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
10. If you want the distribution in a ZIP or a 7z archive instead of a&lt;br /&gt;
subdirectory then use one of these commands (instead of &amp;quot;make -s --no-print-dir bindist&amp;quot;).&lt;br /&gt;
Use this for a ZIP-format bindist:&lt;br /&gt;
&lt;br /&gt;
$ make -s --no-print-dir bindistzip&lt;br /&gt;
&lt;br /&gt;
or this for a 7z bindist:&lt;br /&gt;
&lt;br /&gt;
$ make -s --no-print-dir bindist7zip&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
Note:  You can install other packages if you want to add features to VICE.&lt;br /&gt;
(If you install any of these packages after you have built VICE, rerun&lt;br /&gt;
the last four commands in step 9.  That will make VICE use the&lt;br /&gt;
newly-installed libraries.)&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
11. Optional features&lt;br /&gt;
&lt;br /&gt;
11.1. This will let VICE use PortAudio:&lt;br /&gt;
&lt;br /&gt;
$ pacboy sync portaudio&lt;/div&gt;</summary>
		<author><name>Jayctheriot</name></author>
	</entry>
</feed>