FLTK logo

STR #2963

FLTK matrix user chat room
(using Element browser app)   FLTK gitter user chat room   GitHub FLTK Project   FLTK News RSS Feed  
  FLTK Apps      FLTK Library      Forums      Links     Login 
 Home  |  Articles & FAQs  |  Bugs & Features  |  Documentation  |  Download  |  Screenshots  ]
 

Return to Bugs & Features | SVN ⇄ GIT ]

STR #2963

Application:FLTK Library
Status:2 - Closed w/o Resolution
Priority:3 - Moderate, e.g. unable to compile the software
Scope:3 - Applies to all machines and operating systems
Subsystem:None
Summary:Cannot compile fltk 3.0 to the x64 target in Visual Studio 2012
Version:3.0
Created By:simulacrum111
Assigned To:matt
Fix Version:Unassigned
Update Notification:

Receive EMails Don't Receive EMails

Trouble Report Files:

No files


Trouble Report Comments:


Name/Time/Date Text  
 
#1 simulacrum111
08:04 May 17, 2013
BUG:  MSBuild in Visual Studio 2012 has "BuildInParallel" enabled by default.  When attempting to compile in Visual Studio 2012 the FTK1011 error is generated repeatedly.  A file cannot be accessed because it is locked by another cl.exe process.

SOLUTION:  Disable "BuildInParallel" in the Visual Studio IDE.
Navigations:  TOOLS -> Options -> Projects and Solutions -> Build and Run
Change required: Set "maximum number of parallel project builds" to 1.

This allows flk 3.0 to build to the x64 target in Visual Studio 2012.

POSSIBLE ROOT CAUSE: Project dependencies are not preserved when "creating" the x64 build configuration in Visual Studio 2012 or they were not set correctly for the Win32 build configuration initially.

SUGGESTION: Add the x64 build configuration for all projects in the solution and ensure project dependencies are correct for distribution of fltk 3.0.  This would prevent Visual Studio from "breaking things" when the end-user is forced to create the x64 configuration since it was not included by default for distribution.

Apologies if wrong or I didn't obey protocols for submitting this STR.
 
 
#2 AlbrechtS
12:30 May 17, 2013
Comments (only), may need further checks:

(1) ISTR that we had a similar problem with FLTK 1.3, and we fixed it by setting proper build directories (don't recall what it was called: temporary or working directories?). The trick was to set a different one for each (independent) project.

(2) ISTR that VS 2010/2012 Express (the free versions) don't support 64-bit builds. Does anyone know for sure? Otherwise I could maybe test this, but I don't have the full version(s) available.

(3) Also, ISTR that the VS IDE files are generated by fluid or some other tool in FLTK 3.0, so that an example config might help to create the correct build configuration for x64. I believe that a diff with only one project's x64 build config might help. Otherwise, we'd probably need the full modified IDE files as diff, since devs can't create them - but I don't know for sure, maybe only Matt knows...

Suggestion: please post a diff with ONE additional x64 build configuration (if that's possible), maybe for one of the test programs or the fltk library itself. Then we should wait for others to comment to see what would be the best way to proceed.
 
 
#3 greg.ercolano
12:38 May 17, 2013
I've definitely built 64bit binaries with VS 2010.

It was tricky to get working though; the default download of VS
only built 32bit. To do 64bit, you had to add on another package. PITA.

I built from the command line, and as I recall, there was a separate
batch script one had to run to get a DOS prompt whose compile environment
had the right env variable settings to support 64bit builds. Wasn't fun,
but it did work finally, after a day of swearing at the screen..
 
 
#4 AlbrechtS
13:18 May 17, 2013
Okay, now I checked ... at least I can say that I have VS 2010 *Express* and I *CAN* select 64-bit (x64) build options. I can't select x64 options with VS 2008 Express though, so this might be what I remembered.

Platform: Windows 7, 64-bit:

I tried a FLTK 1.3(!) build (x64 target) with VS 2010 Express by *naively* "converting" (copying) the settings, but then I found that comctl32.lib was not found when linking. After removing comctl32.lib for testing, the next one to complain was kernel32.lib ... I gave up. I don't know how to replace these libs, and Google wasn't of much help (although there seemed to be similar questions, but nothing helped _me_). Note that the same project builds with Win32 target.

Sorry, I can't help...
 
     

Return to Bugs & Features ]

 
 

Comments are owned by the poster. All other content is copyright 1998-2024 by Bill Spitzak and others. This project is hosted by The FLTK Team. Please report site problems to 'erco@seriss.com'.