CMake Не могу найти MSBuild.exe для VS 14 2015

Как указано выше, вам нужно использовать объект дважды:

(t.*t._processPtr.load())();
 ^  ^             ^----- load() because it's an atomic variable
 |  |---- this loads the function pointer stored inside of t
 |------- actual Object to call the member function pointer on

Итак, вы закончите с этим:

int main(int argc, char** argv)
{
    test t;
    t._processPtr = &test::process;
    (t.*t._processPtr.load())();  
}
0
задан rici 19 January 2019 в 01:07
поделиться

1 ответ

Оболочка разработки VS скрыта в меню «Пуск» (Visual Studio 2017->Visual studio Tools->VC), и есть несколько вариантов на выбор.

Затем вы можете использовать командную строку для запуска cmake -G "Visual Studio 14 2015 Win64".

Если это сработает или нет, я не совсем уверен, потому что генератор будет искать ключи реестра для «Visual Studio 14 2015», чтобы определить правильный путь msbuild. Но он не установлен, потому что вы используете visual studio community 2017, который работает совершенно по-другому.

Поэтому, когда cmake не удается найти msbuild для VS14, по умолчанию будет указано то, что находится на пути, и это будет msbuild для VS 2017.

Именно тогда вы узнаете, совместимо ли дополнение с cmake VS14 проектами и наборами инструментов.

Может быть, надстройка - это просто VS14 наборы инструментов. Если это так, вы хотите сгенерировать проект VS17 и использовать опцию -T, чтобы использовать набор инструментов VS14.

Также Visual Studio и CMake называют msbuild инструментом для сборки. Опция -T - выбрать набор инструментов платформы, который является версией компилятора для использования.

0
ответ дан Fred 19 January 2019 в 01:07
поделиться
Другие вопросы по тегам:

Похожие вопросы: