mmp / pbrt-v3

Source code for pbrt, the renderer described in the third edition of "Physically Based Rendering: From Theory To Implementation", by Matt Pharr, Wenzel Jakob, and Greg Humphreys.
http://pbrt.org
BSD 2-Clause "Simplified" License
4.87k stars 1.18k forks source link

MSVC2017 built-in cmake build error #235

Open mmp opened 5 years ago

mmp commented 5 years ago

MSVC2017 has built-in cmake support. However, trying to build with it gives the following error:


  [1/138] cmd.exe /C "cd /D C:\Users\mpharr\CMakeBuilds\1c905534-0e64-0432-a8c5-adafba35f18f\build\x64-Release\src\ext\openexr && "C:\Program Files (x86)\Microsoft Visual Studio\2017\Professional\Common7\IDE\CommonExtensions\Microsoft\CMake\CMake\bin\cmake.exe" -E copy_directory C:/Users/mpharr/CMakeBuilds/1c905534-0e64-0432-a8c5-adafba35f18f/build/x64-Release/src/ext/openexr/IlmBase/Half/RelWithDebInfo C:/Users/mpharr/CMakeBuilds/1c905534-0e64-0432-a8c5-adafba35f18f/build/x64-Release/src/ext/openexr/OpenEXR/IlmImf/RelWithDebInfo && "C:\Program Files (x86)\Microsoft Visual Studio\2017\Professional\Common7\IDE\CommonExtensions\Microsoft\CMake\CMake\bin\cmake.exe" -E copy_directory C:/Users/mpharr/CMakeBuilds/1c905534-0e64-0432-a8c5-adafba35f18f/build/x64-Release/src/ext/openexr/IlmBase/IlmThread/RelWithDebInfo C:/Users/mpharr/CMakeBuilds/1c905534-0e64-0432-a8c5-adafba35f18f/build/x64-Release/src/ext/openexr/OpenEXR/IlmImf/RelWithDebInfo && "C:\Program Files (x86)\Microsoft Visual Studio\2017\Professional\Common7\IDE\CommonExtensions\Microsoft\CMake\CMake\bin\cmake.exe" -E copy_directory C:/Users/mpharr/CMakeBuilds/1c905534-0e64-0432-a8c5-adafba35f18f/build/x64-Release/src/ext/openexr/IlmBase/Iex/RelWithDebInfo C:/Users/mpharr/CMakeBuilds/1c905534-0e64-0432-a8c5-adafba35f18f/build/x64-Release/src/ext/openexr/OpenEXR/IlmImf/RelWithDebInfo && "C:\Program Files (x86)\Microsoft Visual Studio\2017\Professional\Common7\IDE\CommonExtensions\Microsoft\CMake\CMake\bin\cmake.exe" -E copy_directory C:/Users/mpharr/CMakeBuilds/1c905534-0e64-0432-a8c5-adafba35f18f/build/x64-Release/src/ext/openexr/IlmBase/Imath/RelWithDebInfo C:/Users/mpharr/CMakeBuilds/1c905534-0e64-0432-a8c5-adafba35f18f/build/x64-Release/src/ext/openexr/OpenEXR/IlmImf/RelWithDebInfo"
  FAILED: src/ext/openexr/CMakeFiles/CopyIlmBaseLibs 
[...]
  ninja: build stopped: subcommand failed.
hugege1123 commented 2 years ago

你好,我用vc2017运行pbrt-3,没有输入指令,结果一直是这样,没有渲染除图片,我想问一下是哪里出来问题 pbrt version 3 (built Mar 30 2022 at 15:57:41) [Detected 8 cores] Copyright (c)1998-2018 Matt Pharr, Greg Humphreys, and Wenzel Jakob. The source code to pbrt (but not the book contents) is covered by the BSD License. See the file LICENSE.txt for the conditions of the license.

cmd出现上面的文字,可是就是不渲染,很苦恼,希望得到解答!谢谢!

hugege1123 commented 2 years ago

你好,我在这里附上代码,希望有助于问题的解决 if (!options.quiet && !options.cat && !options.toPly) { if (sizeof(void *) == 4) printf(" WARNING: This is a 32-bit build of pbrt. It will crash " "if used to render highly complex scenes. \n"); printf("pbrt version 3 (built %s at %s) [Detected %d cores]\n", DATE, TIME, NumSystemCores());

ifndef NDEBUG

    LOG(INFO) << "Running debug build";
    printf("*** DEBUG BUILD ***\n");

endif // !NDEBUG

    printf(
        "Copyright (c)1998-2018 Matt Pharr, Greg Humphreys, and Wenzel "
        "Jakob.\n");
    printf(
        "The source code to pbrt (but *not* the book contents) is covered "
        "by the BSD License.\n");
    printf("See the file LICENSE.txt for the conditions of the license.\n");
    fflush(stdout);
}
pbrtInit(options);
// Process scene description
if (filenames.empty()) {
    // Parse scene from standard input
    pbrtParseFile("-");
} else {
    // Parse scene from input files
    for (const std::string &f : filenames)
        pbrtParseFile(f);
}
pbrtCleanup();
return 0;