【问题标题】:FLTK in MSVC needs x11 headers?MSVC 中的 FLTK 需要 x11 标头吗?
【发布时间】:2011-10-11 20:50:10
【问题描述】:

我现在正在尝试学习如何使用 FLTK(在 MSVC 2008 中)。我得到了正确编译的所有库,但是当我尝试运行这个程序时:

#include "FL/FL.H" #include "FL/Fl_Window.H" #include "FL/Fl_Box.H" int main(int argc, char *argv[]) { Fl_Window *window = new Fl_Window(340, 180); Fl_Box *box = new Fl_Box(20, 40, 300, 100, "Hello, World!"); 盒子->盒子(FL_UP_BOX); 框->标签字体(FL_BOLD + FL_ITALIC); 框->标签大小(36); 框->标签类型(FL_SHADOW_LABEL); 窗口->结束(); 窗口->显示(); 返回 Fl::run(); }

我收到了这个错误

1>c:\fltk\fl\xutf8.h(33) : 致命错误 C1083: 无法打开包含文件: 'X11/X.h': 没有这样的文件或目录

我可以看出它缺少 x11,但我进行了快速的谷歌搜索,但在这个主题上我找不到任何帮助。顺便说一句,我正在运行 v1.3.0。

感谢您的宝贵时间。

【问题讨论】:

  • 你有没有为编译器定义过WIN32
  • 这对我很重要,你在用fltk,你是什么原因捡起来用的?有什么计划吗?
  • 感谢您的提示,我发现在“#include ”之前添加“#define WIN32 1”或“#include ”可以使其正常工作。但是如何摆脱命令行呢?
  • 我猜你的意思是控制台窗口。有一个链接器选项,如果控制台打开它,它会在可执行文件中设置一个标志。不幸的是,我这样做已经太久了,以至于我不记得确切的方法了。我只知道它与使用的运行时库有关。
  • 啊,就是这样:在包含int main(...) 的源文件中添加这个#pragma comment(linker, "/SUBSYSTEM:windows /ENTRY:mainCRTStartup") 或在项目构建链接器选项中设置它。

标签: user-interface visual-c++ x11 header-files fltk


【解决方案1】:

我找到了答案,在您的 FLTK 包含之前添加“#define WIN32”。

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 2012-01-31
    • 2012-05-10
    • 1970-01-01
    • 1970-01-01
    • 2020-09-07
    • 2015-11-02
    • 2022-10-26
    相关资源
    最近更新 更多