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

[colmap] Build error [nvcc fatal : A single input file is required for a non-link phase when an outputfile is specified] #32141

Closed
boonta opened this issue Jun 21, 2023 · 3 comments
Assignees
Labels
category:port-bug The issue is with a library, which is something the port should already support

Comments

@boonta
Copy link

boonta commented Jun 21, 2023

Hello,

I have tried to build colmap from vcpkg but the following errors occur.

install-x64-windows-rel-vs2019-v142-rel-out.log

This is an example of the error thrown by nvcc.

C:\PROGRA~1\NVIDIA~2\CUDA\v12.1\bin\nvcc.exe -forward-unknown-to-host-compiler -DBOOST_ALL_DYN_LINK=1 -DCGAL_ENABLED -DCGAL_USE_GMPXX=1 -DCUDA_ENABLED -DGFLAGS_IS_A_DLL=1 -DGLOG_NO_ABBREVIATED_SEVERITIES -DGL_GLEXT_PROTOTYPES -DGUI_ENABLED -DIMATH_DLL -DOPENEXR_DLL -DOPENGL_ENABLED -DOPENMP_ENABLED -DQT_CORE_LIB -DQT_GUI_LIB -DQT_NO_DEBUG -DQT_OPENGL_LIB -DQT_WIDGETS_LIB -DWIN32_LEAN_AND_MEAN -D_MWAITXINTRIN_H_INCLUDED -ID:\vcpkg\buildtrees\colmap\src\b221bdabb2-e3968635af.clean\lib -ID:\vcpkg\buildtrees\colmap\src\b221bdabb2-e3968635af.clean\src -isystem D:\vcpkg\installed\x64-windows-rel-vs2019-v142\include -isystem D:\vcpkg\installed\x64-windows-rel-vs2019-v142\include\eigen3 -isystem D:\vcpkg\installed\x64-windows-rel-vs2019-v142\include\qt5 -isystem D:\vcpkg\installed\x64-windows-rel-vs2019-v142\include\qt5\QtCore -isystem D:\vcpkg\installed\x64-windows-rel-vs2019-v142\tools\qt5\mkspecs\win32-msvc -isystem D:\vcpkg\installed\x64-windows-rel-vs2019-v142\include\qt5\QtOpenGL -isystem D:\vcpkg\installed\x64-windows-rel-vs2019-v142\include\qt5\QtWidgets -isystem D:\vcpkg\installed\x64-windows-rel-vs2019-v142\include\qt5\QtGui -isystem "C:\Program Files\NVIDIA GPU Computing Toolkit\CUDA\v12.1\include" -isystem D:\vcpkg\installed\x64-windows-rel-vs2019-v142\include\webp -isystem D:\vcpkg\installed\x64-windows-rel-vs2019-v142\include\OpenEXR -isystem D:\vcpkg\installed\x64-windows-rel-vs2019-v142\include\Imath -isystem D:\vcpkg\installed\x64-windows-rel-vs2019-v142\include\GKlib -D_WINDOWS -Xcompiler="/W3 /GR /EHsc" -D_FORCE_INLINES -Wno-deprecated-gpu-targets --use_fast_math --default-stream per-thread -Xptxas=-suppress-stack-size-warning -Xcompiler="-MD -O2 -Ob2" -DNDEBUG -std=c++14 -arch=native /EHsc -D_SCL_SECURE_NO_DEPRECATE -D_SCL_SECURE_NO_WARNINGS -MD -MT src\CMakeFiles\colmap_cuda.dir\mvs\gpu_mat_ref_image.cu.obj -MF src\CMakeFiles\colmap_cuda.dir\mvs\gpu_mat_ref_image.cu.obj.d -x cu -c D:\vcpkg\buildtrees\colmap\src\b221bdabb2-e3968635af.clean\src\mvs\gpu_mat_ref_image.cu -o src\CMakeFiles\colmap_cuda.dir\mvs\gpu_mat_ref_image.cu.obj -Xcompiler=-Fdsrc\CMakeFiles\colmap_cuda.dir\colmap_cuda.pdb,-FS nvcc fatal : A single input file is required for a non-link phase when an outputfile is specified

There was a report of this error in the following link.
#NVlabs/instant-ngp#198

However I do not see any space in the command above.

The triplet I used in this build setup is the following.

set(VCPKG_TARGET_ARCHITECTURE x64)
set(VCPKG_CRT_LINKAGE dynamic)
set(VCPKG_LIBRARY_LINKAGE dynamic)
set(VCPKG_BUILD_TYPE release)
set(VCPKG_PLATFORM_TOOLSET v142)
set(VCPKG_VISUAL_STUDIO_PATH "C:\Program Files (x86)\Microsoft Visual Studio\2019\Community")

Cuda version 12.1

Previously, I tried testing with Cuda version 10.2 but it failed to compile due to the following error.

nvcc fatal : Unsupported gpu architecture 'compute_89'

My GPU is RTX 4080.


Environment :
Windows 10
VIsual Studio 2019 community
vcpkg
Cuda 12.1

@Adela0814
Copy link
Contributor

nvcc fatal : Unsupported gpu architecture 'compute_89'
@boonta Thanks for posting this issue, please upgrade your cuda version to 12 or above.

@Adela0814 Adela0814 added the category:question This issue is a question label Jun 25, 2023
@boonta
Copy link
Author

boonta commented Jun 26, 2023

nvcc fatal : Unsupported gpu architecture 'compute_89' @boonta Thanks for posting this issue, please upgrade your cuda version to 12 or above.

Thank you.
This issue was solved by upgrading to cuda v12. but the above error, nvcc fatal : A single input file is required for a non-link phase when an outputfile is specified is not solved yet.

@Adela0814
Copy link
Contributor

nvcc fatal : Unsupported gpu architecture 'compute_89' @boonta Thanks for posting this issue, please upgrade your cuda version to 12 or above.

Thank you. This issue was solved by upgrading to cuda v12. but the above error, nvcc fatal : A single input file is required for a non-link phase when an outputfile is specified is not solved yet.

This issue dup to #30272.

@Adela0814 Adela0814 added category:port-bug The issue is with a library, which is something the port should already support and removed category:question This issue is a question labels Jul 4, 2023
@Cheney-W Cheney-W closed this as not planned Won't fix, can't repro, duplicate, stale Jul 20, 2023
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
category:port-bug The issue is with a library, which is something the port should already support
Projects
None yet
Development

No branches or pull requests

3 participants