Przemysław Czerpak wrote: > > the standard parameter delimiter is '-'. '/' is MS "extensions" which > works only in DOS based systems. In all shells '-c <string>' can be > used to execute command specified in <string>. All other parameters > passed after <string> are parameters of executed command. > >> Not invisibly. We are sending it as <cCmd>, <cArgs> where >> cCmd == /bin/bash >> cArgs == /home/baz/tmp/ahrl8i.sh && hbmk2 /home/baz/hash/ash.hbp -q >> -trace >> -info -lang=en > > I guess that /home/baz/tmp/ahrl8i.sh contains some environment variables > settings. It will not work as you want for few reasons. > 1. shell will try to execute above cArgs as single command and should show > the message that such file does not exist. You should use "-c" switch > before. > 2. /home/baz/tmp/ahrl8i.sh does not have executable attribute so after > fixing the problem in point 1 you will have message like: > /home/baz/tmp/ahrl8i.sh: Permission denied > 3. If you set executable attribute (point 2) then you exploit next > problem. > All environment variables set by /home/baz/tmp/ahrl8i.sh are local to > /home/baz/tmp/ahrl8i.sh and are not visible for hbmk2 and its child > processes. To resolve it you should not execute /home/baz/tmp/ahrl8i.sh > as normal file but _include_ it to the current shell. Included files > does not need executable attribute so you will not have to problem in > point 2. To include file you can use "." command, i.e.: > . /home/baz/tmp/ahrl8i.sh > BTW the extension like .sh have no meaning in *nixes so you can ignore > them. > You can also remove "#!/bin/sh" from included files because "#" is > used as comment (like REM in BATCH files). > > In summary the final command should look like: > > cmd := 'sh -c ". /home/baz/tmp/ahrl8i.sh && hbmk2 > /home/baz/hash/ash.hbp"' > cmd += ' -q -trace -info -lang=en' > HB_PROCESSRUN( cmd ) > > I do not know the QProcess parameters so I cannot tell you how exactly > it should look. Your comment above suggests that it should be enough > to make: > cCmd := '/bin/sh' > cArgs := '-c ". /home/baz/tmp/ahrl8i.sh && hbmk2 > /home/baz/hash/ash.hbp"' > cArgs += ' -q -trace -info -lang=en' >
Thanks for this very well explained tutorial. ----- enjoy hbIDEing... Pritpal Bedi http://hbide.vouch.info/ -- View this message in context: http://n2.nabble.com/HBIDE-Project-build-start-folder-problem-tp4861627p4877740.html Sent from the harbour-devel mailing list archive at Nabble.com. _______________________________________________ Harbour mailing list (attachment size limit: 40KB) Harbour@harbour-project.org http://lists.harbour-project.org/mailman/listinfo/harbour