Использование FLTK с VSCode

163
29 июня 2018, 05:20

Помогите с FLTK, которую используют в книге Страуструпа. Скачал FLTK, собрал с помощью make install. Когда пытаюсь скомпилировать

#include <FL/Fl.H>
#include <FL/Fl_Box.H>
#include <FL/Fl_Window.H>
int main() {
  Fl_Window window(200, 200, "Window title");
  Fl_Box box(0,0,200,200,"Hey, I mean, Hello, World!");
  window.show();
  return Fl::run();
}

Выдает ошибку

FL/Fl.H: No such file or directory
#include <FL/Fl.H>

Пытался и через VSCode и через обычную командную строку (я понимаю, что есть подробные гайды по установке в Visual Studio, но это несколько ограничивает в понимании того, что вообще происходит). В VSCode добавлял путь "C:/FLTK/include". Убирал "FL/" в заголовках. Добавлял переменную окружения. Та же ошибка. В чем проблема? (Win10)

Ответ В общем, я нашел решение при помощи fltk-config --compile xxx.cpp и MSYS. При выполнении из под msys можно получить команду, которая выглядит так следующим образом

g++ -IC:/FLTK/include -IC/FLTK/include/FL/images -mwindows -DWIN32 -DUSE_OPENGL32 -D_LARGEFILE_SOURCE -D_LARGEFILE64_SOURCE -D_FILE_OFFSET_BITS=64 -o "name" "name.cpp" -mwindows C:/FLTK/lib/libfltk.a -lole32 -luuid -lcomctl32 

Работает и более короткая версия

g++ -IC:/FLTK/include -IC/FLTK/include/FL/images -mwindows -o "name" "name.cpp" "name2.cpp"... C:/FLTK/lib/libfltk.a  далее библиотеки прописываются так же полным путем) -lole32 -luuid -lcomctl32

Теперь этим можно пользоваться из под обычной вин-консоли без fltk-config, которая в cmd не работает (а также во встроенном терминале VSCode), в MSYS же она работает только при условии дефолтного пути установки библиотеки (в моем случае msys/local/lib) иначе надо прописывать полный путь (страдает гибкость).

READ ALSO
Работа с очередями и ООП (C++)

Работа с очередями и ООП (C++)

Дан текстовый файл с изображением целых чисел, которые необходимо переписать в очередь Qu1В очередь Qu2 сначала записать числа палиндромы,...

212
C++ Передача списка va_list в функцию

C++ Передача списка va_list в функцию

Подскажите, как реализовать функцию:

200
Холивар по поводу реализации. С++ и Qt

Холивар по поводу реализации. С++ и Qt

Есть объект A который владеет объектом B (объявляется и инициализируется в конструкторе объекта A и является членом объекта A)

205
Перезапуск цикла через n секунду

Перезапуск цикла через n секунду

Есть приложение, реализующее обработку изменяющегося файлаНа форме есть кнопки "Старт" и "Стоп" меняющие значение переменной active

203