#!/usr/bin/env python # Copyright 2016 Free Software Foundation, Inc. # This file is part of GNU Radio # # GNU Radio Companion is free software; you can redistribute it and/or # modify it under the terms of the GNU General Public License # as published by the Free Software Foundation; either version 2 # of the License, or (at your option) any later version. # # GNU Radio Companion is distributed in the hope that it will be useful, # but WITHOUT ANY WARRANTY; without even the implied warranty of # MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the # GNU General Public License for more details. # # You should have received a copy of the GNU General Public License # along with this program; if not, write to the Free Software # Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA import os import sys GR_IMPORT_ERROR_MESSAGE = """\ Cannot import gnuradio. Is the model path environment variable set correctly? All OS: PYTHONPATH Is the library path environment variable set correctly? Linux: LD_LIBRARY_PATH Windows: PATH MacOSX: DYLD_LIBRARY_PATH """ def die(error, message): msg = "{0}\n\n({1})".format(message, error) exit(type(error).__name__ + '\n\n' + msg) def check_gnuradio_import(): try: from gnuradio import gr except ImportError as err: die(err, GR_IMPORT_ERROR_MESSAGE) def run_main(): script_path = os.path.dirname(os.path.abspath(__file__)) source_tree_subpath = "/grc/scripts" if not script_path.endswith(source_tree_subpath): # run the installed version from gnuradio.grc.compiler import main else: print("Running from source tree") sys.path.insert(1, script_path[:-len(source_tree_subpath)]) from grc.compiler import main exit(main()) if __name__ == '__main__': check_gnuradio_import() run_main()