Я делаю графический интерфейс FLTK в QtCreator. Пожалуйста, не сердитесь на меня за то, что я не использую Qt для создания графического интерфейса, это не имеет значения.
В любом случае, мой тип проекта - "Обычный проект C++", и это мой код (вам, вероятно, не нужно его читать, но я поместил его туда на всякий случай):
// include headers
#include <Windows.h>
#include <Fl/Fl.H>
#include <FL/FL_Window.h>
#include <FL/Fl_Button.h>
#include <FL/FL_ask.h>
// macro functions
#define UP(x) UNREFERENCED_PARAMETER(x)
// callback function
void callback(Fl_Widget *sender)
{
sender->label("Thanks!");
}
// main function
int WINAPI WinMain(HINSTANCE hInstance, HINSTANCE hPrevInstance, LPSTR lpCmdLine,
int nShowCmd)
{
// UP's
UP(hInstance);
UP(hPrevInstance);
UP(lpCmdLine);
UP(nShowCmd);
// window
Fl_Window *window = new Fl_Window(250, 250, "Derp Window");
window->begin();
// button
Fl_Button *button = new Fl_Button(10, 100, 230, 25, "Click Me!");
button->callback(callback);
// run
window->end();
window->show();
int result = Fl::run();
// delete ptr's
delete button;
delete window;
// return
return result;
}
Когда я запускаю это, я получаю это предупреждение и две ошибки (извините за маленькое изображение, просто увеличьте масштаб в браузере, если вы не можете его прочитать):
Я знаю, что такое ошибка LNK2019, на самом деле они, вероятно, проклятие моего существования. Но в этом случае я понятия не имею, почему я получаю это. Я думаю, что вы также должны посмотреть на это, это текст для моего файла .pro проектов Qt:
ШАБЛОН = КОНФИГУРАЦИЯ приложения += КОНФИГУРАЦИЯ консоли -= КОНФИГУРАЦИЯ пакета_приложения -= qt
win32: LIBS += -luser32 -lshell32 -lgdi32 -lole32 -ladvapi32
ИСТОЧНИКИ += main.cpp
unix|win32: LIBS += -L$$PWD/../../../Desktop/C++/FLTK/lib/ -lfltk
INCLUDEPATH += $$PWD/../../../Desktop/C++/FLTK/include DEPENDPATH += $$PWD/../../../Desktop/C++/FLTK/include
Это, вероятно, самая важная часть: я никогда не получаю никаких ошибок, и программа работает нормально, когда я использую int main() в качестве основной функции.
Итак, мой вопрос: почему я получаю это, как мне это исправить?