Location of config files

Hi all!

To keep two different versions of gnuradio I used two different
install-prefixes.
/usr/local/gnuradio-3.6 and
/usr/local/gnuradio-3.7

The idea was to switch between the two versions by setting a symbolic
link
/usr/local/gnuradio to the directory just required.

The installation works find but the second installation overwrites the
config files of the first installation as both config files go to
/usr/local/etc instead of /etc.

Is this a bug or a feature?

– Volker

$ gnuradio-config-info --prefix
$ gnuradio-config-info --sysconfdir

schroer@tux64 ~ $ gnuradio-config-info --prefix
/usr/local/gnuradio-3.7
schroer@tux64 ~ $ gnuradio-config-info --sysconfdir
/usr/local/etc

and

schroer@tux64 ~ $ gnuradio-config-info --prefix
/usr/local/gnuradio-3.6
schroer@tux64 ~ $ gnuradio-config-info --sysconfdir
/usr/local/etc

On Wed, May 29, 2013 at 3:38 AM, Volker S. [email protected] wrote:

/usr/local/etc instead of /etc.

Can you run these two commands, each with the symlink set to the
different
directories, and post the output?

$ gnuradio-config-info --prefix
$ gnuradio-config-info --sysconfdir

Running with multiple versions of GNU Radio installed the way you are
describing works, but may involve more than just using the symlink.
Here
is an FAQ entry describing one way to do it:

http://gnuradio.org/redmine/projects/gnuradio/wiki/FAQ#Experts-only-How-can-I-deliberately-install-GNU-Radio-multiple-times-different-versions

On Wed, May 29, 2013 at 5:49 AM, Volker S. [email protected] wrote:

schroer@tux64 ~ $ gnuradio-config-info --prefix
/usr/local/gnuradio-3.6
schroer@tux64 ~ $ gnuradio-config-info --sysconfdir
/usr/local/etc

Ok, somehow the CMake configuration is messing up the calculation of
sysconfdir. The line at:

http://gnuradio.org/cgit/gnuradio.git/tree/CMakeLists.txt#n128

…should be appending ‘etc’ to the install prefix, which as shown above
is
correct. But instead it is getting appended to ‘/usr/local’, which is
the
default value if you don’t specify a custom one when running cmake. I’m
not sure what to make of this yet, but it is definitely a bug.

I’m pretty sure this doesn’t happen if you start with a clean build dir.
If you run cmake with -DCMAKE_INSTALL_PREFIX, all paths will be correct.
Only if you re-run cmake with a new -DCMAKE_INSTALL_PREFIX, it will only
update the install path, not the config path. If you’re doing that, you
must explicitly set SYSCONFDIR as well.

This was a clean build in a newly created build directory.

– Volker

On Wed, May 29, 2013 at 06:02:54AM -0700, Johnathan C. wrote:

Ok, somehow the CMake configuration is messing up the calculation of
sysconfdir. The line at:

CMakeLists.txt - gnuradio.git - GNU Radio

…should be appending ‘etc’ to the install prefix, which as shown above is
correct. But instead it is getting appended to ‘/usr/local’, which is the
default value if you don’t specify a custom one when running cmake. I’m not
sure what to make of this yet, but it is definitely a bug.

I’m pretty sure this doesn’t happen if you start with a clean build dir.
If you run cmake with -DCMAKE_INSTALL_PREFIX, all paths will be correct.
Only if you re-run cmake with a new -DCMAKE_INSTALL_PREFIX, it will only
update the install path, not the config path. If you’re doing that, you
must explicitly set SYSCONFDIR as well.

MB


Karlsruhe Institute of Technology (KIT)
Communications Engineering Lab (CEL)

Dipl.-Ing. Martin B.
Research Associate

Kaiserstraße 12
Building 05.01
76131 Karlsruhe

Phone: +49 721 608-43790
Fax: +49 721 608-46071
www.cel.kit.edu

KIT – University of the State of Baden-Württemberg and
National Laboratory of the Helmholtz Association