Hello.
There is a mess with 'prefix' argument to 'make install' (as suggested by INSTALL text) in stable CVS version. SER is installed in correct place, but is still trying to search ser.cfg in /usr/local/etc/ser/ by default.
This happens due to the fact that the default value of $prefix (/usr/local) is used (CFG_DIR = $cfg-target = $prefix/$cfg-dir) during compilation (when no prefix is given). So, installing to different location with 'make prefix=xxx install' produces the mess.
Probably, the described issue affects other pieces of software.
Workaround: always use make command with your prefix=xxx argument, i.e. $ make prefix=/my/prefix all; sudo make prefix=/my/prefix install
Could anybody fix the problem? (At least in INSTALL file.)
...Bye..Dmitry.
Thanks a lot for the report, fixing this is hardly possible (the problem can arise with other make parameters as well), but I put the following explanation into INSTALL file:
Note: If you use prefix parameter in make install then you also need to use this parameter in previous make commands, i.e. make, make modules, or make all. If you fail to do this then SER will look for the default configuration file in a wrong directory, because the directory of the default configuration file is hardcoded into ser during compile time. When you use a different prefix parameter when installing then the directory hardcoded in ser and the directory in which the file will be installed by make install will not match. (You can specify exact location of the configuration file using -f parameter of ser).
For example, if you do the following: make all make prefix=/ install
Then the installation will put the default configuration file into /etc/ser/ser.cfg (because prefix is /), but ser will look for the file in /usr/local/etc/ser/ser.cfg (because there was no prefix parameter in make all and /usr/local is the default value of prefix).
Workaround is trivial, use the same parameters in all make commands: make prefix=/ all make prefix=/ install
That applies to other make parameters as well (for example parameters "modules" or "excluded_modules").
Jan.
On 23-04 17:43, Dmitry Semyonov wrote:
Hello.
There is a mess with 'prefix' argument to 'make install' (as suggested by INSTALL text) in stable CVS version. SER is installed in correct place, but is still trying to search ser.cfg in /usr/local/etc/ser/ by default.
This happens due to the fact that the default value of $prefix (/usr/local) is used (CFG_DIR = $cfg-target = $prefix/$cfg-dir) during compilation (when no prefix is given). So, installing to different location with 'make prefix=xxx install' produces the mess.
Probably, the described issue affects other pieces of software.
Workaround: always use make command with your prefix=xxx argument, i.e. $ make prefix=/my/prefix all; sudo make prefix=/my/prefix install
Could anybody fix the problem? (At least in INSTALL file.)
...Bye..Dmitry.
Serusers mailing list serusers@lists.iptel.org http://lists.iptel.org/mailman/listinfo/serusers