【Pycharm+OpenGL+assimp】Python环境下assimp的环境配置

【Pycharm+OpenGL+assimp】Python环境下assimp的环境配置

1. 环境介绍

pycharm2018.3.5+anaconda3+python3.7版本,因为要做三维模型的加载,所以在python中导入assimp三方库。

2.先在pycharm的设置菜单里面添加assimp试试

  • File->Setting->Project Interpreter->Available Packages
  • 【Pycharm+OpenGL+assimp】Python环境下assimp的环境配置_第1张图片
  • 选择settigs

【Pycharm+OpenGL+assimp】Python环境下assimp的环境配置_第2张图片

  • 按照上图中的步骤依次进行。选择Project Interpreter ,先选择自己的解释器(编译器),然后点击步骤4和步骤5.
  • 【Pycharm+OpenGL+assimp】Python环境下assimp的环境配置_第3张图片
  • 搜索assimp后,出来四个结果。我选择第二个assimp,然后点击Install Packages,一般情况下不会成功,肯定没有这么简单啊,不然也没必要写教程了,哈哈。
  • 依旧不死心,再尝试几次,还是报相同错误,只能另寻他路了。【Pycharm+OpenGL+assimp】Python环境下assimp的环境配置_第4张图片
  • 3.pip安装
    打开anaconda prompt,输入代码如下:
pip install assimp 

【Pycharm+OpenGL+assimp】Python环境下assimp的环境配置_第5张图片
图中显示安装成功,迫不及待的点开pycharm进行测试,输入代码:

import assimp

发现报错:

Traceback (most recent call last):
  File "E:/2018/formal/python/voxelisation/voxelisation.py", line 1, in <module>
    import pyassimp 
  File "C:\Python27\lib\site-packages\pyassimp\__init__.py", line 1, in <module>
    from .core import *
  File "C:\Python27\lib\site-packages\pyassimp\core.py", line 34, in <module>
    class AssimpLib(object):
  File "C:\Python27\lib\site-packages\pyassimp\core.py", line 38, in AssimpLib
    load, load_mem, export, release, dll = helper.search_library()
  File "C:\Python27\lib\site-packages\pyassimp\helper.py", line 233, in search_library
    raise AssimpError("assimp library not found")
pyassimp.errors.AssimpError: assimp library not found

不知道哪出了问题,百度一下,发现好多人遇到这个情况,按照别的教程说法是由于pyassimp需要调用已经生成好的dll等动态库文件,因此这里报出了找不到相应的库文件。

  • assimp源码+cmake

所以下一步就是assimp官网下载源码使用cmake进行编译。不知道cmake的清自行百度。assimp官网如下,选择最新的3.3.1下载。【Pycharm+OpenGL+assimp】Python环境下assimp的环境配置_第6张图片
【Pycharm+OpenGL+assimp】Python环境下assimp的环境配置_第7张图片
下载之后解压之后放在任意位置。然后下载cmake。【Pycharm+OpenGL+assimp】Python环境下assimp的环境配置_第8张图片
cmake下载时注意选择相应的版本,我选择安装64位的版本。cmake安装好之后打开是这样的界面。
【Pycharm+OpenGL+assimp】Python环境下assimp的环境配置_第9张图片
配置cmake
首先在 Where is the source code 中(也就是位置1),选择刚才下载的assimp的压缩包解压之后的位置。位置为包含 CMakeLists.txt 的文件夹。
【Pycharm+OpenGL+assimp】Python环境下assimp的环境配置_第10张图片
【Pycharm+OpenGL+assimp】Python环境下assimp的环境配置_第11张图片
选择上图中的目录位置即可。然后,在相同位置下新建一个 build 的文件夹,如下图所示。
【Pycharm+OpenGL+assimp】Python环境下assimp的环境配置_第12张图片
然后在 Where to build the binaries option 中(位置2),选择为刚才新建的 build 。
【Pycharm+OpenGL+assimp】Python环境下assimp的环境配置_第13张图片
选择好之后点击下面的configure,在弹出菜单中选择你自己电脑上安装的相应的vs。

我的电脑装的Visual Studio 是最新的2019版本,一般cmake不支持vs2019,所以我选择了好几个版本的vs之后都会报同样的错误。
【Pycharm+OpenGL+assimp】Python环境下assimp的环境配置_第14张图片
【Pycharm+OpenGL+assimp】Python环境下assimp的环境配置_第15张图片
报错如下,继续百度…

CMake Error at CMakeLists.txt:40 (PROJECT):
  Failed to run MSBuild command:

    MSBuild.exe

  to get the value of VCTargetsPath:

    系统找不到指定的文件。

直接上图:【Pycharm+OpenGL+assimp】Python环境下assimp的环境配置_第16张图片
那估计就是vs版本不合适了,我接着又下载了一个2017版本的vs,重复了一遍上面的步骤,很绝望地发现居然还报错,还是相同的问题,没办法,我只能在我同学的电脑上试了一下(她的上面装的是vs2013版本),操作之后选择2013版本的vs,点击configure,居然成了。大概就是下面这个图这个样子,因为别人的电脑,忘记截图了。
【Pycharm+OpenGL+assimp】Python环境下assimp的环境配置_第17张图片
然后进入刚才新建的 build 文件夹,找到 assimp.sln, 双击打开。
【Pycharm+OpenGL+assimp】Python环境下assimp的环境配置_第18张图片
在vs里面生成解决方案,点击 Build Solution。经过一段时间的执行,在D:\assimp-3.3.1\build\code\Debug中查看是否有以下几个文件。如果能找到 dll 和 lib 文件,就表明配置成功了。然后把这两个文件复制到pycharm中安装好的assimp文件夹下即可。【Pycharm+OpenGL+assimp】Python环境下assimp的环境配置_第19张图片
查看pycharm环境下安装的assimp在哪里,在pycharm设置里面看路径。【Pycharm+OpenGL+assimp】Python环境下assimp的环境配置_第20张图片
我的路径如下:
在这里插入图片描述
把生成的lib和dll文件复制进来。
【Pycharm+OpenGL+assimp】Python环境下assimp的环境配置_第21张图片
最后,在pycharm下测试,新建py文件,输入:import assimp。奔溃了,依旧报相同的错误。

最后依旧不死心,在anaconda prompt 中把assimp卸载了,重新安装一遍,测试后import assimp不报错。

你可能感兴趣的:(【Pycharm+OpenGL+assimp】Python环境下assimp的环境配置)