Hello Phani,

thanks to Damiano's summary of proper usage of the external installation root,
it should now be a solvable riddle ...


Am Fri, 6 Apr 2018 20:25:08 -0500
schrieb Phani Siriki <yvsg.pha...@gmail.com>:

> [..]
>                                 json_get_var $interface "interface"
>                                 json_get_var $tx_power "tx_power"
> 
>                                 /usr/bin/python
> /root/change_wifi_tx_power.py  $interface $tx_power > /root/file 2>&1

You need to make sure, that the environment of this python process contains the
environment variables, that Damiano mentioned (specifically LD_LIBRARY_PATH).
Thus you need to source the /etc/profile file before the python-call above.

For your understanding: every process receives an "environment" (set of
textual variables with values) from its parent when it is started.
In your case, then shell script "foo" creates the python process. Thus the
shell script needs to prepare the environment, that the python process should
use. The set of variables that should be inherited by the child process, can be
configured via "export" (in a shell).
Thus it is not relevant, how your shell is configured, when you are interacting
with the script via ubus calls (e.g. "ubus call foo ..."). The only relevant
environment is the one, that is passed from the "foo" shell script to the
python process.

Cheers,
Lars
_______________________________________________
openwrt-users mailing list
openwrt-users@lists.openwrt.org
https://lists.openwrt.org/cgi-bin/mailman/listinfo/openwrt-users

Reply via email to