Skip to content

Using raylib in VSCode

Ninad Sachania edited this page Jun 28, 2024 · 12 revisions

VSCode is an excellent choice of code editor when it comes to raylib. Getting set up with a new VSCode project is easy.

Windows

Note

Make sure you install Raylib from the official release binaries which you can find here, rather than building Raylib from source (should work without changes on Windows if you install Raylib mingw release).

Step 0

If you have not installed MinGW or W64DevKit yet, go here and follow instructions to set up C/C++ in your local machine.

Additionally further steps assume that you have installed both raylib and w64devkit in C:\raylib\ folder and your folder structure looks like this:

.
├── raylib
│   ├── CHANGELOG
│   ├── include
│   ├── lib
│   ├── LICENSE
│   ├── README.md
│   └── src
└── w64devkit
    ├── bin
    ├── COPYING.MinGW-w64-runtime.txt
    ├── Dockerfile
    ├── include
    ├── lib
    ├── libexec
    ├── README.md
    ├── share
    ├── src
    ├── VERSION.txt
    ├── w64devkit.exe
    ├── w64devkit.ini
    └── x86_64-w64-mingw32

Feel free to install differently but do the changes to the configuration files accordingly.

Alternative Route: CMake

Clone this repository and follow the steps outlined there.

Step 1

Copy the VSCode folder (and all its contents) from raylib/projects/VSCode (from your installed directory) to your desired project location. These files can also be found here.

Note

You can use the Zip Tool to download only the VSCode folder as a zip.

Step 2

Make sure you set the proper paths to your local build of raylib in c_cpp_properties.json and tasks.json. These will be specific to your installation of raylib.

In c_cpp_properties.json make sure that compilerPath is correct:

"includePath": [
  "C:/raylib/raylib/src/**",
  "${workspaceFolder}/**"
],
"compilerPath": "C:/raylib/w64devkit/bin/gcc.exe",

Similarly in tasks.json also you have to make this change for compile to occur.

Extra Configuration for Windows Subsystem for Linux Users

If you are on Windows and use Windows Terminal with the Windows Subsystem for Linux as your default shell, you won't be able to debug or build your game with the default settings. That's because the build configuration will try to launch cmd to open a standard Windows shell which won't exists in your Linux distribution.

To make it work, edit launch.json in the .vscode folder so that the externalConsole property is true instead of false.

Important

You need to make this change twice i.e. you should see "externalConsole": true, in both configurations.

Step 3

Install the "C/C++" VSCode extension. (From Menu - File > Preferences > Extensions)

Step 4

Try launching by using the "Debug" launch configuration in the Debug tab or press F5.

or

You can Build the game using View > Command Palette (or Ctrl + Shift + P), Type Run Task and press Enter. And Select the Build Debug option. A game executable will be created in the project folder. You can see any error in the console

Mac

Step 0: Environment Configurations

Install brew, cmake and raylib, if you have not installed them yet.

  1. Follow the instructions on brew to install brew.
  2. Install CMake through: brew install cmake
  3. Install Raylib through : brew install raylib

Step 1: VS Code Extension Configuration

To make your life easier, it is best to use a combination of different extensions. Luckily, we can start this by installing this particular extension pack called C/C++ Extension Pack. It contains C/C++ utilities and CMake Tools.

image

You can read this article if you want to know more CMake VScode Setup

Step 2 : CMakeLists Setup

Assuming that you have a basic knowledge about CMakeLists, we will just briefly skim through process.
If you have not modified anything to your homebrew install path, you will most likely find your raylib files in

/opt/homebrew/opt/raylib/include

and dylib files in

/opt/homebrew/opt/raylib/lib

First off, try to add the include files into your projects by:

find_path(RL_INCLUDE_DIR NAMES raylib.h PATHS /opt/homebrew/opt/raylib/include)
include_directories(${RL_INCLUDE_DIR})

This will remove error squiggle lines from your files if you have tried to include raylib.h

Secondly, try to add the dylib library itself and link against it

find_library(RL_LIBRARY NAMES raylib PATHS /opt/homebrew/opt/raylib/lib)

Make sure you use target_link_libraries after you have use the add_executable

target_link_libraries($YOUR_PROJECT ${RL_LIBRARY})

Step 3: Running the project

Make sure you have a main.c or main.cpp file to test whether if everything is linking properly or not

Press Ctrl+Shift+P to open up the command palette, and then search and select CMake: Configure image

After that, select the run button at the bottom of the screen (not the one at the top) Run Target Button Image

Clone this wiki locally