无法构建开放资产导入库(Assimp)

时间:2013-01-29 23:55:02

标签: opengl build import cmake shared-libraries

我刚刚下载了Open Asset Import Library(Assimp),这是一个用于将.3DS和.Obj等3D文件格式导入源代码的API。这样做可以更容易地使用openGL渲染网格。

问题是,我无法建立库。它有关于如何构建它以及连接到编译器(如XCode(我正在使用))的非常模糊和含糊的指示。它说我应该使用一个名为CMake的程序来构建库。我已经下载了CMake并试图使用它,但它还没有为我工作。

有没有人使用CMake或其他工具成功构建和安装Assimp?

2 个答案:

答案 0 :(得分:8)

我完全同意Mac的文档有点缺乏,但我已经管理(经过几次尝试)来构建和安装库。

启动前的一些事项:确保已安装XCode命令行工具(安装GNU编译器)。 这些是我遵循的步骤:

  1. 下载最新版本的Assimp并解压缩(我收到了文件 从这里开始,仅限来源: http://sourceforge.net/projects/assimp/files/assimp-3.0/
  2. 如果您没有,请安装CMake(http://www.cmake.org/cmake/resources/software.html;我目前正在使用旧版本,但最新版本也可以正常使用)
  3. 创建一个构建目录(应该在源目录之外)
  4. 打开CMake并将其指向您在步骤1中创建的文件夹(其中显示“源代码在哪里”);另一个文件夹(“在何处构建二进制文件”)应指向在步骤3中创建的文件夹
  5. 点击底部的“配置”;它会询问您想要使用哪种环境。我选择了“Eclipse CDT 4 - Unix Makefiles”
  6. 你应该得到一个选项列表;我选择的两个是“BUILD_STATIC_LIB”和“ENABLE_BOOST_WORKAROUND”
  7. 点击“生成”
  8. 现在您应该转到终端并转到步骤3中创建的文件夹
  9. 输入“make”并启动它;你应该看到构建进展没有问题
  10. 构建完成后,输入“sudo make install”;它将要求您输入密码并安装库
  11. 在最后一步之后,您应该能够在代码中包含该库:

    #include <assimp/cimport.h>
    #include <assimp/scene.h>
    #include <assimp/postprocess.h>
    

    确保您还包含用于链接的库;链接时,您应该将-lassimp添加到列表

    如果您对上述步骤有任何疑问,请与我们联系!

答案 1 :(得分:0)

我有一种稍微不同的方法,它适用于我在 Mac 上构建 assimp。如果对任何人有帮助,以下是我采取的步骤。

第 1 步 - 使用 Homebrew 安装库

brew install glm glew assimp

第 2 步 - 使用以下内容更新我的 CMake

FIND_PACKAGE(ASSIMP REQUIRED)
LINK_DIRECTORIES(/usr/local/lib)

add_executable(
    myExecutable
    ...
)

TARGET_LINK_LIBRARIES( myExecutable PRIVATE ${ASSIMP_LIBRARIES} )