FLTK logo

Re: [fltk.general] MSVC 2019 cmake issue?

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 
 All Forums  |  Back to fltk.general  ]
 
Previous Message ]New Message | Reply ]Next Message ]

Re: MSVC 2019 cmake issue? Albrecht Schlosser Sep 30, 2022  
 
On 9/30/22 11:13 Ian MacArthur wrote:
This pretty much comes under the "I should know this" banner, but I'm having trouble getting cmake to generate a MSVC sln file for fltk-1.4 just now.

Seems you *know* this, but sorry, the failed build is my fault. See below.

Now, as is well known, I'm not really an IDE sort of person, but for *reasons* I need to generate a MS binary.
No problem, I have a machine with MSVC 2019 installed (which TBH is for my kid to play with Unity and C#, so not really my thing...)

Anyway, fire up a "Developer command prompt" from MSVC and run a sensible looking (to me, anyway) cmake invocation:

cmake -G "Visual Studio 16 2019" -D CMAKE_BUILD_TYPE=Release -A x64 ..

I'm always using the default build w/o `-A ...` because I can never remember the allowed attribute values (same as for `-T ...`, BTW). But this has nothing to do with the build failure.

Fails with: 

-- Configuring incomplete, errors occurred!
See also "D:/Tools/Ian/fltk-1.4/build-msvc/CMakeFiles/CMakeOutput.log".
See also "D:/Tools/Ian/fltk-1.4/build-msvc/CMakeFiles/CMakeError.log".

and no fltk.sln is created. Also says...

CMake Error at documentation/CMakeLists.txt:60 (string):
  string sub-command REGEX, mode REPLACE needs at least 6 arguments total to
  command.

This looks like CMake can't retrieve the doxygen version, resulting in one argument of the `string (REGEX REPLACE ...` command being empty. This should be checked in the CMake file. Thanks for your report, I'll look into it...

Recalling that NSVC now supports cmake directly I tried that "GUI" way too, but it failed in the same way.

That's no surprise but thanks for trying it.

In the same repo., if I spin up an Msys shell and do my usual:

cmake -G "MSYS Makefiles" -D CMAKE_BUILD_TYPE=Release  ..

That all just works and builds.

Maybe the MSYS build finds doxygen?

What do I need to do differently for MSVC builds? I assume this generally works and I'm being foolish here...

No, don't worry, it's not your fault. You *shouldn't* have to do anything differently, except the system specific build options, of course.

That said, just for my information: can you please tell me if doxygen was found in *both* builds? You can post the output of the following command in the respective build directories (the output below is from my Linux system):

$ grep '^DOXYGEN' CMakeCache.txt 
DOXYGEN_DOT_EXECUTABLE:FILEPATH=/usr/bin/dot
DOXYGEN_EXECUTABLE:FILEPATH=/usr/local/doxygen-1.9.1/bin/doxygen
DOXYGEN_DOT_EXECUTABLE-ADVANCED:INTERNAL=1
DOXYGEN_EXECUTABLE-ADVANCED:INTERNAL=1

Note: DOXYGEN in capitals, or use 'grep -i'.

TIA

--
You received this message because you are subscribed to the Google Groups "fltk.general" group.
To unsubscribe from this group and stop receiving emails from it, send an email to fltkgeneral+unsubscribe@googlegroups.com.
To view this discussion on the web visit https://groups.google.com/d/msgid/fltkgeneral/5a15a78c-e4dc-b24e-3a9f-c901bf7b1e91%40online.de.
Direct Link to Message ]
 
     
Previous Message ]New Message | Reply ]Next Message ]
 
 

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'.