discuss-gnuradio
[Top][All Lists]
Advanced

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

Building GNU Radio from source on Windows 10 - link problem in uhd build


From: Franco VENTURI
Subject: Building GNU Radio from source on Windows 10 - link problem in uhd build
Date: Sat, 10 Apr 2021 13:12:48 -0400 (EDT)

I am trying to build GNU Radio from source on Windows 10 (20H2 build 19042.906) following the instructions here: https://github.com/gnieboer/gnuradio_windows_build_scripts#installation--build (I used the 'master' branch of that repository)
 
The build process runs for a few hours building all the dependencies (including boost), but when it gets to building the uhd dependency, it fails.
 
The log file C:\gr-build\src-stage1-dependencies\uhd\host\build\CMakeFiles\CMakeError.log has this error message:
 
Link:
C:\Program Files (x86)\Microsoft Visual Studio\2019\Community\VC\Tools\MSVC\14.27.29110\bin\HostX64\x64\link.exe /ERRORREPORT:QUEUE /OUT:".\CompilerIdCXX.exe" /INCREMENTAL:NO /NOLOGO /LIBPATH:"C:\gr-build\src-stage1-dependencies\vcpkg\scripts\buildsystems\msbuild\..\..\..\installed\x64-windows\debug\lib" /LIBPATH:"C:\gr-build\src-stage1-dependencies\vcpkg\scripts\buildsystems\msbuild\..\..\..\installed\x64-windows\debug\lib\manual-link" kernel32.lib user32.lib gdi32.lib winspool.lib comdlg32.lib advapi32.lib shell32.lib ole32.lib oleaut32.lib uuid.lib odbc32.lib odbccp32.lib "C:\gr-build\src-stage1-dependencies\vcpkg\scripts\buildsystems\msbuild\..\..\..\installed\x64-windows\debug\lib\*.lib" /MANIFEST /MANIFESTUAC:"level='asInvoker' uiAccess='false'" /manifest:embed /PDB:".\CompilerIdCXX.pdb" /SUBSYSTEM:CONSOLE /TLBID:1 /DYNAMICBASE /NXCOMPAT /IMPLIB:".\CompilerIdCXX.lib" /MACHINE:X64 Debug\CMakeCXXCompilerId.obj
LINK : fatal error LNK1181: cannot open input file 'boost_chrono-vc140-mt.lib' [C:\gr-build\src-stage1-dependencies\uhd\host\build\CMakeFiles\3.19.4\CompilerIdCXX\CompilerIdCXX.vcxproj]
Done Building Project "C:\gr-build\src-stage1-dependencies\uhd\host\build\CMakeFiles\3.19.4\CompilerIdCXX\CompilerIdCXX.vcxproj" (default targets) -- FAILED.
 
Build FAILED.
 
 

The problem seems to be that the boost build installed the library 'boost_chrono-vc140-mt.lib' under C:\gr-build\src-stage1-dependencies\vcpkg\installed\x64-windows\lib\boost_chrono-vc140-mt.lib, while the link command is instead looking for C:\gr-build\src-stage1-dependencies\vcpkg\scripts\buildsystems\msbuild\..\..\..\installed\x64-windows\debug\lib\*.lib (in other words, it has an extra 'debug' in the path before 'lib').
 

I also looked in the directory searched for by the link command above (i.e. C:\gr-build\src-stage1-dependencies\vcpkg\installed\x64-windows\debug\lib), and I do see a library with a very similar name: boost_chrono-vc140-mt-gd.lib (note the extra '-gd' at the end of its name), so perhaps the link command should have tried to look for that instead. Not really sure.
 

Since I am not very familiar with the way GNU Radio and its dependencies get built under Windows, at this point I am wondering if I should try to either:
- figure out how to remove the extra 'debug' directory in the uhd link command (probably by changing something in the cmake configuration), or
- figure out why the boost build installed the library 'boost_chrono-vc140-mt.lib' in the wrong path, or
- figure out if in this case the uhd link command is correct, but the uhd build should have been looking for the library with a slightly different name: boost_chrono-vc140-mt-gd.lib (and where that gets selected in the uhd config)
 

It is very possibly something I did wrong, but I wanted to ask if anyone has seen a similar problem when building GNU Radio from source on Windows, and if so how they solved it.
 

Thanks in advance,
Franco Venturi - K4VZ

reply via email to

[Prev in Thread] Current Thread [Next in Thread]