将OSL 1.3.0解压到[工作目录]/osl/OpenShadingLanguage

对Debug使用如下bat生成项目文件:

@Echo off

cd OpenShadingLanguage

set LIBDIR=%CD%\..\..

:: create build directory
mkdir build\windows_debug
cd build\windows_debug

cmake -G "Visual Studio 9 2008" ..\..\src ^
-DCMAKE_INSTALL_PREFIX=%LIBDIR%\osl\debug ^
-DCMAKE_CXX_FLAGS_DEBUG="/D_DEBUG /MTd /Zi /Ob0 /Od /RTC1" ^
-DCMAKE_CXX_FLAGS_MINSIZEREL="/MT /O1 /Ob1 /D NDEBUG" ^
-DCMAKE_CXX_FLAGS_RELEASE="/MT /O2 /Ob2 /D NDEBUG" ^
-DCMAKE_CXX_FLAGS_RELWITHDEBINFO="/MT /Zi /O2 /Ob1 /D NDEBUG" ^
-DCMAKE_CXX_STANDARD_LIBRARIES:STRING="kernel32.lib user32.lib gdi32.lib winspool.lib shell32.lib ole32.lib oleaut32.lib uuid.lib comdlg32.lib advapi32.lib psapi.lib" ^
-DBUILDSTATIC=ON ^
-DILMBASE_HOME=%LIBDIR%\openexr ^
-DOPENIMAGEIOHOME=%LIBDIR%\openimageio ^
-DOPENIMAGEIO_LIBRARY=%LIBDIR%/openimageio/lib/OpenImageIO_d.lib;%LIBDIR%/png/lib/libpng_d.lib;%LIBDIR%/jpeg/lib/libjpeg_d.lib;%LIBDIR%/tiff/lib/libtiff_d.lib;%LIBDIR%/openexr/lib/Half_d.lib;%LIBDIR%/openexr/lib/Imath_d.lib;%LIBDIR%/openexr/lib/IlmImf_d.lib;%LIBDIR%/openexr/lib/Iex_d.lib;%LIBDIR%/openexr/lib/IlmThread_d.lib ^
-DBOOST_ROOT=%LIBDIR%\boost ^
-DBoost_USE_STATIC_LIBS=ON ^
-DBoost_USE_STATIC_RUNTIME=ON ^
-DZLIB_INCLUDE_DIR=%LIBDIR%\zlib\include ^
-DZLIB_LIBRARY=%LIBDIR%\zlib\lib\libz_d.lib ^
-DUSE_TBB=OFF ^
-DFLEX_EXECUTABLE=%LIBDIR%\osl\flex_bison\bin\win_flex.exe ^
-DBISON_EXECUTABLE=%LIBDIR%\osl\flex_bison\bin\win_bison.exe ^
-DLLVM_DIRECTORY=%LIBDIR%\llvm\debug ^
-DLLVM_INCLUDES=%LIBDIR%\llvm\debug\include ^
-DLLVM_LIB_DIR=%LIBDIR%\llvm\debug\lib ^
-DLLVM_VERSION=3.2 ^
-DLLVM_LIBRARY=%LIBDIR%\llvm\debug\lib\LLVMAnalysis.lib;%LIBDIR%\llvm\debug\lib\LLVMArchive.lib;%LIBDIR%\llvm\debug\lib\LLVMAsmParser.lib;%LIBDIR%\llvm\debug\lib\LLVMAsmPrinter.lib;%LIBDIR%\llvm\debug\lib\LLVMBitReader.lib;%LIBDIR%\llvm\debug\lib\LLVMBitWriter.lib;%LIBDIR%\llvm\debug\lib\LLVMCodeGen.lib;%LIBDIR%\llvm\debug\lib\LLVMCore.lib;%LIBDIR%\llvm\debug\lib\LLVMDebugInfo.lib;%LIBDIR%\llvm\debug\lib\LLVMExecutionEngine.lib;%LIBDIR%\llvm\debug\lib\LLVMInstCombine.lib;%LIBDIR%\llvm\debug\lib\LLVMInstrumentation.lib;%LIBDIR%\llvm\debug\lib\LLVMInterpreter.lib;%LIBDIR%\llvm\debug\lib\LLVMJIT.lib;%LIBDIR%\llvm\debug\lib\LLVMLinker.lib;%LIBDIR%\llvm\debug\lib\LLVMMC.lib;%LIBDIR%\llvm\debug\lib\LLVMMCDisassembler.lib;%LIBDIR%\llvm\debug\lib\LLVMMCJIT.lib;%LIBDIR%\llvm\debug\lib\LLVMMCParser.lib;%LIBDIR%\llvm\debug\lib\LLVMObject.lib;%LIBDIR%\llvm\debug\lib\LLVMRuntimeDyld.lib;%LIBDIR%\llvm\debug\lib\LLVMScalarOpts.lib;%LIBDIR%\llvm\debug\lib\LLVMSelectionDAG.lib;%LIBDIR%\llvm\debug\lib\LLVMSupport.lib;%LIBDIR%\llvm\debug\lib\LLVMTableGen.lib;%LIBDIR%\llvm\debug\lib\LLVMTarget.lib;%LIBDIR%\llvm\debug\lib\LLVMTransformUtils.lib;%LIBDIR%\llvm\debug\lib\LLVMVectorize.lib;%LIBDIR%\llvm\debug\lib\LLVMX86AsmParser.lib;%LIBDIR%\llvm\debug\lib\LLVMX86AsmPrinter.lib;%LIBDIR%\llvm\debug\lib\LLVMX86CodeGen.lib;%LIBDIR%\llvm\debug\lib\LLVMX86Desc.lib;%LIBDIR%\llvm\debug\lib\LLVMX86Disassembler.lib;%LIBDIR%\llvm\debug\lib\LLVMX86Info.lib;%LIBDIR%\llvm\debug\lib\LLVMX86Utils.lib;%LIBDIR%\llvm\debug\lib\LLVMipa.lib;%LIBDIR%\llvm\debug\lib\LLVMipo.lib

cd ..\..\..

对Release使用:

@Echo off

cd OpenShadingLanguage

set LIBDIR=%CD%\..\..

:: create build directory
mkdir build\windows
cd build\windows

cmake -G "Visual Studio 9 2008" ..\..\src ^
-DCMAKE_INSTALL_PREFIX=%LIBDIR%\osl\release ^
-DCMAKE_CXX_FLAGS_DEBUG="/D_DEBUG /MTd /Zi /Ob0 /Od /RTC1" ^
-DCMAKE_CXX_FLAGS_MINSIZEREL="/MT /O1 /Ob1 /D NDEBUG" ^
-DCMAKE_CXX_FLAGS_RELEASE="/MT /O2 /Ob2 /D NDEBUG" ^
-DCMAKE_CXX_FLAGS_RELWITHDEBINFO="/MT /Zi /O2 /Ob1 /D NDEBUG" ^
-DCMAKE_CXX_STANDARD_LIBRARIES:STRING="kernel32.lib user32.lib gdi32.lib winspool.lib shell32.lib ole32.lib oleaut32.lib uuid.lib comdlg32.lib advapi32.lib psapi.lib" ^
-DBUILDSTATIC=ON ^
-DILMBASE_HOME=%LIBDIR%\openexr ^
-DOPENIMAGEIOHOME=%LIBDIR%\openimageio ^
-DOPENIMAGEIO_LIBRARY=%LIBDIR%/openimageio/lib/OpenImageIO.lib;%LIBDIR%/png/lib/libpng.lib;%LIBDIR%/jpeg/lib/libjpeg.lib;%LIBDIR%/tiff/lib/libtiff.lib;%LIBDIR%/openexr/lib/Half.lib;%LIBDIR%/openexr/lib/Imath.lib;%LIBDIR%/openexr/lib/IlmImf.lib;%LIBDIR%/openexr/lib/Iex.lib;%LIBDIR%/openexr/lib/IlmThread.lib ^
-DBOOST_ROOT=%LIBDIR%\boost ^
-DBoost_USE_STATIC_LIBS=ON ^
-DBoost_USE_STATIC_RUNTIME=ON ^
-DZLIB_INCLUDE_DIR=%LIBDIR%\zlib\include ^
-DZLIB_LIBRARY=%LIBDIR%\zlib\lib\libz.lib ^
-DUSE_TBB=OFF ^
-DFLEX_EXECUTABLE=%LIBDIR%\osl\flex_bison\bin\win_flex.exe ^
-DBISON_EXECUTABLE=%LIBDIR%\osl\flex_bison\bin\win_bison.exe ^
-DLLVM_DIRECTORY=%LIBDIR%\llvm ^
-DLLVM_INCLUDES=%LIBDIR%\llvm\include ^
-DLLVM_LIB_DIR=%LIBDIR%\llvm\lib ^
-DLLVM_VERSION=3.2 ^
-DLLVM_LIBRARY=%LIBDIR%\llvm\lib\LLVMAnalysis.lib;%LIBDIR%\llvm\lib\LLVMArchive.lib;%LIBDIR%\llvm\lib\LLVMAsmParser.lib;%LIBDIR%\llvm\lib\LLVMAsmPrinter.lib;%LIBDIR%\llvm\lib\LLVMBitReader.lib;%LIBDIR%\llvm\lib\LLVMBitWriter.lib;%LIBDIR%\llvm\lib\LLVMCodeGen.lib;%LIBDIR%\llvm\lib\LLVMCore.lib;%LIBDIR%\llvm\lib\LLVMDebugInfo.lib;%LIBDIR%\llvm\lib\LLVMExecutionEngine.lib;%LIBDIR%\llvm\lib\LLVMInstCombine.lib;%LIBDIR%\llvm\lib\LLVMInstrumentation.lib;%LIBDIR%\llvm\lib\LLVMInterpreter.lib;%LIBDIR%\llvm\lib\LLVMJIT.lib;%LIBDIR%\llvm\lib\LLVMLinker.lib;%LIBDIR%\llvm\lib\LLVMMC.lib;%LIBDIR%\llvm\lib\LLVMMCDisassembler.lib;%LIBDIR%\llvm\lib\LLVMMCJIT.lib;%LIBDIR%\llvm\lib\LLVMMCParser.lib;%LIBDIR%\llvm\lib\LLVMObject.lib;%LIBDIR%\llvm\lib\LLVMRuntimeDyld.lib;%LIBDIR%\llvm\lib\LLVMScalarOpts.lib;%LIBDIR%\llvm\lib\LLVMSelectionDAG.lib;%LIBDIR%\llvm\lib\LLVMSupport.lib;%LIBDIR%\llvm\lib\LLVMTableGen.lib;%LIBDIR%\llvm\lib\LLVMTarget.lib;%LIBDIR%\llvm\lib\LLVMTransformUtils.lib;%LIBDIR%\llvm\lib\LLVMVectorize.lib;%LIBDIR%\llvm\lib\LLVMX86AsmParser.lib;%LIBDIR%\llvm\lib\LLVMX86AsmPrinter.lib;%LIBDIR%\llvm\lib\LLVMX86CodeGen.lib;%LIBDIR%\llvm\lib\LLVMX86Desc.lib;%LIBDIR%\llvm\lib\LLVMX86Disassembler.lib;%LIBDIR%\llvm\lib\LLVMX86Info.lib;%LIBDIR%\llvm\lib\LLVMX86Utils.lib;%LIBDIR%\llvm\lib\LLVMipa.lib;%LIBDIR%\llvm\lib\LLVMipo.lib

cd ..\..\..

然后打开对应的项目文件,编译。

Windows上编译OpenShadingLanguage的更多相关文章

  1. 在Mac/Linux/Windows上编译corefx遇到的问题及解决方法

    这两天尝试在Mac/Linux/Windows三大平台上编译.NET跨平台三驾马车(coreclr/corefx/dnx)之一的corefx(.NET Core Framework),结果三个平台的编 ...

  2. [ZZ] 在windows上编译Mesa3d opengl32库

    在windows上编译Mesa3d opengl32库 cheungmine http://blog.csdn.net/ubuntu64fan/article/details/8061475 Mesa ...

  3. 利用openssl管理证书及SSL编程第2部分:在Windows上编译 openssl

    利用openssl管理证书及SSL编程第2部分:在Windows上编译 openssl 首先mingw的环境搭建,务必遵循下文: http://blog.csdn.net/ubuntu64fan/ar ...

  4. 在windows上编译wireshark源代码

    终于在windows上成功编译了wireshark源代码,个中酸辛,都是泪..只能说要多试! windows上编译wireshark共用到三个东西:wireshark源代码.python.cygwin ...

  5. 在windows 上编译部署Rap2

    在windows 上编译部署Rap2 引言 安装需要的环境 安装后端站点 创建数据库 在全局安装pm2 和 typescript 配置mysql,redis 数据库链接配置 初始化 编译 初始化数据库 ...

  6. 在windows上编译MatConvNet

    有个BT的要求,在windows上使用MatConvNet,并且需要支持GPU. 费了些力气,记录一下过程(暂不支持vl_imreadjpeg函数) 在这里下载MatConvNet,机器配置vs201 ...

  7. 如何在 Windows上编译Objective-C

    Objective-C现在几乎已经变成了苹果的专利了,可以直接在苹果的Xcode上编译Objective-C程序,但是在Windows平台下的编译工具就寥寥无几了,本身这种语言用的人就不是很多.今天在 ...

  8. Windows 上编译 corefx 源码生成 Linux 上可用的 System.Data.SqlClient.dll

    最近在排查一个奇怪的 EF Core 查询速度慢的问题,需要在 corefx 2.2.3 的 System.Data.SqlClient 源码中打点. github 上签出 corefx 的源代码,运 ...

  9. 在Windows上编译和调试CoreCLR

    生成CoreCLR - Windows篇 本文的唯一目的就是让你运行Hello World 运行环境 Window 7+ Visual studio 2015 确保C++ 工具已经被安装,默认是不安装 ...

随机推荐

  1. YUV图像合成原理<转>

    YUV图像合成原理 引言:在视频监控中最常用的就是图像拼接和字符叠加,25FPS的视频流,如果每隔40MS就从各个通道中取一幅图像来合成,则可以看到一个实时的合成视频.合成的过程也就是原始图像的拼接. ...

  2. (转)libvirt 部分API 介绍

    感谢朋友支持本博客,欢迎共同探讨交流,由于能力和时间有限,错误之处在所难免,欢迎指正! 如果转载,请保留作者信息. 博客地址:http://blog.csdn.net/qq_21398167 原博文地 ...

  3. 【原】Mac下统计任意文件夹中代码行数的工

    [链接][原]Mac下统计任意文件夹中代码行数的工http://www.cnblogs.com/wengzilin/p/4580646.html

  4. mysql5.6配置semi_sync

    测试环境:Red Hat Enterprise Linux Server release 6.3 (Santiago)Server version: 5.6.22-log MySQL Communit ...

  5. 无法查找或打开 PDB 文件解决办法

    用VS调试程序时,有时会在VS底部的“输出”框中提示“无法查找或打开 PDB 文件”.这该怎么解决呢? 下面,我们以VS2013为例,来教大家解决办法. 工具/原料 VS 方法/步骤   打开VS20 ...

  6. windows 查看端口被占用进程

    查看占用63243是谁 C:\Users\Administrator>netstat -aon|findstr "63243" TCP 172.27.33.11:63243 ...

  7. if-return 语句

    if(A > B): return A+1 return A-1 or if(A > B): return A+1 else: return A-1 +++++++++++++++++++ ...

  8. [随笔]CENTOS7更换YUM源为163源(记录一下以防忘记)

    2016年2月16日,最新163源变更后的更新方法: 访问地址为:http://mirrors.163.com/.help/centos.html 首先备份源: mv /etc/yum.repos.d ...

  9. MYSQL隐式类型转换

    MYSQL隐式类型转换 关于官方文档中的理解大致是: 如果两个参数比较,有至少一个NULL,结果就是NULL,除了是用NULL<=>NULL 会返回1.不做类型转换 两个参数都是字符串,按 ...

  10. kcp源码segment头文件各字段含义

    conv conv为一个表示会话编号的整数,和tcp的 conv一样,通信双// 方需保证 conv相同,相互的数据包才能够被认可 cmd             cmd用来区分分片的作用.IKCP_ ...