源起

  今天使用 IfcOpenShell的IfcConvert ,因为是开源的所以就想自己编译下,编译过程中遇到不少问题,因此记录下来

什么是IfcOpenShell?

IfcOpenShell是一个开源(LGPL)软件库,可帮助用户和软件开发人员使用IFC文件格式。

开始前的准备

   visual studio 2015,设置环境变量  参考
   git,设置环境变量 
   cmake,设置环境变量

  源码下载 https://github.com/IfcOpenShell/IfcOpenShell

1.执行脚本

  运行cmd脚本不是直接打开windows的cmd运行的,而是打开vs的cmd

  打开VS,工具——>外部工具

  命令是机器上的cmd的地址

  1. C:\Windows\System32\cmd.exe

  参数是vs的VsDevCmd.bat的地址

  1. /k "C:\Program Files (x86)\Microsoft Visual Studio 14.0\Common7\Tools\VsDevCmd.bat"

  初始目录

  1. D:\ifc\vs\IfcOpenShell\win

  根据实际路径修改

  点确定后,在工具栏就可以看到了

  打开刚才配置的 Command Prompt

  (1)运行脚本 build-deps

  1. build-deps.cmd "Visual Studio 14 2015 Win64" Debug

  说明:

  可能发生错误,大部分原因是网络情况不好库文件下载中断,多运行几遍,或者翻墙再执行

  (2)运行脚本 run-cmake.bat

  1. run-cmake.bat "Visual Studio 14 2015 Win64"

  默认为支持IFC2X3版本,如果需要IFC4版本

  1. run-cmake.bat "Visual Studio 14 2015 Win64" -DUSE_IFC4=

  说明:

    如果出现Looking for pthread.h - not found

    原因:build-dep命令下载了icu-58.2-vs2015,但未将其解压缩到deps-vs2015-x64-installed/icu。这导致run-cmake退出并出现有关UNICODE的错误

    解决:

      手动提取icu文件

        deps/icu-58.2-vs2015/include/unicode -> deps-vs2015-x64-installed/icu/include/unicode

        deps/icu-58.2-vs2015/lib64 -> deps-vs2015-x64-installed/icu/lib

  构建生成的文件写入了build-vs2015-x64中

2.编译

  IfcOpenShell.sln在build-vs2015-x64中,用VS2015打开

  编译

  编译后在 build-vs2015-x64/Debug 下

2.测试

  复制IfcConvert.exe到D:\ifc

  运行 IfcConvert cylinders.ifc cylinders.dae

  查看 cylinders.dae

注:

  上面生成的为Debug的,如果想生成Release的,步骤为

    (1)build-deps.cmd "Visual Studio 14 2015 Win64" Release

    (2)run-cmake.bat "Visual Studio 14 2015 Win64"

    (3)用VS2015打开IfcOpenShell.sln

    (4)生成

    

ifcopenshell在VS2015下的编译的更多相关文章

  1. 17 win7 sp1 x64/VS2015下配置creo4.0二次开发环境——调用了众多开源库(ceres-solver,PCL1.8.0,office 2016COM接口,MySql数据库等)

    0 引言 本次开发环境的配置是在综合考虑了开源库的版本.VS版本以及CREO4.0的版本,同时针对甲方需求选择了win7 sp1 x64系统. 配置的过程中遇到了形形色色的问题,但是一一解决了.通过这 ...

  2. VS2015下如何用编译、调试程序。

    VS2015下如何用编译.调试程序. (通过实践给出截图) 安装步骤: 下载安装网址[VS2015下载地址](http://www.ithome.com/html/win10/164028.htm) ...

  3. VS2015下编译64位GDAL总结

    使用VS2015编译最新的64位GDAL(最新gdal2.11),确实有一些问题,看来双方还是太新了,有点不兼容,特总结如下. 以前经常用的通过VisualStudio IDE进行编译的方式现在似乎不 ...

  4. Python3.7源码在windows(VS2015)下的编译和安装

    Python3.7源码在windows(VS2015)下的编译和安装 下载官方源码,使用vs2015(WIN10SDK),最python3.7.0的源码进行编译,编译出不同的版本(release,de ...

  5. Windows下PythonQt编译(vs2015+Qt5.11.2+PythonQt 3.2)

    后记: 由于自己low,没有下载罪行的python3.2导致编译上遇到种种问题,后文可以参考,建议看: <Windows7 VS2015 下编译 PythonQt3.2> https:// ...

  6. Windows下PythonQt编译(vs2015+Qt5.11.2+PythonQt 3.2)探索

    时间:2018年10月20日 笔者最近在做Qt方面的开发工作,需用到脚本程序对程序内部进行扩展,就很自然的想到了PythonQt,下面介绍PythonQt在Windows下的的安装编译心得,水平有限, ...

  7. vs2015下编译免费开源的jpeg库,ijg的jpeg.lib

    vs2015下编译免费开源的jpeg库,ijg的jpeg.lib 1. 去Independent JPEG Group官网www.ijg.org下载jpegsrc,我下载的版本是jpegsrc9c.z ...

  8. [libpng]CMake+VS2015下编译libpng,及使用小例

    编译前的工作 在编译libpng前,需要把zlib编译好,并加载到编译环境里. CMake + VS2015 下编译zlib,及使用小例 下载与解压 libpng的官网是 http://www.lib ...

  9. VS2015下OpenGL库的配置

    写在前面: 最近要用到OpenGL,光是在VS2015下配置就费了很大的劲,现在将我的成果直接贡献给大家,希望能为需要在VS2015下配置OpenGL的读者省去一些麻烦. 正文: 资源地址1:http ...

随机推荐

  1. wordpress角色权限汇总

    我们在用wordpress开发的时候有时候需要设置不同的用户组及权限,具体有哪些角色权限呢?随ytkah一起来看看吧.WordPress使用了角色的概念,旨在让站点所有者能够控制用户在站点中可以做什么 ...

  2. java 泛型 类型作为参量 Class<T> transform

    Class<T> transform T:作为类型,用于定义变量: transform:作为具体类的类:用于创建实例. 类型信息是脱敏的具体类: 可以使用class的具体功能: 不能使用具 ...

  3. maven 查看依赖树结构命令mvn dependency:tree

    使用maven 管理项目的依赖,可以使用如下命令查看依赖树结构: mvn dependency:tree 如下图是使用idea的终端执行命令的局部图: 也可以使用如下命令将输出定向到某个文件,这样就可 ...

  4. [Algorithm] 122. Best Time to Buy and Sell Stock II

    Previous one: https://www.cnblogs.com/Answer1215/p/11974453.html Say you have an array for which the ...

  5. python函数 | 三元运算

    三元运算符就是在赋值变量的时候,可以直接加判断,然后赋值 格式: [on_true] if [expression] else [on_false] 三元运算只适用于简单的if else判断,再多一层 ...

  6. Linux(Contos7)下使用SSH远程安装MySQL 8.0.17 完整笔记

    1. 使用putty 配置远程服务器连接,登录服务器. 由于没有指定下载包 使用 yum install mysql-server  提示 未指定包,如: 2. 因为甲骨文的收购了Mysql并且对My ...

  7. CCF 201909-5 城市规划

    试题编号: 201909-5 试题名称: 城市规划 时间限制: 3.0s 内存限制: 512.0MB 问题描述: 几乎是Gym102222G的原版,详解见上一篇博文 /* 贡献+树形dp+01背包 * ...

  8. python爬虫出现ProxyError: HTTPSConnectionPool错误

    在今天刚刚打开pycharm运行爬虫时,发现所有的爬虫都不能运行,会出现如下的错误: 错误出现的主要原因是;代理错误(其实自己根本没有设置代理) 解决方法: 在网上查阅了许多类似的错误解决方法,试过后 ...

  9. js使浏览器窗口最大化(适用于IE的方法)

    这里使用的方法是IE的私有特性,只能在IE中有效.主要是window.moveTo和 window.resizeTo方法.       效果和点击最大化按钮差不多,有一点区别.点击最大化按钮后,浏览器 ...

  10. Java编程思想之六访问权限控制

    访问控制(或隐藏具体实现)与"最初的实现并不恰当"有关. 访问权限控制的等级,从最大权限到最小权限依次为:public,protected,包访问权限(没有关键字)和private ...