how did you create an icon and caused it to be used in the first place? do you think you can repeat the process, only this time making it work?
what does an icon have to do with whither or not a program runs properly?
why do you need to use sudo to fire up an >application< , have you tired the same thing without sudo?
how is this icon being used to do this?
for installing manually and setting up for the programs to show up in a menu system you still need to create a desktop file for for them located in
/usr/share/applications.
what I do some times is open one already created, one that is close to what I installed, that being for example popcorn time, I opened up qbittorrent, saved it as popcorntime.desktop then modded it to reflect where that one is, so the category and mime is already set, and save me some typing. This also might be why your first program is not running, as I do not see why a programming IDE or whatever needs to be ran with root permissions in a user login.
Code:
[Desktop Entry]
Type=Application
Version=1.0
Name=Geany
GenericName=Integrated Development Environment
Comment=A fast and lightweight IDE using GTK+
Exec=geany %F
Icon=geany
Terminal=false
Categories=GTK;Development;IDE;
MimeType=text/plain;text/x-chdr;text/x-csrc;text/x-c++hdr;text/x-c++src;text/x-$
StartupNotify=true
Keywords=Text;Editor;
geany for example it is located in development section in menus.
programs are default installed where? /usr/bin , or /usr/local/bin
whereis <
program name >
after installing something using locate, first
sudo updatedb, then
locate < p
rogram name >