:: Article Deprecated!
:: Fantom 1.0.68 resolves the issue outlined in this article.
:: Article Deprecated!
How to install Fantom 1.0.67 on a Windows 64-bit machine.
If you're running Windows 64-bit and have a 64-bit Java JDK installed then the chances are, when you try to run Fantom, you'll get the following error:
C:\> fan -version ERROR: Cannot read registry: SOFTWARE\JavaSoft\Java Runtime Environment Current Version
Don't worry, you can fix it in one of two ways:
- The Easy Way
- The Hard Way
The Easy Way
The easy way is to install Fantom with:
which configures all your environment variables and caters for both 32-bit and 64-bit systems.
Or for a more manual approach, download the Fantom distribution for Windows 64-bit:
Note that the installers and distributions above are created and maintained by me, and therefore are not official Fantom releases.
The Hard Way
Alternatively, you can create the distribution yourself by following these steps:
.exe files with
The registry error is caused by a 32-bit / 64-bit compatibility issue with
fan.exe, the Fantom launcher for Windows.
But unless you're compiling Fantom itself in a bootstrap build, there's no real reason to use
fan.exe. So we replace the
.exe with a
.cmd file that calls Java direct:
@java -cp "%FAN_HOME%\lib\java\sys.jar" fanx.tools.Fan %*
We can also do the same for
@java -cp "%FAN_HOME%\lib\java\sys.jar" fanx.tools.Fant %*
We can replace the other
.exe files with
.cmd files that simply route to
@call fan compiler::Fanp %*
@call fan fanr %*
@call fan fansh %*
@call fan flux %*
Note: Don't forget to delete the
.exe files because these take precedence and Windows will still call
fan.exe if it exists.
The distribution also has empty file named
null.exe, this is so F4 will still recognise the directory as a valid Fantom install.
2. Install SWT for Windows 64-bit
To run or develop any desktop FWT application you'll need to install a version of SWT for Windows 64-bit.
This is covered in detail in Running FWT On 64-Bit Platforms so I'll not repeat it here.
The distribution also deletes the SWT jars for other platforms.
3. Delete all
Okay, so this isn't an essential step! But being an OCD Windows user you don't really want those annoying junk files for a MacOS lying around, so lets delete them:
C:\> cd %FAN_HOME% C:\Apps\fantom-1.0.67> del /s /q /f *.DS_Store
4. Config Tweaks
The distribution also makes some minor tweaks to
Increase the number of stack frames from 25 to 50:
// Default depth of Err.trace used for stack tracing errTraceMaxDepth=50
Turn on debug info:
// If debug is set to true, then the runtime emits debug // information such as the LocalVariableTable for debuggers // This property can only be configured by bootstrap homeDir. debug=true
If you start to compile java files as part of your Fantom builds then you'll probably have to edit
%FAN_HOME%\etc\build\config.props to update the
And that's it! Your Windows 64-bit Fantom installation is good to go!
Test it running
fan on the command line:
C:\> fan -version Fantom Launcher Copyright (c) 2006-2013, Brian Frank and Andy Frank Licensed under the Academic Free License version 3.0 Java Runtime: java.version: 1.6.0_45 java.vm.name: Java HotSpot(TM) 64-Bit Server VM java.vm.vendor: Sun Microsystems Inc. java.vm.version: 20.45-b01 java.home: C:\Apps\Java\jdk1.6.0_45\jre fan.platform: win32-x86_64 fan.version: 1.0.67 fan.env: sys::BootEnv fan.home: C:\Apps\fantom-1.0.67
- ERROR: Cannot Read Registry on the Fantom forum.
- 64-bit Win Launcher on the Fantom forum.
- What is a .DS_Store file?
- Delete all hidden OSX junk files in Windows
- 31 Jul 2016 - Deprecated.
- 20 Jan 2015 - A typo in
fanr.cmdcaused a Batch Recursion Error! Fixed typo and uploaded new
- 22 Aug 2015 - Batch files now handle spaces in the
- 11 Jan 2015 - Original article.