Есть ли способ запустить исполняемый файл C ++, который использует образы SDL2 и SDL2, не имея файлов dll в хранилище? - PullRequest
0 голосов
/ 27 апреля 2020

Я скомпилировал код в VS Code, используя Makefile с веб-сайта LazyFoo, внес в него некоторые изменения (конечно, не трогал флаги), как вы можете видеть ниже:

#OBJS specifies which files to compile as part of the project
OBJS = *.cpp

#CC specifies which compiler we're using
CC = g++

#INCLUDE_PATHS specifies the additional include paths we'll need
INCLUDE_PATHS = -IC:\mingw_dev_lib\include\SDL2

#LIBRARY_PATHS specifies the additional library paths we'll need
LIBRARY_PATHS = -LC:\mingw_dev_lib\lib

#COMPILER_FLAGS specifies the additional compilation options we're using
# -w suppresses all warnings
# -Wl,-subsystem,windows gets rid of the console window
COMPILER_FLAGS = -w -Wl,-subsystem,windows

#LINKER_FLAGS specifies the libraries we're linking against
LINKER_FLAGS = -lmingw32 -lSDL2main -lSDL2 -lSDL2_image

#OBJ_NAME specifies the name of our exectuable
OBJ_NAME = output

#This is the target that compiles our executable
all : $(OBJS)
    $(CC) $(OBJS) $(INCLUDE_PATHS) $(LIBRARY_PATHS) $(COMPILER_FLAGS) $(LINKER_FLAGS) -o $(OBJ_NAME)

Код похоже компилируется (я не получаю ошибок компиляции при компиляции, как ошибка «Нет такого файла или каталога»), но когда я запускаю свой исполняемый файл, я получаю этот

код ошибки при запуске exe-файла

Теперь я могу добавить dll-файлы в каталог, где находится этот код C ++, но это загромождает его. Я хочу сделать это так, чтобы exe-файл или что-то еще знали, где находятся файлы dll на моем P C, который удобно не находится в моем каталоге рабочей области.

...