Windows上编译OpenImageIO
这里使用的是OpenImageIO 1.1.11,要将OIIO解压到[工作目录]/openimageio/oiio里面。
先要给OIIO打一个patch,patch文件是Blender提供的:
下载OpenImageIO 1.1.11 Windows Patch
打好patch以后,对于Debug,在[工作目录]/openimageio创建如下bat文件并用Visual Studio 2008命令行运行:
@Echo off
cd oiio
set LIBDIR=%CD%\..\..
:: create build directory
mkdir build\windows_debug
cd build\windows_debug
cmake -G "NMake Makefiles" ..\..\src ^
-DCMAKE_INSTALL_PREFIX=%LIBDIR%\openimageio\debug ^
-DILMBASE_INCLUDE_DIR=%LIBDIR%\openexr\include ^
-DILMBASE_HALF_LIBRARIES=%LIBDIR%\openexr\lib\Half_d.lib ^
-DILMBASE_IMATH_LIBRARIES=%LIBDIR%\openexr\lib\Imath_d.lib ^
-DILMBASE_ILMTHREAD_LIBRARIES=%LIBDIR%\openexr\lib\IlmThread_d.lib ^
-DILMBASE_IEX_LIBRARIES=%LIBDIR%\openexr\lib\Iex_d.lib ^
-DOPENEXR_INCLUDE_DIR=%LIBDIR%\openexr\include ^
-DOPENEXR_ILMIMF_LIBRARIES=%LIBDIR%\openexr\lib\IlmImf_d.lib ^
-DLINKSTATIC=ON ^
-DBUILDSTATIC=ON ^
-DBOOST_ROOT=%LIBDIR%\boost ^
-DBoost_USE_STATIC_RUNTIME=ON ^
-DZLIB_INCLUDE_DIR=%LIBDIR%\zlib\include ^
-DZLIB_LIBRARY=%LIBDIR%\zlib\lib\libz_d.lib ^
-DPNG_PNG_INCLUDE_DIR=%LIBDIR%\png\include ^
-DPNG_LIBRARY=%LIBDIR%\png\lib\libpng_d.lib ^
-DJPEG_INCLUDE_DIR=%LIBDIR%\jpeg\include ^
-DJPEG_LIBRARY=%LIBDIR%\jpeg\lib\libjpeg_d.lib ^
-DTIFF_INCLUDE_DIR=%LIBDIR%\tiff\include ^
-DTIFF_LIBRARY=%LIBDIR%\tiff\lib\libtiff_d.lib ^
-DUSE_OPENGL=OFF ^
-DUSE_TBB=OFF ^
-DUSE_FIELD3D=OFF ^
-DUSE_QT=OFF ^
-DUSE_PYTHON=OFF ^
-DCMAKE_BUILD_TYPE=Debug
nmake
nmake install
cd ..\..\..
对于Release使用如下bat文件:
@Echo off
cd oiio
set LIBDIR=%CD%\..\..
:: create build directory
mkdir build\windows
cd build\windows
cmake -G "NMake Makefiles" ..\..\src ^
-DCMAKE_INSTALL_PREFIX=%LIBDIR%\openimageio ^
-DILMBASE_INCLUDE_DIR=%LIBDIR%\openexr\include ^
-DILMBASE_HALF_LIBRARIES=%LIBDIR%\openexr\lib\Half.lib ^
-DILMBASE_IMATH_LIBRARIES=%LIBDIR%\openexr\lib\Imath.lib ^
-DILMBASE_ILMTHREAD_LIBRARIES=%LIBDIR%\openexr\lib\IlmThread.lib ^
-DILMBASE_IEX_LIBRARIES=%LIBDIR%\openexr\lib\Iex.lib ^
-DOPENEXR_INCLUDE_DIR=%LIBDIR%\openexr\include ^
-DOPENEXR_ILMIMF_LIBRARIES=%LIBDIR%\openexr\lib\IlmImf.lib ^
-DLINKSTATIC=ON ^
-DBUILDSTATIC=ON ^
-DBOOST_ROOT=%LIBDIR%\boost ^
-DBoost_USE_STATIC_RUNTIME=ON ^
-DZLIB_INCLUDE_DIR=%LIBDIR%\zlib\include ^
-DZLIB_LIBRARY=%LIBDIR%\zlib\lib\libz.lib ^
-DPNG_PNG_INCLUDE_DIR=%LIBDIR%\png\include ^
-DPNG_LIBRARY=%LIBDIR%\png\lib\libpng.lib ^
-DJPEG_INCLUDE_DIR=%LIBDIR%\jpeg\include ^
-DJPEG_LIBRARY=%LIBDIR%\jpeg\lib\libjpeg.lib ^
-DTIFF_INCLUDE_DIR=%LIBDIR%\tiff\include ^
-DTIFF_LIBRARY=%LIBDIR%\tiff\lib\libtiff.lib ^
-DUSE_OPENGL=OFF ^
-DUSE_TBB=OFF ^
-DUSE_FIELD3D=OFF ^
-DUSE_QT=OFF ^
-DUSE_PYTHON=OFF ^
-DCMAKE_BUILD_TYPE=Release
nmake
nmake install
cd ..\..\..
Windows上编译OpenImageIO的更多相关文章
- 在Mac/Linux/Windows上编译corefx遇到的问题及解决方法
这两天尝试在Mac/Linux/Windows三大平台上编译.NET跨平台三驾马车(coreclr/corefx/dnx)之一的corefx(.NET Core Framework),结果三个平台的编 ...
- [ZZ] 在windows上编译Mesa3d opengl32库
在windows上编译Mesa3d opengl32库 cheungmine http://blog.csdn.net/ubuntu64fan/article/details/8061475 Mesa ...
- 利用openssl管理证书及SSL编程第2部分:在Windows上编译 openssl
利用openssl管理证书及SSL编程第2部分:在Windows上编译 openssl 首先mingw的环境搭建,务必遵循下文: http://blog.csdn.net/ubuntu64fan/ar ...
- 在windows上编译wireshark源代码
终于在windows上成功编译了wireshark源代码,个中酸辛,都是泪..只能说要多试! windows上编译wireshark共用到三个东西:wireshark源代码.python.cygwin ...
- 在windows 上编译部署Rap2
在windows 上编译部署Rap2 引言 安装需要的环境 安装后端站点 创建数据库 在全局安装pm2 和 typescript 配置mysql,redis 数据库链接配置 初始化 编译 初始化数据库 ...
- 在windows上编译MatConvNet
有个BT的要求,在windows上使用MatConvNet,并且需要支持GPU. 费了些力气,记录一下过程(暂不支持vl_imreadjpeg函数) 在这里下载MatConvNet,机器配置vs201 ...
- 如何在 Windows上编译Objective-C
Objective-C现在几乎已经变成了苹果的专利了,可以直接在苹果的Xcode上编译Objective-C程序,但是在Windows平台下的编译工具就寥寥无几了,本身这种语言用的人就不是很多.今天在 ...
- Windows 上编译 corefx 源码生成 Linux 上可用的 System.Data.SqlClient.dll
最近在排查一个奇怪的 EF Core 查询速度慢的问题,需要在 corefx 2.2.3 的 System.Data.SqlClient 源码中打点. github 上签出 corefx 的源代码,运 ...
- 在Windows上编译和调试CoreCLR
生成CoreCLR - Windows篇 本文的唯一目的就是让你运行Hello World 运行环境 Window 7+ Visual studio 2015 确保C++ 工具已经被安装,默认是不安装 ...
随机推荐
- 黑暗之光 Day3
1. 滚动窗口 Scroll View. GameObject itemGo = NGUITools.AddChild(grid.gameObject, skillItemPrefab); grid. ...
- Django restframework Token拥有不过期的认证
REST框架中的Token认证不像Session认证一样,它是没有办法设置过期时间的,但是有时我们需要对Token做过期验证,比如说用户在A设备登陆之后获取一个Token,如果用户在没有清空浏览器缓存 ...
- Open MSDN document directly without Visual Studio
"C:\Program Files (x86)\Microsoft Help Viewer\v2.2\HlpViewer.exe" /catalogName VisualStudi ...
- 在 Golang 中使用 Protobuf
wget https://github.com/google/protobuf/releases/download/v2.6.1/protobuf-2.6.1.tar.gztar zxvf proto ...
- json和jsonp的区别(转)
原文链接:http://www.cnblogs.com/dowinning/archive/2012/04/19/json-jsonp-jquery.html 前言: 说到AJAX就会不可避免的面临 ...
- C++——堆、栈、静态存储区
栈 堆 静态存储区 生命周期 函数结束即释放 new,malloc开辟,delete,free释放 释放前,一直存在 最长,程序退出才释放 程序.局部变量 new,malloc申请的空间,用于 ...
- swift新建类和子类方法的重写与重载
1.首先什么是重写与重载? 一.重写(override) override是重写(覆盖)了一个方法,以实现不同的功能.一般是用于子类在继承父类时,重写(重新实现)父类中的方法. 重写(覆盖)的规则: ...
- cannot launch node of type [arbotix_python/arbotix_driver]: arbotix_python
这个时候提示错误: ERROR: cannot launch node of type [arbotix_python/arbotix_driver]: arbotix_python ROS path ...
- 面向对象的JavaScript-005-Function.prototype.call()的3种作用
1. // call的3种作用 // 1.Using call to chain constructors for an object function Product(name, price) { ...
- jquery函数$.proxy简单示例
来自于<jquery 权威指南> ------------------------------ <!DOCTYPE html PUBLIC "-//W3C//DTD XHT ...