@funlw65
Thanks. I will try to do that.
I realized that you need detailed instructions to make that raylib library that can work also with Ray4Laz that Gunko has it in the works (the one that includes raygui as well). So let me try to write the required steps:
So, apart of compiling GLFW 3.4 (from the repo and, if you have a previous version installed in your system, uninstall it) as dynamic lib, you have to do the following:
1. Get the 4.0 distro of raylib and unzip it in your home folder;
2. Inside the main folder of the raylib, go to src/extras subfolder as we need to prepare raygui.h and physac.h headers.
3. Copy them into .c sources:
cp raygui.h raygui.c
cp physac.h physac.c
4. Copy the resulted .c files into the src subfolder (up one level in the tree structure of the folders).
so you are here now: $HOME/raylib_main_folder/src
5. Now we have to introduce one line of code to the raygui.c. Open it in an editor, and below
#define RAYGUI_VERSION "3.0"
line, insert the following line:
#define RAYGUI_IMPLEMENTATION
6. Save the modification.
7. Now we need to prepare the Makefile as below (I will include part of my Makefile for clarity):
# Library type used for raylib: STATIC (.a) or SHARED (.so/.dll)
RAYLIB_LIBTYPE ?= SHARED
# Build mode for library: DEBUG or RELEASE
RAYLIB_BUILD_MODE ?= RELEASE
# Build output name for the library
RAYLIB_LIB_NAME ?= raylib
# Define resource file for DLL properties
RAYLIB_RES_FILE ?= ./raylib.dll.rc.data
# Define raylib platform
# Options: PLATFORM_DESKTOP, PLATFORM_RPI, PLATFORM_ANDROID, PLATFORM_WEB
PLATFORM ?= PLATFORM_DESKTOP
# Include raylib modules on compilation
# NOTE: Some programs like tools could not require those modules
RAYLIB_MODULE_AUDIO ?= TRUE
RAYLIB_MODULE_MODELS ?= TRUE
RAYLIB_MODULE_RAYGUI ?= TRUE
RAYLIB_MODULE_PHYSAC ?= TRUE
RAYLIB_MODULE_RAYGUI_PATH ?= $(RAYLIB_SRC_PATH)/extras
RAYLIB_MODULE_PHYSAC_PATH ?= $(RAYLIB_SRC_PATH)/extras
# Use external GLFW library instead of rglfw module
USE_EXTERNAL_GLFW ?= TRUE
7.a On short, RAYLIB_LIBTYPE should be SHARED, RAYLIB_MODULE_RAYGUI should be TRUE, RAYLIB_MODULE_PHYSAC should be TRUE and USE_EXTERNAL_GLFW should be TRUE.
8. Save the modifications in the Makefile and compile from here (execute make command). You should get the required .so library, that contains both raygui and physac headers, required also for the upcoming new version and examples of Ray4Laz package...
9. Execute
sudo make install
and you are good to go.