|
From: | Geof Nieboer |
Subject: | Re: [Discuss-gnuradio] OOT Block on Windows - barely feasible |
Date: | Thu, 7 Jul 2016 21:43:39 -0400 |
You may recall that I asked if it was feasible to build an OOT module/block for GRC on Windows. To answer my own question, it is barely feasible. The folks who created the windows binary package cleared the path through the jungle, but they left a lot of breadcrumbs in the resulting build. If anyone wants to try, here are my notes - I have been through this twice now, but there might be a few mistakes yet.
Prerequisites:
Windows 64bit 10 (probably works on 8 too)
VS2010 and VS2015
download and install gnuradio windows binaries 3.7.9.2, 64 bit, "any CPU"
download and install CMAKE 3.3; check PATH afterwards via Control Panel > System > Advanced > Environment
download and install BOOST 1.60 windows binaries from 3rd party site; destination c:\local\boost_1_60_0
- set BOOST environment variables via control panel: BOOST_ROOT, BOOST_INCLUDEDIR, BOOST_LIBRARYDIR
logout & login to update environment variables
download & build CPPUNIT 1.12 with VS2010, 64bit, Release; sln file is here:
http://blogs.powersoft.ca/erict/archive/2012/02/21/cppunit-in-vs2010ndashwith-a-sample.aspx
BUT BEFORE you build the solution, you have to change the solution to x64 and Release
- copy LIB and INCLUDE subdirectories to c:\local\cppunit_1.12.1
edit C:\Program Files\GNURadio-3.7\share\gnuradio\modtool\gr-newmod\cmake\Modules\findcppunit.cmake
[NB this will be a nuisance because you can't edit in situ - you have to copy the file somewhere, edit, then copy back]
scroll down to FIND_PATH, down further to PATHS, add line
C:/local/cppunit_1.12.1/include
in Windows Explorer, navigate to C:\Program Files\GNURadio-3.7\share\gnuradio\modtool\gr-newmod\cmake\build
- delete file: CMakeCache.txt
- delete subdirectory and all files \CMakeFiles
create directory gr-modules for OOT modules (e.g. c:\users\{yourname}\documents\gr-modules\
- copy link to gnuradio command prompt (i.e. from the Start Menu tree)
edit the link properties to start in the gr-modules directory; use this for all modtool invocations
- create two BAT files to invoke gr-modtool.py as follows:
@echo off
REM MT_New.bat
REM start from GRC Command Prompt in gr-modules directory
python "C:\Program Files\GNURadio-3.7\bin\gr_modtool.py" newmod "--srcdir=C:\Program Files\GNURadio-3.7\share\gnuradio\modtool\gr-newmod"
@echo off
REM MT_Add.bat
REM start from GRC Command Prompt, in the directory of your new module
python "C:\Program Files\GNURadio-3.7\bin\gr_modtool.py" add
create new module with modtool; then add block with modtool; edit code;
cd gr-modules\{modulename}\build
CMAKE ..
[expect errors if you asked for qa/test code - haven't figured that out yet]
copy {modulename}_{blockname}.xml file to C:\Program Files\GNURadio-3.7\share\gnuradio\grc\blocks
copy 2 files: \python\{blockname}.py and __init__.py to C:\Program Files\GNURadio-3.7\lib\site-packages\{modulename}\
Still todo is fix the qa code errors and work on C++.
Jake
_______________________________________________
Discuss-gnuradio mailing list
address@hidden
https://lists.gnu.org/mailman/listinfo/discuss-gnuradio
[Prev in Thread] | Current Thread | [Next in Thread] |