问题描述
我在 Visual Studio Community 2019 中使用 FLTK 库并且构建我的 x86 应用程序工作正常。现在,我想为 x64 构建它。但是,我收到错误“无法打开包含文件:'dirent.h':没有这样的文件或目录。”。
错误发生在名为“filename.H”的文件中。此头文件随 FLTK 库一起提供。
有没有人知道我该如何解决这个问题?
更新:
无法识别 dirent.h 库,因为它是一个 C POSIX 库,如下面的链接中所述。但是,问题仍然存在,即我该如何解决这个问题?
<dirent.h> in visual studio 2010 or 2008
上面的链接指的是带有替代 dirent.h 文件的链接。我试图在我的项目中包含这个文件,但是,现在发生了另一个错误。这些错误发生在文件 Fl_Native_File_Chooser.H 中。类型说明符 fl_OPENFILENAMEW 和 fl_broWSEINFOW 在此文件中未知。
解决方法
在 Windows 上,dirent.h 不应包含在 FLTK 代码中。即使是 64 位,在使用 FLTK 库 (https://www.fltk.org/doc-1.3/preface.html) 时也必须定义 WIN32。如果您在代码的开头定义 WIN32,或者在 Visual Studio 项目属性中添加 WIN32,那么您的问题可能会得到解决 - C/C++ - Preprocessor - Preprocessor Definitions,在 x64 平台。
,我创建 x64 解决方案的方式是
- 打开ide\VisualC2010\fltk.sln
- 如果您使用的是其他版本的 Visual Studio,请让它进行转换。
- 将解决方案配置更改为调试(不知何故,Visual Studio 始终默认为调试开罗)
- 点击解决方案平台并选择配置管理器
- 当配置管理器出现时,在活动解决方案平台下选择新建
- 出现下一个对话框时,在类型或选择新平台下选择x64
- 点击确定等关闭窗口
- 现在将解决方案平台更改为 x64 并开始构建。
您不应收到任何 dirent.h 错误。