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++ 工具已经被安装,默认是不安装 ...
随机推荐
- 转:devise使用
1.gem install devise 2.在gemfile中添加 gem 'devise' 3.bundle install 4.执行 rails generate devise:install ...
- 数据库,使用Druid 加密数据库密码
首先我们得下载一个druid-1.0.16.jar的包 其次键入命令 java -cp druid-1.0.16.jar com.alibaba.druid.filter.config.ConfigT ...
- <转>Linux环境进程间通信(五): 共享内存(下)
http://www.ibm.com/developerworks/cn/linux/l-ipc/part5/index2.html 系统调用mmap()通过映射一个普通文件实现共享内存.系统V则是通 ...
- TreeView绑定
) { return; } foreach (NodeInfo info in list) ...
- slf4j日志框架
- Nginx源码完全注释(3)ngx_list.h / ngx_list.c
列表头文件ngx_list.h #ifndef _NGX_LIST_H_INCLUDED_ #define _NGX_LIST_H_INCLUDED_ #include <ngx_config. ...
- 7-set用法详解
C++中set用法详解 转载 http://blog.csdn.net/yas12345678/article/details/52601454 C++ / set 更详细见:http://www.c ...
- 技术串讲 CAS 有用
CAS,全称为Compare and Swap,即比较-替换.假设有三个操作数:内存值V.旧的预期值A.要修改的值B,当且仅当预期值A和内存值V相同时,才会将内存值修改为B并返回true,否则什么都不 ...
- Maven详解【面试+工作】 各种安装 没用
1 Maven介绍1.1 项目开发中遇到的问题 1.都是同样的代码,为什么在我的机器上可以编译执行,而在他的机器上就不行? 2.为什么在我的机器上可以正常打包,而配置管理员却打不出来? 3.项目组加入 ...
- Auto Control 002 自动控制的数学模型
2016-9-27 20:20:08 还需要进行修改和完善.先这种理论性的博客不太好写,请大家见谅. 在上一篇博客中,我们重点了解了关于自动控制原理的一些基本概念 以及一些相关的术语,以及能够分析控制 ...