Bugs in Windows build process


Nathan Weston <elb...@...>
 

After much struggle, I finally managed to get OCIO built on Windows, but there are several apparent bugs in the build process that require manual intervetion to work around.

I ran CMake from the Visual Studio 2008 command prompt (32-bit), with the following command line:
   cmake -D CMAKE_INSTALL_PREFIX=c:\ocio-em64t -D CMAKE_BUILD_TYPE=Release ^
         -D OCIO_BUILD_STATIC=OFF -D BOOST_ROOT=c:\boost_1_49_0  ^
         -D OCIO_BUILD_APPS=OFF -D OCIO_USE_BOOST_PTR=ON ^
         -D PYTHON_VERSION="2.6.5" -D PYTHON_LIB=C:/Python26/libs  ^
         -D PYTHON_INCLUDE=C:/Python26/include ^
     -D OCIO_LINK_PYGLUE=ON ^
         -G "NMake Makefiles" ..\

Bug #1: I have to specifiy OCIO_BUILD_STATIC here, otherwise it will build the static lib and the import lib at the same location -- the former overwrites the latter, which prevents me from linking with the DLL.

Bug #2: The build fails with "NMAKE : fatal error U1073: don't know how to make 'ext\dist\lib\libyaml-cppmd.lib'"

It turns out that yaml-cpp is built in debug mode, even though this is a release build. So libyaml-cppmdd.lib (note the extra 'd') exists, but the release version of the library (upon which OpenColorIO.dll depends) does not. I worked around this by building yaml-cpp separately and copying the correct lib into the build directory.

Bug #3: building the python bindings fails because PyDoc.h doesn't exist. I worked around this by running createPyDocH.py manually.

I'm afraid CMake is something of a mystery to me so I can't offer much help in the way of fixing these bugs. But if anyone has suggestions or proposed fixes, I'm happy to try them out.

- Nathan


Jeremy Selan <jeremy...@...>
 

We dont yet have a how to on the windows build process, though we
certainly would like to get one going!

(Are there any volunteers on the list to assist with this?) In the
long term, I think it would be preferable to include a windows
installer so that users dont have to build OCIO at all!

You should also know that Nuke 6.3v7 and above ship with OCIO (on all
platforms), so if you're only looking to experiment with OCIO, as a
Nuke user, you can just experiment with later versions.

-- Jeremy

On Sat, Dec 8, 2012 at 4:07 AM, <singha...@gmail.com> wrote:
It may occur silly to ask. do you have startup on how to build ocio for
windows. Does not matter if it gives a problem later...but a "how to start"
will greatly help,

what version of msvc should I go for. I want to first try for nuke 6.3v1.


On Thursday, May 31, 2012 12:02:09 AM UTC+5:30, Nathan Weston wrote:

After much struggle, I finally managed to get OCIO built on Windows, but
there are several apparent bugs in the build process that require manual
intervetion to work around.

I ran CMake from the Visual Studio 2008 command prompt (32-bit), with the
following command line:
cmake -D CMAKE_INSTALL_PREFIX=c:\ocio-em64t -D CMAKE_BUILD_TYPE=Release
^
-D OCIO_BUILD_STATIC=OFF -D BOOST_ROOT=c:\boost_1_49_0 ^
-D OCIO_BUILD_APPS=OFF -D OCIO_USE_BOOST_PTR=ON ^
-D PYTHON_VERSION="2.6.5" -D PYTHON_LIB=C:/Python26/libs ^
-D PYTHON_INCLUDE=C:/Python26/include ^
-D OCIO_LINK_PYGLUE=ON ^
-G "NMake Makefiles" ..\

Bug #1: I have to specifiy OCIO_BUILD_STATIC here, otherwise it will build
the static lib and the import lib at the same location -- the former
overwrites the latter, which prevents me from linking with the DLL.

Bug #2: The build fails with "NMAKE : fatal error U1073: don't know how to
make 'ext\dist\lib\libyaml-cppmd.lib'"

It turns out that yaml-cpp is built in debug mode, even though this is a
release build. So libyaml-cppmdd.lib (note the extra 'd') exists, but the
release version of the library (upon which OpenColorIO.dll depends) does
not. I worked around this by building yaml-cpp separately and copying the
correct lib into the build directory.

Bug #3: building the python bindings fails because PyDoc.h doesn't exist.
I worked around this by running createPyDocH.py manually.

I'm afraid CMake is something of a mystery to me so I can't offer much
help in the way of fixing these bugs. But if anyone has suggestions or
proposed fixes, I'm happy to try them out.

- Nathan
--


Andrew Britton <andrew.d...@...>
 

I'd be happy to assist. I don't a wealth of experience with compilers or porting from Mac but I'll be happy to assist and test. I can also help build an installer for Windows.

On Dec 10, 2012, at 8:27 AM, Jeremy Selan <jeremy...@gmail.com> wrote:

We dont yet have a how to on the windows build process, though we
certainly would like to get one going!

(Are there any volunteers on the list to assist with this?) In the
long term, I think it would be preferable to include a windows
installer so that users dont have to build OCIO at all!

You should also know that Nuke 6.3v7 and above ship with OCIO (on all
platforms), so if you're only looking to experiment with OCIO, as a
Nuke user, you can just experiment with later versions.

-- Jeremy

On Sat, Dec 8, 2012 at 4:07 AM, <singha...@gmail.com> wrote:
It may occur silly to ask. do you have startup on how to build ocio for
windows. Does not matter if it gives a problem later...but a "how to start"
will greatly help,

what version of msvc should I go for. I want to first try for nuke 6.3v1.


On Thursday, May 31, 2012 12:02:09 AM UTC+5:30, Nathan Weston wrote:

After much struggle, I finally managed to get OCIO built on Windows, but
there are several apparent bugs in the build process that require manual
intervetion to work around.

I ran CMake from the Visual Studio 2008 command prompt (32-bit), with the
following command line:
cmake -D CMAKE_INSTALL_PREFIX=c:\ocio-em64t -D CMAKE_BUILD_TYPE=Release
^
-D OCIO_BUILD_STATIC=OFF -D BOOST_ROOT=c:\boost_1_49_0 ^
-D OCIO_BUILD_APPS=OFF -D OCIO_USE_BOOST_PTR=ON ^
-D PYTHON_VERSION="2.6.5" -D PYTHON_LIB=C:/Python26/libs ^
-D PYTHON_INCLUDE=C:/Python26/include ^
-D OCIO_LINK_PYGLUE=ON ^
-G "NMake Makefiles" ..\

Bug #1: I have to specifiy OCIO_BUILD_STATIC here, otherwise it will build
the static lib and the import lib at the same location -- the former
overwrites the latter, which prevents me from linking with the DLL.

Bug #2: The build fails with "NMAKE : fatal error U1073: don't know how to
make 'ext\dist\lib\libyaml-cppmd.lib'"

It turns out that yaml-cpp is built in debug mode, even though this is a
release build. So libyaml-cppmdd.lib (note the extra 'd') exists, but the
release version of the library (upon which OpenColorIO.dll depends) does
not. I worked around this by building yaml-cpp separately and copying the
correct lib into the build directory.

Bug #3: building the python bindings fails because PyDoc.h doesn't exist.
I worked around this by running createPyDocH.py manually.

I'm afraid CMake is something of a mystery to me so I can't offer much
help in the way of fixing these bugs. But if anyone has suggestions or
proposed fixes, I'm happy to try them out.

- Nathan
--

--


Jeremy Selan <jeremy...@...>
 

Your help on a windows build/installer would be very much appreciated.
Thanks so much! Many smaller studios will forever be in your debt,
should you complete this quest successfully. :)

One of the items we're particularly interested in is getting a
pre-compiled ociobakelut working on windows, as part of the installer.
ociobakelut is required for maya / photoshop support, so I'd hate to
put it out there without the bakelut functionality. (We have found
csp(s) to work great with Maya).

-- Jeremy

On Mon, Dec 10, 2012 at 11:22 AM, Andrew Britton
<andrew.d...@gmail.com> wrote:
I'd be happy to assist. I don't a wealth of experience with compilers or porting from Mac but I'll be happy to assist and test. I can also help build an installer for Windows.


Marie Fétiveau <m...@...>
 

Hello !

Does Windows pre-compiled ociobakelut still interest you ?

I've just built static and dynamic libs, ociocheck and ociobakelut for win7 64 (msvc 2010 express).

I also have win32 binaries but they are pretty old (1.RC). Not very interesting...

++

Marie


On Wed, Dec 12, 2012 at 1:44 AM, Jeremy Selan <jeremy...@...> wrote:
One of the items we're particularly interested in is getting a
pre-compiled ociobakelut working on windows, as part of the installer.
 ociobakelut is required for maya / photoshop support, so I'd hate to
put it out there without the bakelut functionality. (We have found
csp(s) to work great with Maya).




Jeremy Selan <jeremy...@...>
 

Hi!

We're definitely interested in posting a pre-compiled windows binary.
(It's a very common request). If you can point me where to download
it (off-list), I will add it to the downloads section.

Thanks!

-- Jeremy

On Fri, Mar 8, 2013 at 6:53 AM, Marie Fétiveau <m...@mikrosimage.eu> wrote:
Hello !

Does Windows pre-compiled ociobakelut still interest you ?

I've just built static and dynamic libs, ociocheck and ociobakelut for win7
64 (msvc 2010 express).
Here.

I also have win32 binaries but they are pretty old (1.RC). Not very
interesting...

++

Marie

On Wed, Dec 12, 2012 at 1:44 AM, Jeremy Selan <jeremy...@gmail.com>
wrote:

One of the items we're particularly interested in is getting a
pre-compiled ociobakelut working on windows, as part of the installer.
ociobakelut is required for maya / photoshop support, so I'd hate to
put it out there without the bakelut functionality. (We have found
csp(s) to work great with Maya).



--
You received this message because you are subscribed to the Google Groups
"OpenColorIO Developers" group.
To unsubscribe from this group and stop receiving emails from it, send an
email to ocio-dev+u...@googlegroups.com.
For more options, visit https://groups.google.com/groups/opt_out.