[CMake] project() with ASM fails with MSVC 19

Petr Kmoch petr.kmoch at gmail.com
Tue Oct 3 11:47:22 EDT 2017


Hi Robert.

You might try leaving ASM out of project() and using enable_language()
after your call to project() (potentially in conditional branches). It can
only (reliably) be used from the toplevel CMakeList, but that sounds like
it could be good enough for you.

https://cmake.org/cmake/help/latest/command/enable_language.html

Petr


On 3 October 2017 at 17:17, Robert Dailey <rcdailey.lists at gmail.com> wrote:

> I haven't; the bigger issue here is that the way we specify ASM
> changes depending on platform. But prior to the project() call, you
> can't really use CMake to its fullest since project() serves as
> practically an "initialize CMake" function. So there's a catch 22
> situation here.
>
> My expectation was that you specify the LANGUAGE, i.e. "ASM" and the
> platform cmake scripts within CMake's module directory would deduce
> "Ok I'm on Windows, so I know it's really MASM".
>
> On Tue, Sep 19, 2017 at 3:35 PM, Robert Maynard
> <robert.maynard at kitware.com> wrote:
> > Have you tried setting the project call of project(libpng VERSION
> > 1.6.33 LANGUAGES ASM_MASM C)
> >
> > On Tue, Sep 12, 2017 at 2:34 PM, Robert Dailey <rcdailey.lists at gmail.com>
> wrote:
> >> Also, I am using the "Visual Studio 15 2017" generator with no other
> >> options (generating through cmake-gui on Windows)
> >>
> >> On Tue, Sep 12, 2017 at 1:33 PM, Robert Dailey <
> rcdailey.lists at gmail.com> wrote:
> >>> Using CMake 3.9, I do this:
> >>>
> >>> cmake_minimum_required(VERSION 3.9)
> >>> project(libpng VERSION 1.6.33 LANGUAGES ASM C)
> >>>
> >>> I get the following error:
> >>>
> >>> -- The ASM compiler identification is unknown
> >>> -- Didn't find assembler
> >>> -- The C compiler identification is MSVC 19.11.25507.1
> >>> CMake Error at CMakeLists.txt:16 (project):
> >>> No CMAKE_ASM_COMPILER could be found.
> >>>
> >>>
> >>> Why doesn't this work?
>
-------------- next part --------------
An HTML attachment was scrubbed...
URL: <http://public.kitware.com/pipermail/cmake/attachments/20171003/abb4c947/attachment.html>


More information about the CMake mailing list