|
From: | Craig Easton |
Subject: | Re: [Discuss-gnuradio] Illegal CustomBuild for MSVC 18 |
Date: | Mon, 15 Jun 2015 18:20:05 +0000 |
I've also been struggling with the gnu-radio build in Windows (GNURadio 3.7.7.1, CMake 3.2.2, VisualStudio 12.0.31101.00 Update 4), and had the same problem. The illegal "" commands seem to be coming from the custom build steps for the ".rule" files in the projects starting with a "_" (e.g. _pmt_swig). In each of these projects there is a "CMAKE Rules" dir with ".rule" files that have "" in their custom build script. I've found the learning curve for this build to be incredibly steep, I also have no real understanding of the gnu-radio build process or the authoring of CMake projects, but I managed to track this problem to the following stanza in \cmake\Modules\UseSWIG.cmake foreach(swig_gen_file ${${outfiles}}) add_custom_command( OUTPUT ${swig_gen_file} COMMAND "" DEPENDS ${_target} COMMENT "" ) endforeach() It seems that if you put something in the COMMAND "" quotes it is passed into the custom build script without the quotes, but if you just put a pair of empty double quoates as above, you get the double quotes in the custom-build step and Visual Studio throws up the error. Removing or commenting-out the COMMAND "" line above (then doing a CMake configure and generate) seems to solve the problem. I don't know enough about CMake to know whether this is a bug in CMake or a mistake in the GNURadio UseSWIG.cmake file, but I checked the latest commit in the gnu-radio repo and the COMMAND "" line is stil in the "UseSWIG.cmake" file. I also couldn't find an open bug report about this so I raised it as bug #799. CE. ------------------------------------------------------------------- I encountered the same problem. No idea how to properly fix it, For now, I just did a global replace in *.vcxproj for "" to nothing. That worked and I was able to build everything. ________________________ Eugene Grayver, Ph.D. Aerospace Corp., Sr. Eng. Spec. Tel: 310.336.1274 ________________________ From: address@hidden To: address@hidden, Date: 03/31/2015 09:01 AM Subject: Discuss-gnuradio Digest, Vol 148, Issue 34 Sent by: address@hidden ------------------------------------------------------------------- From: Gisle Vanem Subject: [Discuss-gnuradio] Illegal CustomBuild for MSVC 18 Date: Tue, 31 Mar 2015 12:37:03 +0200 User-agent: Mozilla/5.0 (Windows NT 6.3; WOW64; rv:36.0) Gecko/20100101 Firefox/36.0 SeaMonkey/2.33.1 I have had some more success building Gr using MSVC v18 than MSVC v16 previously (nearly impossible). Besides the high noise-level (due to cmake/msvc/config.h), the C++ building seems fine. But the build stops in 'build\gnuradio-runtime\swig' at some CustomBuild/CustomCommand. Here is from the MSbuild output: if %errorlevel% neq 0 goto :cmEnd :cmEnd endlocal & call :cmErrorLevel %errorlevel% & goto :cmDone :cmErrorLevel exit /b %1 :cmDone if %errorlevel% neq 0 goto :VCEnd setlocal "" << !! because of this if %errorlevel% neq 0 goto :cmEnd :cmEnd endlocal & call :cmErrorLevel %errorlevel% & goto :cmDone :cmErrorLevel exit /b %1 :cmDone if %errorlevel% neq 0 goto :VCEnd setlocal "" if %errorlevel% neq 0 goto :cmEnd :cmEnd endlocal & call :cmErrorLevel %errorlevel% & goto :cmDone :cmErrorLevel exit /b %1 :cmDone if %errorlevel% neq 0 goto :VCEnd Building Custom Rule F:/gv/dx-radio/gnuradio-3.x/gnuradio-runtime/swig/CMakeLists.txt '""' is not recognized as an internal or external command, What command in 'gnuradio-runtime\swig\CMakeLists.txt' could trigger this illegal CMD batch snippet? BTW. I generated the .sln/.vcxproj files by a script: setlocal cd build set OPT=-DCMAKE_CXX_COMPILER=cl -DCMAKE_C_COMPILER=cl ^ -DCMAKE_CXX_COMPILER_ENV_VAR=-nologo -O2 -MD ^ -DCMAKE_C_COMPILER_ENV_VAR=-nologo -O2 -MD ^ -Wno-dev -DCMAKE_BUILD_TYPE="Release" -DENABLE_TESTING=1 ^ -DPORTAUDIO_LIBRARIES=%MINGW32%/src/Sound/Portaudio/lib/portaudio_static_x86.lib cmake %OPT% -G "Visual Studio 12 2013" .. ... -- --gv |
[Prev in Thread] | Current Thread | [Next in Thread] |