I think that the remaining problem comes from the fact that you have OTB 
libraries in /usr/lib/x86_64-linux-gnu/. This is why I suggest avoiding 
packages from the distribution.

Your LD_LIBRARY_PATH contains /usr/lib/x86_64-linux-gnu/ and does not contain 
/home/alobo/OTB-6.6.0-Linux64/lib where the good library is located.

The fact that the correct otbcli_* is found is misleading, because the command 
line applications are just wrappers for shared libs.

On Thu 20-Dec-2018 at 13:02:13 +01, Agustin Lobo <alobolis...@gmail.com> wrote: 
> Thanks.
> ok, I can solve the source problem, but not the main problem. If my
> script is just
> . /home/alobo/OTB-6.6.0-Linux64/otbenv.profile
> echo $OTB_APPLICATION_PATH
> echo $LD_LIBRARY_PATH
> which otbcli
> which otbcli_BandMathX
>
> I run from within R with system() and get:
>> system("sh /home/alobo/test.scr", intern=TRUE)
> [1] "/home/alobo/OTB-6.6.0-Linux64/lib/otb/applications"
> [2] 
> "/usr/lib/R/lib::/lib:/usr/lib/x86_64-linux-gnu:/usr/lib/jvm/default-java/lib/server"
> [3] "/home/alobo/OTB-6.6.0-Linux64/bin/otbcli"
> [4] "/home/alobo/OTB-6.6.0-Linux64/bin/otbcli_BandMathX"
>
> which is correct.
>
> But the poblem with otbcli_BandMathX remains. As soon as I add 
> otbcli_BandMathX
> . /home/alobo/OTB-6.6.0-Linux64/otbenv.profile
> echo $OTB_APPLICATION_PATH
> echo $LD_LIBRARY_PATH
> which otbcli
> which otbcli_BandMathX
> otbcli_BandMathX
>
> I get:
>
>> system("sh /home/alobo/test.scr", intern=TRUE)
> /home/alobo/OTB-6.6.0-Linux64/bin/otbApplicationLauncherCommandLine:
> symbol lookup error: /usr/lib/x86_64-linux-gnu/libOTBCommon-6.6.so.1:
> undefined symbol:
> _ZN3itk10LoggerBase5WriteENS0_17PriorityLevelTypeERKNSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEEE
> Error in system("sh /home/alobo/test.scr", intern = TRUE) :
>   error in running command
>
> Same problem for otbcli commands (which are now
> /home/alobo/OTB-6.6.0-Linux64/bin/otbcli)
>
> So, something else has to be set for these commands to work from
> within R, both otbcli and otbcli_BandMathX run ok from the terminal.
> What could be different between this version and the older one that
> actually works from within R?
>
> Agus
>
> On Thu, Dec 20, 2018 at 11:37 AM Jordi Inglada <jordi.ingl...@cesbio.eu> 
> wrote:
>>
>>
>> The problem you have when sourcing from R is that "source" is not a command, 
>> but a built-in bash function which may not be available.
>>
>> Try with '.' instead of source, or include the contents of the config script 
>> in your scr file.
>>
>> On Thu 20-Dec-2018 at 11:08:52 +01, Agustin Lobo <alobolis...@gmail.com> 
>> wrote:
>> > Thanks Guillaume. I think I have "environment problems"!!
>> >
>> > 1. Outside R
>> > Whenever I start a shell (Xfce Terminal) I get
>> > bash: LD_LIBRARY_PATH: command not found
>> > (do not know why and do not know if it matters)
>> >
>> > Then I do
>> > alobo@Delia:~$ echo $OTB_APPLICATION_PATH
>> >
>> > alobo@Delia:~$ echo $LD_LIBRARY_PATH
>> > :/usr/local/lib/otb
>> >
>> > All otbcli work:
>> > alobo@Delia:~$ otbcli
>> > Usage: /usr/bin/otbApplicationLauncherCommandLine module_name
>> > [MODULEPATH] [arguments]
>> >
>> > But
>> > alobo@Delia:~$ which otbcli
>> > /usr/bin/otbcli
>> >
>> > And BandMathX does not work:
>> > alobo@Delia:~$ BandMathX
>> > bash: BandMathX: command not found
>> >
>> > BandMathX works if I use the path:
>> > alobo@Delia:~$ /home/alobo/OTB-6.6.0-Linux64/bin/otbcli_BandMathX
>> > ERROR: Waiting for at least one parameter.
>> > etc
>> >
>> > Then I do
>> > alobo@Delia:~$ source /home/alobo/OTB-6.6.0-Linux64/otbenv.profile
>> > alobo@Delia:~$ echo $OTB_APPLICATION_PATH
>> > /home/alobo/OTB-6.6.0-Linux64/lib/otb/applications
>> > alobo@Delia:~$ echo $LD_LIBRARY_PATH
>> > :/usr/local/lib/otb
>> >
>> > Which sets the path for the new version
>> > alobo@Delia:~$ which otbcli
>> > /home/alobo/OTB-6.6.0-Linux64/bin/otbcli
>> > alobo@Delia:~$ which otbcli_BandMathX
>> > /home/alobo/OTB-6.6.0-Linux64/bin/otbcli_BandMathX
>> >
>> > 2. Given test.scr
>> > source /home/alobo/OTB-6.6.0-Linux64/otbenv.profile
>> > echo $OTB_APPLICATION_PATH
>> > echo $LD_LIBRARY_PATH
>> > otbcli
>> > /home/alobo/OTB-6.6.0-Linux64/bin/otbcli_BandMathX
>> >
>> > Running from within R with system("sh /home/alobo/test.scr") I get:
>> >
>> > /home/alobo/test.scr: 1: /home/alobo/test.scr: source: not found
>> > Usage: /usr/bin/otbApplicationLauncherCommandLine module_name
>> > [MODULEPATH] [arguments]
>> > /home/alobo/OTB-6.6.0-Linux64/bin/otbApplicationLauncherCommandLine:
>> > symbol lookup error: /usr/lib/x86_64-linux-gnu/libOTBCommon-6.6.so.1:
>> > undefined symbol:
>> > _ZN3itk10LoggerBase5WriteENS0_17PriorityLevelTypeERKNSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEEE
>> > Error in system("sh /home/alobo/test.scr", intern = TRUE) :
>> >   error in running command
>> >
>> > So, from within R, otbcli commands work,
>> > /home/alobo/OTB-6.6.0-Linux64/bin/otbcli_BandMathX  does not work
>> > source is unknown (!!!??)
>> >
>> > I think I have found a clue, because
>> > /home/alobo/OTB-6.6.0-Linux64/bin/otbcli
>> > does not work either from within R (same error as otbcli_BandMathX)
>> > so the otbcli that is run from within R is a different one.
>> >
>> > Running an script with
>> > echo $OTB_APPLICATION_PATH
>> > echo $LD_LIBRARY_PATH
>> > which otbcli
>> >
>> > from within R results in:
>> > [1] ""
>> > [2] 
>> > "/usr/lib/R/lib::/lib:/usr/lib/x86_64-linux-gnu:/usr/lib/jvm/default-java/lib/server"
>> > [3] "/usr/bin/otbcli"
>> >
>> > Which means I have an older otbcli that is the one actually working
>> > from within R (but otbcli_BandMatX did not exist yet),
>> > and I have a problem for running the new version OTB-6.6.0-Linux64
>> > from within R because I cannot source otbenv.profile
>> > from within R, but why???
>> >
>> > Any help appreciated...
>> > Agus
>> >
>> > On Wed, Dec 19, 2018 at 6:00 PM PASERO Guillaume
>> > <guillaume.pas...@c-s.fr> wrote:
>> >>
>> >> Hi,
>> >>
>> >> I would say it is a conflict between your standalone package
>> >> '/home/alobo/OTB-6.6.0-Linux64' and your system OTB libs
>> >> '/usr/lib/x86_64-linux-gnu/libOTBCommon-6.6.so.1'.
>> >>
>> >> Maybe add some prints in the ./tmp/test.scr script to check the
>> >> content of variables like OTB_APPLICATION_PATH, LD_LIBRARY_PATH, just
>> >> before calling otbcli_BandMathX
>> >>
>> >> Regards,
>> >> Guillaume
>> >>
>> >> Quoting Agustin Lobo <alobolis...@gmail.com>:
>> >>
>> >> > In order to run otbcli* commands from within R, I normally use the R
>> >> > system() command that let run any system command as if it were on the
>> >> > terminal.
>> >> >
>> >> > For otbcli_BandMathX I have a problem. I write from within R a simple
>> >> > text file with the following script (as ./tmp/test.scr)
>> >> >
>> >> > source /home/alobo/OTB-6.6.0-Linux64/otbenv.profile
>> >> > /home/alobo/OTB-6.6.0-Linux64/bin/otbcli_BandMathX -il ima1.tif
>> >> > ima2.tif -out result.tif -exp 'im1 div im2'
>> >> >
>> >> > and then try to execute with
>> >> > system("sh ./tmp/test.scr")
>> >> >
>> >> > But surprisingly I get a weird error:
>> >> >
>> >> > /home/alobo/OTB-6.6.0-Linux64/bin/otbApplicationLauncherCommandLine:
>> >> > symbol lookup error: /usr/lib/x86_64-linux-gnu/libOTBCommon-6.6.so.1:
>> >> > undefined symbol:
>> >> > _ZN3itk10LoggerBase5WriteENS0_17PriorityLevelTypeERKNSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEEE
>> >> >
>> >> > I can run
>> >> > sh ./tmp/test.scr
>> >> > on the terminal with no problems.
>> >> >
>> >> > Does this error mean anything to you?
>> >> > I'm not trying that you solve an R problem, but I guess this is rather
>> >> > a problem with otbcli_BandMathX, because the same approach works for
>> >> > the rest of otbcli* commands.
>> >> >
>> >> > Agus
>> >> >
>> >> > --
>> >> > --
>> >> > Check the OTB FAQ at
>> >> > http://www.orfeo-toolbox.org/FAQ.html
>> >> >
>> >> > You received this message because you are subscribed to the Google
>> >> > Groups "otb-users" group.
>> >> > To post to this group, send email to otb-users@googlegroups.com
>> >> > To unsubscribe from this group, send email to
>> >> > otb-users+unsubscr...@googlegroups.com
>> >> > For more options, visit this group at
>> >> > http://groups.google.com/group/otb-users?hl=en
>> >> > ---
>> >> > You received this message because you are subscribed to the Google
>> >> > Groups "otb-users" group.
>> >> > To unsubscribe from this group and stop receiving emails from it,
>> >> > send an email to otb-users+unsubscr...@googlegroups.com.
>> >> > For more options, visit https://groups.google.com/d/optout.
>> >>
>> >>
>> >> --
>> >> --
>> >> Check the OTB FAQ at
>> >> http://www.orfeo-toolbox.org/FAQ.html
>> >>
>> >> You received this message because you are subscribed to the Google
>> >> Groups "otb-users" group.
>> >> To post to this group, send email to otb-users@googlegroups.com
>> >> To unsubscribe from this group, send email to
>> >> otb-users+unsubscr...@googlegroups.com
>> >> For more options, visit this group at
>> >> http://groups.google.com/group/otb-users?hl=en
>> >> ---
>> >> You received this message because you are subscribed to the Google Groups 
>> >> "otb-users" group.
>> >> To unsubscribe from this group and stop receiving emails from it, send an 
>> >> email to otb-users+unsubscr...@googlegroups.com.
>> >> For more options, visit https://groups.google.com/d/optout.
>> >
>> > --
>>
>> --
>> --
>> Check the OTB FAQ at
>> http://www.orfeo-toolbox.org/FAQ.html
>>
>> You received this message because you are subscribed to the Google
>> Groups "otb-users" group.
>> To post to this group, send email to otb-users@googlegroups.com
>> To unsubscribe from this group, send email to
>> otb-users+unsubscr...@googlegroups.com
>> For more options, visit this group at
>> http://groups.google.com/group/otb-users?hl=en
>> ---
>> You received this message because you are subscribed to the Google Groups 
>> "otb-users" group.
>> To unsubscribe from this group and stop receiving emails from it, send an 
>> email to otb-users+unsubscr...@googlegroups.com.
>> For more options, visit https://groups.google.com/d/optout.
>
> -- 

-- 
-- 
Check the OTB FAQ at
http://www.orfeo-toolbox.org/FAQ.html

You received this message because you are subscribed to the Google
Groups "otb-users" group.
To post to this group, send email to otb-users@googlegroups.com
To unsubscribe from this group, send email to
otb-users+unsubscr...@googlegroups.com
For more options, visit this group at
http://groups.google.com/group/otb-users?hl=en
--- 
You received this message because you are subscribed to the Google Groups 
"otb-users" group.
To unsubscribe from this group and stop receiving emails from it, send an email 
to otb-users+unsubscr...@googlegroups.com.
For more options, visit https://groups.google.com/d/optout.

Reply via email to