Имя make не распознано как имя командлета
Перейти к содержимому

Имя make не распознано как имя командлета

  • автор:

Makefile Tools doesn’t work for some reason

I want to use the make command to compile my files. I installed Makefile Tools from the Marketplace, created a Makefile in my directory, but when I use the make command, it throws an error:

    make main.cpp
 + CategoryInfo : ObjectNotFound: (make:String) [], CommandNotFoundException + FullyQualifiedErrorId : CommandNotFoundException 

which means that make was not found. I didn’t touch any configuration files. I searched the Net and found nothing about it.

asked Nov 12, 2022 at 13:55
99 1 1 silver badge 6 6 bronze badges

1 Answer 1

It’s helpful to us if the question provides more details about your environment: what is «Makefile Tools»? Which «Marketplace»? What operating system are you using? Also, when formatting command output in your question please use the «Code Sample» format, not the «Blockquote» format, so that SO doesn’t reformat the text.

If you mean the Visual Code extension «Makefile Tools», then that extension only provides an interface to running make and managing Makefiles; it doesn’t provide the actual make program itself.

If you’re using a Windows system you will have to go find a make program and install it on your system before you can run it. There are various options depending on what environment you want to build in.

Вопрос №54887 от пользователя Дилянур в уроке «Микрофреймворк Slim», курс «Веб-разработка на PHP»

здравствуйте. $ make start ‘ Имя «make» не распознано как имя командлета, функции, файла сценария или выполняемой программы. Проверьте правильность написания имени, а также наличие и правильность пути, после чего повторите попытку.’ —выводится в терминале на Windows. Подскажите, есть альтернатива команды make?

make — это утилита, которая используется для запуска команд, которые описаны в Makefile. Если вы используете WSL, вам нужно установить эту программу.

В Ubuntu это делается следующим образом:

Подскажите пожалуйста, exe`шник после сборки через Сmake и mingw32-make не запускается

У меня установлен Cmake и MinGW. Оба находятся в переменных средах. Хочу собрать проект. Использую команду cmake .. -G «MinGW Makefiles», после этого запускаю команду mingw32-make. Все собирается, экзешник появляется, но не запускается. Ошибка: Точка входа в процедуру _ZdlPvj не найдена в библиотеке DLL. CMakeLists.txt:

cmake_minimum_required(VERSION 3.0) set(CMAKE_BUILD_TYPE Release) set(CMAKE_CXX_FLAGS "$ -std=c++14 -Wall") project(Packman) add_executable(main main.cpp Constants.h Game.h Ghost.h ICharacter.h Packman.h Pellet.h setConsoleAtributes.h Game.cpp Ghost.cpp Pellet.cpp Packman.cpp SetConsoleAtributes.cpp) 

Запускаю через g++ командой: g++ -o name.exe -std=c++14 -static-libgcc -static-libstdc++ main.cpp Constants.h Game.h Ghost.h ICharacter.h Packman.h Pellet.h setConsoleAtributes.h Game.cpp Ghost.cpp Pellet.cpp Packman.cpp SetConsoleAtributes.cpp и все собирается. Но через Cmake не получается. Подскажите, в чем может быть проблема? Думаю, что в статической линковке, но я не уверен. Если да, то как правильно ее настроить через Cmake? Спасибо, буду рад любой помощи.

Настройка параметров сборки CMake

Visual Studio использует файл конфигурации CMake для управления созданием CMake и его сборкой. CMakePresets.json поддерживается Visual Studio 2019 версии 16.10 или более поздней и является рекомендуемой конфигурацией CMake. CMakePresets.json поддерживается непосредственно CMake и может использоваться для создания И сборки CMake из Visual Studio, из VS Code в конвейере непрерывной интеграции и из командной строки в Windows, Linux и Mac. Дополнительные сведения см CMakePresets.json . в разделе «Настройка и сборка с помощью предустановок CMake».

Если вы поддерживаете проекты, использующие CMakeSettings.json файл для конфигурации сборки CMake, Visual Studio 2019 и более поздних версий предоставляют редактор параметров CMake. Редактор позволяет легко добавлять конфигурации CMake и настраивать их параметры. Он предназначен для более простой альтернативы ручному редактированию CMakeSettings.json файла. Однако если вы предпочитаете редактировать файл напрямую, можно выбрать ссылку «Изменить JSON » в правом верхнем углу редактора.

Чтобы открыть редактор параметров CMake, выберите раскрывающийся список «Конфигурация » на главной панели инструментов и выберите пункт «Управление конфигурациями«.

Screenshot of the CMake configuration drop-down. Manage Configurations is highlighted.

Откроется редактор параметров с установленными конфигурациями слева.

Screenshot of the CMake settings editor.

В левой области показаны установленные конфигурации (x86-Debug). В правой области показаны параметры выбранной конфигурации. К параметрам относятся имя конфигурации, тип конфигурации (для параметра Debug), набор инструментов (задано значение msvc_x86), файл цепочки инструментов CMake (пустой), корень сборки (содержит $\CMakeBuilds\$\build\$), аргументы команд CMake (пустые) и аргументы команд сборки (-v).

Visual Studio предоставляет одну конфигурацию x64-Debug по умолчанию. Вы можете добавить дополнительные конфигурации, выбрав зеленый знак плюса. Параметры, отображаемые в редакторе, зависят от выбранной конфигурации.

Параметры, которые вы выбрали в редакторе, записываются в файл с именем CMakeSettings.json . Этот файл предоставляет аргументы командной строки и переменные среды, передаваемые CMake при сборке проектов. Visual Studio никогда не изменяет CMakeLists.txt автоматически. С помощью CMakeSettings.json этого можно настроить сборку с помощью Visual Studio, оставив файлы проектов CMake неоткрытыми, чтобы другие пользователи вашей команды могли использовать их с любыми инструментами, которые они используют.

Общие параметры CMake

Следующие параметры доступны под заголовком Общие:

Имя конфигурации

Соответствует параметру name. Это имя отображается в раскрывающемся списке конфигураций C++. Вы можете использовать макрос $ для создания других значений свойств, например путей.

Тип конфигурации

Соответствует параметру configurationType. Определяет тип конфигурации сборки для выбранного генератора. В настоящее время поддерживаются значения Debug, MinSizeRel, Release и RelWithDebInfo. Он сопоставляется CMAKE_BUILD_TYPE с .

Набор инструментов

Соответствует параметру inheritedEnvironments. Определяет среду компилятора, которая используется для сборки выбранной конфигурации. Поддерживаемые значения зависят от типа конфигурации. Чтобы создать настраиваемую среду, выберите ссылку Edit JSON в правом верхнем углу редактора Параметры и измените CMakeSettings.json файл напрямую.

Файл цепочки инструментов CMake

Путь к файлу цепочки инструментов CMake. Этот путь передается в CMake как «-DCMAKE_TOOLCHAIN_FILE = «. Файлы цепочки инструментов указывают расположения компиляторов и служебных программ цепочки инструментов, а также другие целевые платформы и сведения, связанные с компилятором. Если этот параметр не задан, по умолчанию Visual Studio использует файл цепочки инструментов vcpkg.

Корневой путь к сборке

Соответствует buildRoot. CMAKE_BINARY_DIR Карты в , а также указывает место создания кэша CMake. Если указанная папка не существует, она будет создана.

Аргументы команд

Следующие параметры доступны под заголовком Аргументы команд:

Аргументы команд CMake

Соответствует cmakeCommandArgs. Указывает все больше параметров командной строки, передаваемых в CMake.

Аргументы команд сборки

Соответствует buildCommandArgs. Указывает больше коммутаторов для передачи базовой системе сборки. Например, передача -v при использовании генератора Ninja приводит к тому, что Ninja выдает командные строки.

Аргументы команд CTest

Соответствует ctestCommandArgs. Указывает дополнительные параметры командной строки для передачи в CTest при выполнении тестов.

Общие параметры для удаленных сборок

Для таких конфигураций, как Linux, которые используют удаленные сборки, также доступны следующие параметры:

rsync аргументы команд

Дополнительные параметры командной строки, передаваемые rsync в средство быстрого и универсального копирования файлов.

Переменные и кэш CMake

Эти параметры позволяют задавать переменные CMake и сохранять их в CMakeSettings.json . Они передаются в CMake во время сборки и переопределяют все значения в CMakeLists.txt файле. Этот раздел можно использовать так же, как вы используете CMakeGUI для просмотра списка всех доступных для изменения переменных CMake. Нажмите кнопку «Сохранить и создать кэш» , чтобы просмотреть список всех переменных CMake, доступных для редактирования, включая расширенные переменные (на CMakeGUI). Вы можете отфильтровать список по имени переменной.

Соответствует variables. Содержит пару «имя-значение» переменных CMake, передаваемых в -D name=value CMake. Если инструкции сборки проекта CMake указывают добавление каких-либо переменных непосредственно в файл кэша CMake, рекомендуется вместо этого добавить их сюда.

Расширенные настройки

Генератор CMake

Соответствует generator. Карты в коммутатор CMake и задает генератор CMake -G для использования. Это свойство можно также использовать как макрос $ , чтобы задать другие значения свойств. Сейчас Visual Studio поддерживает следующие генераторы CMake:

  • Ninja
  • «Unix Makefiles»
  • «Visual Studio 16 2019»
  • «Visual Studio 16 2019 Win64»
  • «Visual Studio 16 2019 ARM»
  • Visual Studio 15 2017
  • Visual Studio 15 2017 Win64
  • Visual Studio 15 2017 ARM
  • Visual Studio 14 2015
  • Visual Studio 14 2015 Win64
  • Visual Studio 14 2015 ARM

Так как генератор Ninja предназначен для ускорения сборки в ущерб гибкости и функциональности, он используется по умолчанию. Однако некоторые проекты CMake могут быть не в состоянии правильно построить с помощью Ninja. В этом случае можно указать CMake, что необходимо создать проект Visual Studio.

Режим IntelliSense

Режим, используемый подсистемой IntelliSense. Если режим не выбран, Visual Studio наследует режим из указанного набора инструментов.

Каталог установки

Каталог, в котором CMake устанавливает целевые объекты. Карты в CMAKE_INSTALL_PREFIX .

Исполняемый файл CMake

Полный путь к исполняемому файлу программы CMake, включая имя файла и расширение. Позволяет использовать настраиваемую версию CMake с Visual Studio. Для удаленных сборок укажите расположение CMake на удаленном компьютере.

Для таких конфигураций, как Linux, которые используют удаленные сборки, также доступны следующие параметры:

Удаленный корневой каталог CMakeLists.txt

Каталог на удаленном компьютере, который содержит корневой CMakeLists.txt файл.

Удаленный корневой каталог установки

Каталог на удаленном компьютере, в который CMake устанавливает целевые объекты. Карты в CMAKE_INSTALL_PREFIX .

Удаленное копирование источников

Указывает, следует ли копировать исходные файлы на удаленный компьютер, и позволяет указать, следует ли использовать rsync или sftp.

Прямое изменение CMakeSettings.json

Вы также можете напрямую редактировать CMakeSettings.json для создания пользовательских конфигураций. В редакторе параметров есть кнопка Изменить JSON в правом верхнем углу, которая открывает файл для редактирования.

Ниже приведен пример конфигурации, который можно использовать в качестве отправной точки:

 < "name": "x86-Debug", "generator": "Ninja", "configurationType": "Debug", "inheritEnvironments": [ "msvc_x86" ], "buildRoot": "$\\CMakeBuilds\\$\\build\\$", "installRoot": "$\\CMakeBuilds\\$\\install\\$", "cmakeCommandArgs": "", "buildCommandArgs": "-v", "ctestCommandArgs": "" >, 

JSON IntelliSense помогает изменить файл CMakeSettings.json :

Screenshot of the CMake JSON IntelliSense pop-up in the editor.

Редактор JSON также уведомляет о выборе несовместимых параметров.

Дополнительные сведения обо всех свойствах в файле см. в разделе Справочник по схеме CMakeSettings.json.

Visual Studio 2017 предоставляет несколько конфигураций CMake, определяющих способ вызова CMake для создания кэша CMake для данного проекта. Чтобы добавить новую конфигурацию, выберите раскрывающийся список конфигурации на панели инструментов и выберите пункт «Управление конфигурациями».

Screenshot of Manage configurations selected in the drop-down.

Можно выбрать из списка стандартных конфигураций:

Add Configuration to CMake Settings dialog list of predefined configurations.

При первом выборе конфигурации Visual Studio создает CMakeSettings.json файл в корневой папке проекта. Этот файл используется для повторного создания файла кэша CMake, например после операции Очистить.

Чтобы добавить другую конфигурацию, щелкните правой кнопкой мыши и выберите CMakeSettings.json пункт «Добавить конфигурацию«.

Screenshot of the shortcut menu with Add configuration selected.

Можно также изменить файл с помощью редактора параметров CMake. Щелкните правой кнопкой мыши CMakeSettings.json Обозреватель решений и выберите «Изменить CMake Параметры«. Или выберите Управление конфигурациями из раскрывающегося списка конфигурации в верхней части окна редактора.

Вы также можете напрямую редактировать CMakeSettings.json для создания пользовательских конфигураций. Ниже приведен пример конфигурации, который можно использовать в качестве отправной точки:

 < "name": "x86-Debug", "generator": "Ninja", "configurationType": "Debug", "inheritEnvironments": [ "msvc_x86" ], "buildRoot": "$\\CMakeBuilds\\$\\build\\$", "installRoot": "$\\CMakeBuilds\\$\\install\\$", "cmakeCommandArgs": "", "buildCommandArgs": "-v", "ctestCommandArgs": "" >, 

JSON IntelliSense помогает изменить файл CMakeSettings.json :

Screenshot of the CMake JSON IntelliSense pop-up in the editor.

Всплывающее окно JSON IntelliSense для «конфигураций» показывает сборкуCommandArgs, buildRoot, cmakeCommandArgs, configurationType, среди прочего.

Дополнительные сведения о каждом из свойств в файле см CMakeSettings.json . в справочнике по схеме.

Добавить комментарий

Ваш адрес email не будет опубликован. Обязательные поля помечены *