You are not logged in.
Fresh install. Have installed gcc, gdb. Compilation of .c file through "Build" is successful. Bin runs normally when called from a terminal.
When clicking "Execute" the following message returns in a new terminal window:
Unable to find a shell
Also, the "geany_run_script.sh" is created, as it should. Its contents don't seem very informative though:
#!/bin/sh
rm $0
"./hello"
echo "
------------------
(program exited with code: $?)"
echo "Press return to continue"
#to be more compatible with shells like dash
dummy_var=""
read dummy_var
I see the "Execute" button does this: ./%e
In the geany manual I read:
%e - substituted by the name of the current file without the extension or path.
The above is fine, since %e is the output of "Build".
I check env and find "SHELL=/bin/bash" so thats not the problem.
The only thing that's not stock bl is the .xsessions file which I accidentally deleted
and copied back from /etc/x11 (they are identical except the dot, no?).
Should I also report this as a bug?
Last edited by thcloak (2017-01-17 12:55:53)
Offline
i never use geany to compile C, not sure if i can help, but...
have you looked at geany preferences?
esp. Tools => Terminal (mine says 'xterm -e "/bin/sh %c"')
and Terminal => Shell (mine says /bin/bash)
Offline
Yeah, I've seen this, mine is x-terminal-emulator -e "/bin/sh %c" which starts terminator. I am not familiar with this way of setting default applications e.g. x-terminal-emulator x-www-browser etc; I presume its an openbox convention? Anyway it points to terminator so nothing's wrong there. Also the shell one is correct. Could you check whether you can execute through geany? I'm pretty sure my system's vanilla so you should get the same error (unless of course you've fiddled with the shell, but still I'm pretty clueless so...).
I think the geany_run_script.sh must contain some clue since that's what the "%c" above points to. My script foo is abysmal though. Going to browse some scripting manual.
Last edited by thcloak (2017-01-15 13:41:49)
Offline
Ok the problem is with the syntax in
x-terminal-emulator -e "/bin/sh %c"
Something's wrong with the /bin/sh being inside the parentheses. But why, and what would work as a replacement?
Last edited by thcloak (2017-01-15 14:11:48)
Offline
...I am not familiar with this way of setting default applications e.g. x-terminal-emulator x-www-browser etc; I presume its an openbox convention?....
No, it is a DebianAlternatives thing: https://wiki.debian.org/DebianAlternatives
The Debian alternatives system was originally created for Debian but has been picked up by other GNU/Linux software distributions.
...so you have probably been using it already, in other distros.
Be Excellent to Each Other...
The Bunsenlabs Lithium Desktop » Here
FORUM RULES and posting guidelines «» Help page for forum post formatting
Artwork on DeviantArt «» BunsenLabs on DeviantArt
Offline
Well, last time I used something other than windows (repent!) or arch as my main system was back when I was a happy distrohopping noob. One day you think you know linux, and the next you realise you are still a noob. Oh well, thanks life.
Offline
Try removing the quote marks like this:
x-terminal-emulator -e /bin/sh %c
That worked for me.
Offline
Will mark this as solved when I get to try it. I recon its the syntax of terminator -e that's created this confusion. Will investigate. Thanks for the help.
Offline