【问题标题】:How to set up CHAI3D correctly with an SDL Project on Visual Studio 2013如何在 Visual Studio 2013 上使用 SDL 项目正确设置 CHAI3D
【发布时间】:2017-09-07 20:57:26
【问题描述】:

我目前正在开发一个使用以下库的项目: SDL2、SDL_ttf、SDL_image、SDL_mixer 和 CHAI3D。 单独使用库,代码在 VS2013 上完美运行。但是,当我尝试在同一个项目中使用这两个库时,会出现许多错误。我设法通过将它们的 include& lib 文件添加到 VC++ 目录来设置 SDL 库。我尝试将#include "chai3d.h" 添加到我放置在 chai3d-3.1.0\examples....\Project\c++files 下的这个项目中。返回:

致命错误 C1083:无法打开包含文件:'chai3d.h':没有这样的文件或目录

所以我将包含“chai3d.h”文件的文件夹的路径(../chai3d/src)添加到属性>配置属性>VC++目录>包含目录。这会跳转到以下 2 个错误:

致命错误 C1083:无法打开包含文件:'Eigen/Eigen':没有这样的文件或目录

我在 chai3d/external/(Eigen/Eigen) 下找到了这个文件,并将它添加到包含目录中,结果如下:

致命错误 C1083:无法打开包含文件:'GL/glew.h':没有这样的文件或目录

请注意,注释包含行或从外部文件夹添加路径可以解决 C1083,但会导致无法识别 chai3d 对象,例如 cHapticDeviceHandler。 这是我的部分日志:

错误 C2062:键入“float”意外错误 C2146

错误 C4430:缺少类型说明符 - 假定为 int。注意:C++ 不支持 default-int

错误 C2086: 'int cVector3d' : 重新定义参见 'cVector3d' 的声明

错误 C2143:语法错误:在 '&' 之前缺少 ','

错误 C2146:语法错误:缺少 ';'在标识符之前 'ch_computeForceSphere'

错误 C4430:缺少类型说明符 - 假定为 int。注意:C++ 不支持 default-int

错误 C2086:'int cVector3d':重新定义

错误 C2143:语法错误:在 '&' 之前缺少 ','...

我将非常感谢任何有关如何解决此问题的提示。

【问题讨论】:

    标签: c++ visual-studio-2013 sdl haptic-feedback


    【解决方案1】:

    所以我不确定同时使用这两个库(SDL 和 CHAI3D)是否有用,因为将它们组合起来以提供有用的代码似乎太复杂了。但是经过一些研究,我设法找到了方法:

    1. 首先,您需要设置一个 chai3d 项目,而不仅仅是使用示例文件夹中的一个,这可以按照此链接下的说明进行操作: CHAI3D: creating an application
    2. 然后您需要通过在“属性”>“配置属性”>“VC++ 目录”>“包含目录/库目录”下添加它们的 include&lib 文件,以通常的方式设置 SDL 库。

    3. 最后在 Properties>Linker>Input>Additional Dependencies 下添加依赖项,例如在 SDL2 的情况下,您将添加以下内容:

    SDL2.lib
    SDL2Main.lib
    

    尽量注意 SDL 路径以及是否需要:

     #include <SDL.h>
     or
     #include <SDL2/SDL.h>
    

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2019-09-10
      • 1970-01-01
      • 2015-09-24
      • 1970-01-01
      • 1970-01-01
      • 2019-02-05
      相关资源
      最近更新 更多