Как я могу запустить проект на SFML в Visual Studio Code с использованием CMake?

Я использую следующие версии инструментов: G++ 14.2.0, CMake 3.31.2 и SFML 3.0.0. Я клонировал репозиторий (<a href="https://github.com/SFML/cmake-sfml-project" rel="nofollow">ссылка</a>), но в файле main.cpp возникла ошибка, которую я исправил, добавив путь к SFML в includePath. Теперь мне нужно разобраться, как правильно настроить конфигурацию, собрать проект и запустить его. Какие шаги мне следует предпринять?
  • 28 декабря 2024 г. 10:14
Ответы на вопрос 2
Запуск проекта на SFML (SIMPLE AND FAST MULTIMEDIA LIBRARY) с использованием CMake в Visual Studio Code (VS Code) требует нескольких шагов. Вот пошаговая инструкция, как это сделать:

### Шаг 1: Установите необходимые инструменты

Убедитесь, что у вас установлены следующие инструменты:

- G++ (вы уже указали, что у вас версия 14.2.0)
- CMake (версия 3.31.2)
- Visual Studio Code
- Расширения для C++ и CMake в VS Code, такие как:
  - C/C++ от Microsoft
  - CMake Tools

### Шаг 2: Установите SFML

1. Убедитесь, что библиотека SFML 3.0.0 правильно установлена на вашем компьютере. Если она не установлена, вы можете скачать её с официального сайта [SFML](https://www.sfml-dev.org/download.php).
2. Распакуйте SFML в удобное для вас место, например, `C:\SFML` на Windows.

### Шаг 3: Настройте проект

1. Откройте проект, который вы клонировали из репозитория [cmake-sfml-project](https://github.com/SFML/cmake-sfml-project), в VS Code.
2. Измените файл `CMakeLists.txt`, чтобы указать путь к SFML. Добавьте следующие строки:

   ```cmake
   set(SFML_DIR "C:/SFML/lib/cmake/SFML") # Укажите правильный путь к SFML
   find_package(SFML 3.0 COMPONENTS graphics window system REQUIRED)
   ```

3. Включите SFML в ваш проект:

   ```cmake
   target_link_libraries(${PROJECT_NAME} sfml-graphics sfml-window sfml-system)
   ```

### Шаг 4: Настройка VS Code

1. В VS Code нажмите `Ctrl+Shift+P` и введите "CMake: Configure", выберите соответствующий генератор (обычно это `GCC` или `Ninja`, в зависимости от ваших предпочтений).
2. Если у вас уже настроен компилятор G++, CMake должен сгенерировать необходимые файлы для сборки.
3. Если вы видите ошибки, проверьте `CMakeLists.txt` на наличие ошибок и убедитесь, что пути к SFML прописаны правильно.

### Шаг 5: Построить проект

1. После успешной конфигурации, выполните команду `Ctrl+Shift+P` и введите "CMake: Build" для сборки проекта.
2. Проверьте терминал на наличие ошибок при сборке.

### Шаг 6: Запуск проекта

Когда сборка завершится, вы можете запустить проект следующими способами:

1. В терминале введите:

   ```sh
   ./bin/your_project_name # Укажите ваш исполняемый файл
   ```

   (проверьте, где находится исполняемый файл - по умолчанию он может находиться в папке `bin` в корне вашего проекта).

2. Альтернативно, в VS Code вы можете создать задачу для запуска вашего проекта:
   - В файле `.vscode/tasks.json` добавьте задачу для запуска вашего проекта:

   ```json
   {
       "version": "2.0.0",
       "tasks": [
           {
               "label": "run",
               "type": "shell",
               "command": "${workspaceFolder}/bin/your_project_name",
               "group": {
                   "kind": "build",
                   "isDefault": true
               },
               "problemMatcher": []
           }
       ]
   }
   ```

   Не забудьте заменить `your_project_name` на имя вашего проекта.

### Шаг 7: Проблемы с библиотеками

Если вы столкнулись с ошибками при запуске (например, "не удается найти библиотеку"), убедитесь, что директории `lib` и `include` библиотеки SFML добавлены в переменные окружения `PATH` и правильно указаны в ваших путях.

### Заключение

Следуя этим шагам, вы сможете успешно запустить проект на SFML в VS Code с использованием CMake. Если у вас возникли дополнительные вопросы или проблемы, не стесняйтесь уточнять!
В целом, сделать это несложно. И дело здесь вовсе не в VSCode. 
Для сборки проекта вам необходимо написать пресеты - файлы CMakePresets.json и CMakeUserPresets.json. В CMakePresets.json помешаются настройки окружения, которые не зависят от вашей машины. В CMakeUserPresets.json помещаются настройки для конкретного проекта.
Примеры таких файлов (кстати, с ними все по идее должно собраться,, если в PATH добавить путь к cl.exe (компилятор MSVC)
---


Далее выбираете необходимую предустановку, настраиваете, собираете, запускаете
Похожие вопросы