Я пытаюсь скомпилировать и запустить некоторый код C ++, используя библиотеки OpenGL без IDE, используя команду g ++ в файле .bat.
Я потратил некоторое время, пытаясь найти правильный синтаксис для компиляции g ++без удачи. Я знаю, что вы должны связать файлы заголовков для компилятора, чтобы создать файл .o, а затем передать файлы библиотеки компоновщику, чтобы он мог создать исполняемый файл. Объяснения, которые я нашел о синтаксисе g ++, немного поразили меня, поэтому я надеялся на конкретный пример того, как скомпилировать файл .cpp с использованием внешних библиотек.
main.cpp выглядит следующим образом:
#include "GLFW/glfw3.h"
#include <thread>
int main()
{
glfwInit();
std::this_thread::sleep_for(std::chrono::seconds(1));
glfwTerminate();
}
полный путь к glfw3.h: C:\C++\glfw\include\GLFW\glfw3.h
компиляторы .bat файлвыглядит так:
@echo off
g++ -std=c++11^
-I\C:\C++\glfw\include\^
-c main.cpp^
-o main.o
pause
Файл компоновщика .bat:
@echo off
g++ -L\C:\C++\glfw\lib-mingw\libglfw3.a^
-L\C:\C++\glfw\lib-mingw\libglfw3dll.a^
-c main.o^
-o main.exe
pause
Я ожидаю, что компилятор .bat создаст файл main.o, который я могупозже используйте компоновщик для создания файла main.exe, но вместо этого я получаю следующее сообщение об ошибке:main.cpp:1:24: fatal error: GLFW/glfw3.h: No such file or directory
compilation terminated.