Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Cmake fails to build OpenEXR on Win64 with VS2017 communityEdition #585

Closed
PixelPartner opened this issue Aug 9, 2018 · 16 comments
Closed

Comments

@PixelPartner
Copy link

PixelPartner commented Aug 9, 2018

Description of Issue

cmake fails to create IlmImf*.dll after reporting many compile warning but no error that might help.
See log.txt at the end ...

System Information (OS, Hardware)

Win 8.1 Pro (x64)
Visual Studio 2017 community edition (ver 15.7.6)
Native Tools Command Prompt for VS2017 (x64) as Admin
cl (ver 19.14.26433) for x64

Branch

Using dev branch from 8/8/18 to be able to use VS2017.

Package Versions

All default dependency packages.
Tried OpenEXR 2.2.0 and its security patch 2.2.1

NASM (2.14rc15)
Python (2.7.15) (x64)
PySide (1.2.4)
PyOpenGL (3.1.0)

Build Settings

C:\Users\tkumlehn\source\repos>python USD\build_scripts\build_usd.py "C:\Program
 Files\USD"

Building with settings:
  USD source directory          C:\Users\tkumlehn\source\repos\USD
  USD install directory         C:\Program Files\USD
  3rd-party source directory    C:\Program Files\USD\src
  3rd-party install directory   C:\Program Files\USD
  Build directory               C:\Program Files\USD\build
  CMake generator               Default
  Downloader                    powershell

  Building                      Shared libraries
    Imaging                     On
      Ptex support:             Off
      OpenImageIO support:      Off
    UsdImaging                  On
      usdview:                  On
    Python support              On
    Documentation               Off
    Tests                       Off
    Alembic Plugin              Off
      HDF5 support:             Off
    MaterialX Plugin            Off
    Maya Plugin                 Off
    Katana Plugin               Off
    Houdini Plugin              Off

  Dependencies                  [done: zlib, boost, TBB,] OpenEXR, GLEW, OpenSubdiv

Error Log

2018-08-09 10:15
cmake -DCMAKE_INSTALL_PREFIX="C:\Program Files\USD" -DCMAKE_PREFIX_PATH="C:\Program Files\USD" -G "Visual Studio 15 2017 Win64" -DILMBASE_PACKAGE_PREFIX="C:\Program Files\USD" "C:\Program Files\USD\src\openexr-2.2.0\OpenEXR"
ILMBASE_PACKAGE_PREFIX = C:\Program Files\USD
-- Configuring done
-- Generating done
-- Build files have been written to: C:/Program Files/USD/build/OpenEXR
2018-08-09 10:15
cmake --build . --config Release --target install -- /M:24
Microsoft (R) Build Engine version 15.7.180.61344 for .NET Framework

Copyright (C) Microsoft Corporation. All rights reserved.

Build started 8/9/2018 10:15:56 AM.

 1>Project "C:\Program Files\USD\build\OpenEXR\install.vcxproj" on node 1 (default targets).
 1>Project "C:\Program Files\USD\build\OpenEXR\install.vcxproj" (1) is building "C:\Program Files\USD\build\OpenEXR\ZERO_CHECK.vcxproj" (3) on node 1 (default targets).
 3>InitializeBuildStatus:
     Creating "x64\Release\ZERO_CHECK\ZERO_CHECK.tlog\unsuccessfulbuild" because "AlwaysCreate" was specified.
   CustomBuild:
     All outputs are up-to-date.
   FinalizeBuildStatus:
     Deleting file "x64\Release\ZERO_CHECK\ZERO_CHECK.tlog\unsuccessfulbuild".
     Touching "x64\Release\ZERO_CHECK\ZERO_CHECK.tlog\ZERO_CHECK.lastbuildstate".
 3>Done Building Project "C:\Program Files\USD\build\OpenEXR\ZERO_CHECK.vcxproj" (default targets).
 1>Project "C:\Program Files\USD\build\OpenEXR\install.vcxproj" (1) is building "C:\Program Files\USD\build\OpenEXR\ALL_BUILD.vcxproj" (2) on node 2 (default targets).
 2>Project "C:\Program Files\USD\build\OpenEXR\ALL_BUILD.vcxproj" (2) is building "C:\Program Files\USD\build\OpenEXR\IlmImf\dwaLookups.vcxproj" (7) on node 9 (default targets).
 7>InitializeBuildStatus:
     Creating "dwaLookups.dir\Release\dwaLookups.tlog\unsuccessfulbuild" because "AlwaysCreate" was specified.
   CustomBuild:
     All outputs are up-to-date.
 2>Project "C:\Program Files\USD\build\OpenEXR\ALL_BUILD.vcxproj" (2) is building "C:\Program Files\USD\build\OpenEXR\IlmImf\b44ExpLogTable.vcxproj" (6) on node 8 (default targets).
 6>InitializeBuildStatus:
     Creating "b44ExpLogTable.dir\Release\b44ExpLogTable.tlog\unsuccessfulbuild" because "AlwaysCreate" was specified.
   CustomBuild:
     All outputs are up-to-date.
   ClCompile:
     All outputs are up-to-date.
 7>ClCompile:
     C:\Program Files (x86)\Microsoft Visual Studio\2017\Community\VC\Tools\MSVC\14.14.26428\bin\HostX86\x64\CL.exe /c /I"C:\Program Files\USD\build\OpenEXR\IlmImf" /I"C:\Program Files\USD\src\openexr-2.2.0\OpenEXR\IlmImf" /I"C:\Program Files\USD\build\OpenEXR\config" /I"C:\Program Files\USD\src\openexr-2.2.0\OpenEXR\IlmImfUtil" /I"C:\Program Files\USD\src\openexr-2.2.0\OpenEXR\exrmaketiled" /I"C:\Program Files\USD\src\openexr-2.2.0\OpenEXR\exrenvmap" /I"C:\Program Files\USD\src\openexr-2.2.0\OpenEXR\exrmakepreview" /I"C:\Program Files\USD\src\openexr-2.2.0\OpenEXR\exrmultiview" /I"C:\Program Files\USD\src\openexr-2.2.0\OpenEXR\IlmImfFuzzTest" /I"C:\Program Files\USD\include" /I"C:\Program Files\USD\include\OpenEXR" /nologo /W3 /WX- /diagnostics:classic /O2 /Ob2 /D WIN32 /D _WINDOWS /D NDEBUG /D HAVE_CONFIG_H /D "ILM_IMF_TEST_IMAGEDIR=\"C:/Program Files/USD/src/openexr-2.2.0/OpenEXR/IlmImfTest/\"" /D OPENEXR_DLL /D ILMIMF_EXPORTS /D "CMAKE_INTDIR=\"Release\"" /D _MBCS /Gm- /EHsc /MD /GS /fp:precise /Zc:wchar_t /Zc:forScope /Zc:inline /GR /Fo"dwaLookups.dir\Release\\" /Fd"dwaLookups.dir\Release\vc141.pdb" /Gd /TP /FC /errorReport:queue "C:\Program Files\USD\src\openexr-2.2.0\OpenEXR\IlmImf\dwaLookups.cpp"
     dwaLookups.cpp
 6>Link:
     All outputs are up-to-date.
     b44ExpLogTable.vcxproj -> C:\Program Files\USD\build\OpenEXR\IlmImf\Release\b44ExpLogTable.exe
   FinalizeBuildStatus:
     Deleting file "b44ExpLogTable.dir\Release\b44ExpLogTable.tlog\unsuccessfulbuild".
     Touching "b44ExpLogTable.dir\Release\b44ExpLogTable.tlog\b44ExpLogTable.lastbuildstate".
 6>Done Building Project "C:\Program Files\USD\build\OpenEXR\IlmImf\b44ExpLogTable.vcxproj" (default targets).
 7>c:\program files\usd\src\openexr-2.2.0\openexr\ilmimf\imfio.h(147): warning C4251: 'Imf_2_2::IStream::_fileName': class 'std::basic_string<char,std::char_traits<char>,std::allocator<char>>' needs to have dll-interface to be used by clients of class 'Imf_2_2::IStream' [C:\Program Files\USD\build\OpenEXR\IlmImf\dwaLookups.vcxproj]
     c:\program files (x86)\microsoft visual studio\2017\community\vc\tools\msvc\14.14.26428\include\xstring(4347): note: see declaration of 'std::basic_string<char,std::char_traits<char>,std::allocator<char>>'
 7>c:\program files\usd\src\openexr-2.2.0\openexr\ilmimf\imfio.h(210): warning C4251: 'Imf_2_2::OStream::_fileName': class 'std::basic_string<char,std::char_traits<char>,std::allocator<char>>' needs to have dll-interface to be used by clients of class 'Imf_2_2::OStream' [C:\Program Files\USD\build\OpenEXR\IlmImf\dwaLookups.vcxproj]
     c:\program files (x86)\microsoft visual studio\2017\community\vc\tools\msvc\14.14.26428\include\xstring(4347): note: see declaration of 'std::basic_string<char,std::char_traits<char>,std::allocator<char>>'
 7>c:\program files\usd\include\openexr\iexbaseexc.h(143): warning C4275: non dll-interface class 'Iex_2_2::BaseExc' used as base for dll-interface class 'Iex_2_2::ArgExc' [C:\Program Files\USD\build\OpenEXR\IlmImf\dwaLookups.vcxproj]
     c:\program files\usd\include\openexr\iexbaseexc.h(60): note: see declaration of 'Iex_2_2::BaseExc'
     c:\program files\usd\include\openexr\iexbaseexc.h(143): note: see declaration of 'Iex_2_2::ArgExc'
 7>c:\program files\usd\include\openexr\iexbaseexc.h(145): warning C4275: non dll-interface class 'Iex_2_2::BaseExc' used as base for dll-interface class 'Iex_2_2::LogicExc' [C:\Program Files\USD\build\OpenEXR\IlmImf\dwaLookups.vcxproj]
     c:\program files\usd\include\openexr\iexbaseexc.h(60): note: see declaration of 'Iex_2_2::BaseExc'
     c:\program files\usd\include\openexr\iexbaseexc.h(145): note: see declaration of 'Iex_2_2::LogicExc'
 7>c:\program files\usd\include\openexr\iexbaseexc.h(150): warning C4275: non dll-interface class 'Iex_2_2::BaseExc' used as base for dll-interface class 'Iex_2_2::InputExc' [C:\Program Files\USD\build\OpenEXR\IlmImf\dwaLookups.vcxproj]
     c:\program files\usd\include\openexr\iexbaseexc.h(60): note: see declaration of 'Iex_2_2::BaseExc'
     c:\program files\usd\include\openexr\iexbaseexc.h(150): note: see declaration of 'Iex_2_2::InputExc'
 7>c:\program files\usd\include\openexr\iexbaseexc.h(152): warning C4275: non dll-interface class 'Iex_2_2::BaseExc' used as base for dll-interface class 'Iex_2_2::IoExc' [C:\Program Files\USD\build\OpenEXR\IlmImf\dwaLookups.vcxproj]
     c:\program files\usd\include\openexr\iexbaseexc.h(60): note: see declaration of 'Iex_2_2::BaseExc'
     c:\program files\usd\include\openexr\iexbaseexc.h(152): note: see declaration of 'Iex_2_2::IoExc'
 7>c:\program files\usd\include\openexr\iexbaseexc.h(154): warning C4275: non dll-interface class 'Iex_2_2::BaseExc' used as base for dll-interface class 'Iex_2_2::MathExc' [C:\Program Files\USD\build\OpenEXR\IlmImf\dwaLookups.vcxproj]
     c:\program files\usd\include\openexr\iexbaseexc.h(60): note: see declaration of 'Iex_2_2::BaseExc'
     c:\program files\usd\include\openexr\iexbaseexc.h(154): note: see declaration of 'Iex_2_2::MathExc'
 7>c:\program files\usd\include\openexr\iexbaseexc.h(158): warning C4275: non dll-interface class 'Iex_2_2::BaseExc' used as base for dll-interface class 'Iex_2_2::ErrnoExc' [C:\Program Files\USD\build\OpenEXR\IlmImf\dwaLookups.vcxproj]
     c:\program files\usd\include\openexr\iexbaseexc.h(60): note: see declaration of 'Iex_2_2::BaseExc'
     c:\program files\usd\include\openexr\iexbaseexc.h(158): note: see declaration of 'Iex_2_2::ErrnoExc'
 7>c:\program files\usd\include\openexr\iexbaseexc.h(163): warning C4275: non dll-interface class 'Iex_2_2::BaseExc' used as base for dll-interface class 'Iex_2_2::NoImplExc' [C:\Program Files\USD\build\OpenEXR\IlmImf\dwaLookups.vcxproj]
     c:\program files\usd\include\openexr\iexbaseexc.h(60): note: see declaration of 'Iex_2_2::BaseExc'
     c:\program files\usd\include\openexr\iexbaseexc.h(163): note: see declaration of 'Iex_2_2::NoImplExc'
 7>c:\program files\usd\include\openexr\iexbaseexc.h(169): warning C4275: non dll-interface class 'Iex_2_2::BaseExc' used as base for dll-interface class 'Iex_2_2::NullExc' [C:\Program Files\USD\build\OpenEXR\IlmImf\dwaLookups.vcxproj]
     c:\program files\usd\include\openexr\iexbaseexc.h(60): note: see declaration of 'Iex_2_2::BaseExc'
     c:\program files\usd\include\openexr\iexbaseexc.h(169): note: see declaration of 'Iex_2_2::NullExc'
 7>c:\program files\usd\include\openexr\iexbaseexc.h(171): warning C4275: non dll-interface class 'Iex_2_2::BaseExc' used as base for dll-interface class 'Iex_2_2::TypeExc' [C:\Program Files\USD\build\OpenEXR\IlmImf\dwaLookups.vcxproj]
     c:\program files\usd\include\openexr\iexbaseexc.h(60): note: see declaration of 'Iex_2_2::BaseExc'
     c:\program files\usd\include\openexr\iexbaseexc.h(171): note: see declaration of 'Iex_2_2::TypeExc'
 7>c:\program files\usd\src\openexr-2.2.0\openexr\ilmimf\dwalookups.cpp(161): warning C4267: 'argument': conversion from 'size_t' to 'unsigned short', possible loss of data [C:\Program Files\USD\build\OpenEXR\IlmImf\dwaLookups.vcxproj]
 7>c:\program files\usd\src\openexr-2.2.0\openexr\ilmimf\dwalookups.cpp(164): warning C4267: 'argument': conversion from 'size_t' to 'unsigned short', possible loss of data [C:\Program Files\USD\build\OpenEXR\IlmImf\dwaLookups.vcxproj]
 7>c:\program files\usd\src\openexr-2.2.0\openexr\ilmimf\dwalookups.cpp(334): warning C4244: 'initializing': conversion from 'double' to 'float', possible loss of data [C:\Program Files\USD\build\OpenEXR\IlmImf\dwaLookups.vcxproj]
 7>c:\program files\usd\src\openexr-2.2.0\openexr\ilmimf\dwalookups.cpp(388): warning C4244: 'initializing': conversion from 'double' to 'float', possible loss of data [C:\Program Files\USD\build\OpenEXR\IlmImf\dwaLookups.vcxproj]
 7>c:\program files\usd\src\openexr-2.2.0\openexr\ilmimf\dwalookups.cpp(416): warning C4244: 'argument': conversion from 'double' to 'float', possible loss of data [C:\Program Files\USD\build\OpenEXR\IlmImf\dwaLookups.vcxproj]
 7>c:\program files\usd\src\openexr-2.2.0\openexr\ilmimf\dwalookups.cpp(525): warning C4267: '+=': conversion from 'size_t' to 'int', possible loss of data [C:\Program Files\USD\build\OpenEXR\IlmImf\dwaLookups.vcxproj]
 7>c:\program files\usd\src\openexr-2.2.0\openexr\ilmimf\dwalookups.cpp(518): warning C4477: 'printf' : format string '%6lu' requires an argument of type 'unsigned long', but variadic argument 1 has type 'size_t' [C:\Program Files\USD\build\OpenEXR\IlmImf\dwaLookups.vcxproj]
     c:\program files\usd\src\openexr-2.2.0\openexr\ilmimf\dwalookups.cpp(518): note: consider using '%zu' in the format string
 7>Link:
     C:\Program Files (x86)\Microsoft Visual Studio\2017\Community\VC\Tools\MSVC\14.14.26428\bin\HostX86\x64\link.exe /ERRORREPORT:QUEUE /OUT:"C:\Program Files\USD\build\OpenEXR\IlmImf\Release\dwaLookups.exe" /INCREMENTAL:NO /NOLOGO /LIBPATH:"C:/Program Files/USD/lib" /LIBPATH:"C:/Program Files/USD/lib/Release" Half.lib "Iex-2_2.lib" "IlmThread-2_2.lib" kernel32.lib user32.lib gdi32.lib winspool.lib shell32.lib ole32.lib oleaut32.lib uuid.lib comdlg32.lib advapi32.lib /MANIFEST /MANIFESTUAC:"level='asInvoker' uiAccess='false'" /manifest:embed /PDB:"C:/Program Files/USD/build/OpenEXR/IlmImf/Release/dwaLookups.pdb" /SUBSYSTEM:CONSOLE /TLBID:1 /DYNAMICBASE /NXCOMPAT /IMPLIB:"C:/Program Files/USD/build/OpenEXR/IlmImf/Release/dwaLookups.lib" /MACHINE:X64  /machine:x64 dwaLookups.dir\Release\dwaLookups.obj
     dwaLookups.vcxproj -> C:\Program Files\USD\build\OpenEXR\IlmImf\Release\dwaLookups.exe
   FinalizeBuildStatus:
     Deleting file "dwaLookups.dir\Release\dwaLookups.tlog\unsuccessfulbuild".
     Touching "dwaLookups.dir\Release\dwaLookups.tlog\dwaLookups.lastbuildstate".
 7>Done Building Project "C:\Program Files\USD\build\OpenEXR\IlmImf\dwaLookups.vcxproj" (default targets).
 2>Project "C:\Program Files\USD\build\OpenEXR\ALL_BUILD.vcxproj" (2) is building "C:\Program Files\USD\build\OpenEXR\IlmImf\IlmImf.vcxproj" (4) on node 2 (default targets).
 4>InitializeBuildStatus:
     Touching "IlmImf.dir\Release\IlmImf.tlog\unsuccessfulbuild".
   CustomBuild:
     Generating b44ExpLogTable.h
 4>C:\Program Files (x86)\Microsoft Visual Studio\2017\Community\Common7\IDE\VC\VCTargets\Microsoft.CppCommon.targets(171,5): error MSB6006: "cmd.exe" exited with code -1073741634. [C:\Program Files\USD\build\OpenEXR\IlmImf\IlmImf.vcxproj]
 4>Done Building Project "C:\Program Files\USD\build\OpenEXR\IlmImf\IlmImf.vcxproj" (default targets) -- FAILED.
 2>Done Building Project "C:\Program Files\USD\build\OpenEXR\ALL_BUILD.vcxproj" (default targets) -- FAILED.
 1>Done Building Project "C:\Program Files\USD\build\OpenEXR\install.vcxproj" (default targets) -- FAILED.

Build FAILED.

   "C:\Program Files\USD\build\OpenEXR\install.vcxproj" (default target) (1) ->
   "C:\Program Files\USD\build\OpenEXR\ALL_BUILD.vcxproj" (default target) (2) ->
   "C:\Program Files\USD\build\OpenEXR\IlmImf\dwaLookups.vcxproj" (default target) (7) ->
   (ClCompile target) -> 
     c:\program files\usd\src\openexr-2.2.0\openexr\ilmimf\imfio.h(147): warning C4251: 'Imf_2_2::IStream::_fileName': class 'std::basic_string<char,std::char_traits<char>,std::allocator<char>>' needs to have dll-interface to be used by clients of class 'Imf_2_2::IStream' [C:\Program Files\USD\build\OpenEXR\IlmImf\dwaLookups.vcxproj]
     c:\program files\usd\src\openexr-2.2.0\openexr\ilmimf\imfio.h(210): warning C4251: 'Imf_2_2::OStream::_fileName': class 'std::basic_string<char,std::char_traits<char>,std::allocator<char>>' needs to have dll-interface to be used by clients of class 'Imf_2_2::OStream' [C:\Program Files\USD\build\OpenEXR\IlmImf\dwaLookups.vcxproj]
     c:\program files\usd\include\openexr\iexbaseexc.h(143): warning C4275: non dll-interface class 'Iex_2_2::BaseExc' used as base for dll-interface class 'Iex_2_2::ArgExc' [C:\Program Files\USD\build\OpenEXR\IlmImf\dwaLookups.vcxproj]
     c:\program files\usd\include\openexr\iexbaseexc.h(145): warning C4275: non dll-interface class 'Iex_2_2::BaseExc' used as base for dll-interface class 'Iex_2_2::LogicExc' [C:\Program Files\USD\build\OpenEXR\IlmImf\dwaLookups.vcxproj]
     c:\program files\usd\include\openexr\iexbaseexc.h(150): warning C4275: non dll-interface class 'Iex_2_2::BaseExc' used as base for dll-interface class 'Iex_2_2::InputExc' [C:\Program Files\USD\build\OpenEXR\IlmImf\dwaLookups.vcxproj]
     c:\program files\usd\include\openexr\iexbaseexc.h(152): warning C4275: non dll-interface class 'Iex_2_2::BaseExc' used as base for dll-interface class 'Iex_2_2::IoExc' [C:\Program Files\USD\build\OpenEXR\IlmImf\dwaLookups.vcxproj]
     c:\program files\usd\include\openexr\iexbaseexc.h(154): warning C4275: non dll-interface class 'Iex_2_2::BaseExc' used as base for dll-interface class 'Iex_2_2::MathExc' [C:\Program Files\USD\build\OpenEXR\IlmImf\dwaLookups.vcxproj]
     c:\program files\usd\include\openexr\iexbaseexc.h(158): warning C4275: non dll-interface class 'Iex_2_2::BaseExc' used as base for dll-interface class 'Iex_2_2::ErrnoExc' [C:\Program Files\USD\build\OpenEXR\IlmImf\dwaLookups.vcxproj]
     c:\program files\usd\include\openexr\iexbaseexc.h(163): warning C4275: non dll-interface class 'Iex_2_2::BaseExc' used as base for dll-interface class 'Iex_2_2::NoImplExc' [C:\Program Files\USD\build\OpenEXR\IlmImf\dwaLookups.vcxproj]
     c:\program files\usd\include\openexr\iexbaseexc.h(169): warning C4275: non dll-interface class 'Iex_2_2::BaseExc' used as base for dll-interface class 'Iex_2_2::NullExc' [C:\Program Files\USD\build\OpenEXR\IlmImf\dwaLookups.vcxproj]
     c:\program files\usd\include\openexr\iexbaseexc.h(171): warning C4275: non dll-interface class 'Iex_2_2::BaseExc' used as base for dll-interface class 'Iex_2_2::TypeExc' [C:\Program Files\USD\build\OpenEXR\IlmImf\dwaLookups.vcxproj]
     c:\program files\usd\src\openexr-2.2.0\openexr\ilmimf\dwalookups.cpp(161): warning C4267: 'argument': conversion from 'size_t' to 'unsigned short', possible loss of data [C:\Program Files\USD\build\OpenEXR\IlmImf\dwaLookups.vcxproj]
     c:\program files\usd\src\openexr-2.2.0\openexr\ilmimf\dwalookups.cpp(164): warning C4267: 'argument': conversion from 'size_t' to 'unsigned short', possible loss of data [C:\Program Files\USD\build\OpenEXR\IlmImf\dwaLookups.vcxproj]
     c:\program files\usd\src\openexr-2.2.0\openexr\ilmimf\dwalookups.cpp(334): warning C4244: 'initializing': conversion from 'double' to 'float', possible loss of data [C:\Program Files\USD\build\OpenEXR\IlmImf\dwaLookups.vcxproj]
     c:\program files\usd\src\openexr-2.2.0\openexr\ilmimf\dwalookups.cpp(388): warning C4244: 'initializing': conversion from 'double' to 'float', possible loss of data [C:\Program Files\USD\build\OpenEXR\IlmImf\dwaLookups.vcxproj]
     c:\program files\usd\src\openexr-2.2.0\openexr\ilmimf\dwalookups.cpp(416): warning C4244: 'argument': conversion from 'double' to 'float', possible loss of data [C:\Program Files\USD\build\OpenEXR\IlmImf\dwaLookups.vcxproj]
     c:\program files\usd\src\openexr-2.2.0\openexr\ilmimf\dwalookups.cpp(525): warning C4267: '+=': conversion from 'size_t' to 'int', possible loss of data [C:\Program Files\USD\build\OpenEXR\IlmImf\dwaLookups.vcxproj]
     c:\program files\usd\src\openexr-2.2.0\openexr\ilmimf\dwalookups.cpp(518): warning C4477: 'printf' : format string '%6lu' requires an argument of type 'unsigned long', but variadic argument 1 has type 'size_t' [C:\Program Files\USD\build\OpenEXR\IlmImf\dwaLookups.vcxproj]

   "C:\Program Files\USD\build\OpenEXR\install.vcxproj" (default target) (1) ->
   "C:\Program Files\USD\build\OpenEXR\ALL_BUILD.vcxproj" (default target) (2) ->
   "C:\Program Files\USD\build\OpenEXR\IlmImf\IlmImf.vcxproj" (default target) (4) ->
   (CustomBuild target) -> 
     C:\Program Files (x86)\Microsoft Visual Studio\2017\Community\Common7\IDE\VC\VCTargets\Microsoft.CppCommon.targets(171,5): error MSB6006: "cmd.exe" exited with code -1073741634. [C:\Program Files\USD\build\OpenEXR\IlmImf\IlmImf.vcxproj]

18 Warning(s)
1 Error(s)

Time Elapsed 00:00:04.56

@PixelPartner
Copy link
Author

I also tried to switch error/warning language between german and english - without effect.

@c64kernal
Copy link
Contributor

Hmm.. unfortunately not able to repro. Are you building into a totally clean build directory?

@sunyab
Copy link
Contributor

sunyab commented Aug 9, 2018

I believe this error commonly occurs if Half.dll isn't found in your PATH when building OpenEXR. The build script should have set this PATH properly, but perhaps something else in your environment (like another install of IlmBase) is causing that to break. Things to check/try:

  1. Does Half.dll and Half.lib exist in your "C:\Program Files\USD\lib" directory after you run into this error?
  2. Try adding "C:\Program Files\USD\lib" and "C:\Program Files\USD\bin" to the front of your PATH before running build_usd.py.

@PixelPartner
Copy link
Author

PixelPartner commented Aug 9, 2018 via email

@Jewel-A
Copy link

Jewel-A commented Aug 10, 2018

It also can't bild OpenEXR with cmake in linux.
#578
I have all preinstalled dependences (from pip and YUM), but it doesn't help with USD building, because some of them are not used (it use pacages that was downloaded as a part of USD instalation).
so I'm stop on GLEW if I use build.py
and I'm stop on OpenEXR if I use cmake (((

@PixelPartner
Copy link
Author

@sunyab Yes, Half.dll/.lib have been created, but prepending USD\bin and USD\lib to the PATH didn't help.
Same fail without helpful error message as before.

@PixelPartner
Copy link
Author

I unstalled VS2017 and installed VS2015 community. Same error.
Similar issues have been reported for OpenEXR on Win64 for years.

@spiffmon
Copy link
Member

spiffmon commented Aug 13, 2018 via email

@jtran56
Copy link

jtran56 commented Aug 25, 2018

Filed as internal issue #163194.

@meshula
Copy link
Member

meshula commented Aug 26, 2018

The CMake build for windows was extensively cleaned for OpenEXR 2.3, especially to deal with issues such as the Half.dll problem. Updates to the build_usd.py script will be required to take advantage of them, and the OpenEXR version for USD would need to be bumped.

The OpenEXR 2.3 no longer requires Half.dll in the path to build b44ExpLogTable.h, so is much easier to build. (OpenEXR 2.2 and earlier do require Half.dll in the path to build that file.)

@infernalspawn
Copy link

I have to admit i've build all sources separately (openexr, etc) but i've come across this problem in the process.
reading the log correctly it seems that it has a problem when it generates the 'b44ExpLogTable.h' - file.
If i remember correctly this is an external process which needs the half.dll in the PATH.
I've first build the the IlmBase, and than the OpenEXR libs. While building the openexr i had the half.dll in the PATH.

@ehsan1772
Copy link

Hey guys, any update on this issue? I am getting a similar error here: #736

And haven't been able to get around it

@meshula
Copy link
Member

meshula commented Jan 8, 2019

FWIW, the error log attached in #736 shows a problem Qt's UIC. The error reported here is that OpenEXR didn't build. The issue @infernalspawn refers to was resolved in OpenEXR 2.3, but still exists in OpenEXR 2.2

@PixelPartner
Copy link
Author

Still OpenEXR 2.3.0 has this problem for me under Win8.1 with cmake 3.12 and using Visual Studio 14 2015 compiler environment and shell.

@meshula
Copy link
Member

meshula commented Apr 3, 2019

@PixelPartner Are you able to attach a log that shows the build failure? I see you are using an older Visual Studio compared to the other reports in this thread.

@meshula
Copy link
Member

meshula commented Nov 26, 2024

OpenEXR build issues like this have been addressed by updates since this bug was filed. Please open a new one if it recurs.

@meshula meshula closed this as completed Nov 26, 2024
pixar-oss pushed a commit that referenced this issue Dec 9, 2024
Updates OpenEXR dependency from v3.1.11 -> v3.1.13
- This was originally part of PR #3077 from @nvidia-jomiller

Removes FindOpenEXR.cmake because OpenEXR now publishes its own config scripts which supersede a Find script.

Fixes #585
Closes #1844
Closes #3077

(Internal change: 2349684)
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

No branches or pull requests

9 participants