> Well, my machine itself is 64bit, so I think I should try to get the
> 64bit configuration working.
I'm not sure I really follow the logic there.
Unless you actually need the extended address space that 64-bit brings (and almost nobody does!) then the 32-bit executables are actually more "useful" since they run on "any" Windows machine, whereas the 64-bit exe can only run on a 64-bit Windows machine.
In general the 32-bit exe will be smaller, and in a lot of cases (due to its reduced memory footprint) it will also run faster, so the "benefits" of 64-bit executables under Windows are somewhat illusory.
(So far as I can tell, the main purpose of 64-bit PC's is to sell new boxes; it is far from clear that there is substantial end-user benefit at this stage.)
However, if you want to do it, here's what I did to get a 64-bit VS build the other night. Note that I have cmake installed in my path.
Firstly, I open a "developer console" from within VS. In that console, I cd to a clean fltk tarball that I have unpacked. Then:
- mkdir build-MSx64 # to create a build directory to work in.
- cd build-MSx64
- cmake -G "Visual Studio 14 2015 Win64" .. (note the ".." at the end there; that is needed!)
(I'm doing this from memory, so that generator string may be wrong! Check it.)
That should cause cmake to run and generate a solution fltk.sln in the build-MSx64 folder; open that fltk.sln from the VS IDE, and before you build it, right click on the solution, go into the configuration options and set it to release mode.
Now right clock the solution again and choose build.
For me, that Just Works and generates a valid, 64-bit release build. I've done this on a few different machines and it's been pretty consistent, so if it's not working for you... well, I do not know; something must be broken. Is there something odd or irregular about your set up?
> It'd been working fine for my user programs, but just now I stumbled
> into another wall. For some reason, when I try to do a 64bit Release
> configuration, I keep getting error messages saying that FLTK header
> files can't be found. I've set the path to the directory where I've
> put them in Properties > Configuration Properties > General >
> Additional Include Directories and I'm sure it's the correct path
> (C:\Program Files (x86)\fltk-1.3.4-1), but it still gives me the same
> error. The 64bit Debug configuration compiles and links just fine in this regard.
> Also, in the program I'm getting the errors in, there's also problem
> with a certain exception I'm catching in a try-catch block. I can't
> see the message appear on my window. Maybe my math for the points is wrong?
Is exception handling enabled for the VS builds of fltk? I do not know.
I do know that the gcc-based builds of fltk (on all platforms, including Windows) disables exception support since the fltk library does not use it. (Adding exception support bulks up the lib a lot, which is wasteful if we are not using it.)
It may be that, if you are using the compiler options that fltk sets, it is disabling your exception code?
Though to be honest I'd expect that to throw a warning (or error) at compile time, rather than to just fail silently.