Open YouthImagination opened 9 months ago
关于optix.cu的生成
已启动重新生成…
1>------ 已启动全部重新生成: 项目: ZERO_CHECK, 配置: Release x64 ------
1>Checking Build System
2>------ 已启动全部重新生成: 项目: soac, 配置: Release x64 ------
2>Building Custom Rule D:/Codes/pbrt-v4/CMakeLists.txt
2>soac.cpp
2>soac.vcxproj -> D:\Codes\pbrt-v4\build\Release\soac.exe
3>------ 已启动全部重新生成: 项目: pbrt_soa_generated, 配置: Release x64 ------
3>Generating pbrt_soa.h
3>Generating wavefront_workitems_soa.h
3>Building Custom Rule D:/Codes/pbrt-v4/CMakeLists.txt
4>------ 已启动全部重新生成: 项目: optix.cu, 配置: Release x64 ------
4>Building Custom Rule D:/Codes/pbrt-v4/CMakeLists.txt
4>Compiling CUDA source file ..\src\pbrt\gpu\optix.cu...
4>
4>D:\Codes\pbrt-v4\build>"C:\Program Files\NVIDIA GPU Computing Toolkit\CUDA\v11.4\bin\nvcc.exe" -gencode=arch=compute_75,code=\"sm_75,compute_75\" --use-local-env -ccbin "D:\software\Visual Studio\VS2019\VC\Tools\MSVC\14.29.30133\bin\HostX64\x64" -x cu -I"C:\Program Files\NVIDIA GPU Computing Toolkit\CUDA\v11.4\include" -I"D:\software\NVIDIA Corporation\OptiX SDK73\include" -I"D:\Codes\pbrt-v4\src" -I"D:\Codes\pbrt-v4\build" -I"D:\Codes\pbrt-v4\src\ext\openvdb\nanovdb" -I"C:\Program Files\NVIDIA GPU Computing Toolkit\CUDA\v11.4\include" --keep-dir x64\Release -use_fast_math -maxrregcount=128 --machine 64 -ptx -cudart static -Xnvlink -suppress-stack-size-warning -Xcudafe=--display_error_number -Xcudafe=--diag_suppress=20044 --define-macro=PBRT_IS_MSVC --define-macro=_CRT_SECURE_NO_WARNINGS --define-macro=_ENABLE_EXTENDED_ALIGNED_STORAGE --define-macro=PBRT_IS_WINDOWS --define-macro=NOMINMAX --define-macro=PBRT_BUILD_GPU_RENDERER --define-macro=PBRT_HAS_INTRIN_H --define-macro=PBRT_NOINLINE=__declspec(noinline) --define-macro=PBRT_RESTRICT=__restrict --define-macro=PBRT_HAVE__ALIGNED_MALLOC --std=c++17 --expt-relaxed-constexpr --extended-lambda --forward-unknown-to-host-compiler -lineinfo -Xcudafe --diag_suppress=partial_override -Xcudafe --diag_suppress=virtual_function_decl_hidden -Xcudafe --diag_suppress=integer_sign_change -Xcudafe --diag_suppress=declared_but_not_referenced -Xcudafe --diag_suppress=implicit_return_from_non_void_function -std=c++17 -Xcompiler="/EHsc -Ob2 /wd4244 /wd4267 /wd4305 /wd4552 /wd4838 /wd4843 /wd26451 /wd26495 /wd4334 /wd4146" -o optix.cu.dir\Release\optix.ptx "D:\Codes\pbrt-v4\src\pbrt\gpu\optix.cu"
4>D:/Codes/pbrt-v4/src/ext/openvdb/nanovdb\nanovdb/NanoVDB.h(1): warning C4819: 该文件包含不能在当前代码页(936)中表示的字符。请将该文件保存为 Unicode 格式以防止数据丢失
4>optix.cu
4>已完成生成项目“optix.cu.vcxproj”的操作。
5>------ 已启动全部重新生成: 项目: pbrt_embedded_ptx_lib, 配置: Release x64 ------
5>Embedding PTX generated from src/pbrt/gpu/optix.cu
5>Building Custom Rule D:/Codes/pbrt-v4/CMakeLists.txt
5>optix.cu.ptx_embedded.c
5>LINK : fatal error LNK1181: 无法打开输入文件“D:\Codes\pbrt-v4\build\optix.cu.dir\Release\optix.cu.lib”
5>已完成生成项目“pbrt_embedded_ptx_lib.vcxproj”的操作 - 失败。
========== 全部重新生成: 成功 4 个,失败 1 个,跳过 0 个 ==========
你好,我在编译pbrt-v4的时候,在GPU部分存在问题,在optix.cu项目的编译可以通过,生成了
optix.ptx
,但是在别的项目编译后会出现link问题fatal error LNK1181: 无法打开输入文件“D:\Codes\pbrt-v4\build\optix.cu.dir\Release\optix.cu.lib”
在CMakeLists里添加了Cmake生成信息为:
而且VS2019编译到一定时候就会固定卡死,请问有没有推荐的解决办法,在PBRT-V4那里的issue也没有解决。 我显卡是
GTX1660TI
,Cuda版本为11.4
,Optix为7.3