LinuxQuestions.org
Visit Jeremy's Blog.
Go Back   LinuxQuestions.org > Forums > Linux Forums > Linux - Software
User Name
Password
Linux - Software This forum is for Software issues.
Having a problem installing a new program? Want to know which application is best for the job? Post your question in this forum.

Notices


Reply
  Search this Thread
Old 03-08-2014, 12:42 AM   #1
Fixit7
Senior Member
 
Registered: Mar 2014
Location: El Lago, Texas
Distribution: Ubuntu_Mate 16.04
Posts: 1,374

Rep: Reputation: 169Reputation: 169
Programming recommendations


I would like to program for Linux.

My background includes 32 bit assembly and C programming in Windows.

I would prefer a GUI based program.

Thanks.
 
Old 03-08-2014, 04:00 AM   #2
Doc CPU
Senior Member
 
Registered: Jun 2011
Location: Stuttgart, Germany
Distribution: Mint, Debian, Gentoo, Win 2k/XP
Posts: 1,099

Rep: Reputation: 344Reputation: 344Reputation: 344Reputation: 344
Hi there,

Quote:
Originally Posted by Fixit7 View Post
I would like to program for Linux.

My background includes 32 bit assembly and C programming in Windows.

I would prefer a GUI based program.
well, fine ...
so what's your question now?

Do you search for a programming tutorial?
Are you pondering about which IDE you could use (btw, I prefer Code::Blocks)?
Are you going to cross-compile on a Windows box, or natively on Linux?
Will you write console or GUI applications (I only did non-GUI things yet)?
If GUI, are you looking for a recommendation on the GUI framework (QT, GTK) to use?

Lots of questions for you to cover in order to get good, helpful advice.

[X] Doc CPU
 
1 members found this post helpful.
Old 03-08-2014, 04:20 AM   #3
Fixit7
Senior Member
 
Registered: Mar 2014
Location: El Lago, Texas
Distribution: Ubuntu_Mate 16.04
Posts: 1,374

Original Poster
Rep: Reputation: 169Reputation: 169
Quote:
Originally Posted by Doc CPU View Post
Hi there,



well, fine ...
so what's your question now?

Do you search for a programming tutorial?
Are you pondering about which IDE you could use (btw, I prefer Code::Blocks)?
Are you going to cross-compile on a Windows box, or natively on Linux?
Will you write console or GUI applications (I only did non-GUI things yet)?
If GUI, are you looking for a recommendation on the GUI framework (QT, GTK) to use?

Lots of questions for you to cover in order to get good, helpful advice.

[X] Doc CPU
I guess you are not familiar with Windows programming. Kein Problem!

I do not need a programming tutorial, as I have been programming for 15 + years.

I stated Linux programming in my post, so I do not need to cross compile.

I am interested in console and GUI programming.

Take care,
Andy

happynews.com
 
Old 03-08-2014, 04:56 AM   #4
Doc CPU
Senior Member
 
Registered: Jun 2011
Location: Stuttgart, Germany
Distribution: Mint, Debian, Gentoo, Win 2k/XP
Posts: 1,099

Rep: Reputation: 344Reputation: 344Reputation: 344Reputation: 344
Hi there,

Quote:
Originally Posted by Fixit7 View Post
I guess you are not familiar with Windows programming. Kein Problem!
oh, yes I am. Für mich auch kein Problem.

Quote:
Originally Posted by Fixit7 View Post
I do not need a programming tutorial, as I have been programming for 15 + years.
Me, too. And we seem to share the same focus on C and assembly language.

Quote:
Originally Posted by Fixit7 View Post
I stated Linux programming in my post, so I do not need to cross compile.
You mentioned being a long-time Windows programmer, so the idea of still using the familiar Windows environment and developing "on Windows", but "for Linux" isn't too far-fetched, I think. In the same way I'm still writing Windows programs occasionally, and for that purpose I use my Linux machine, a comfortable IDE (I mentioned Code:Blocks as my personal recommendation) and mingw32 as a cross-compiler.

Quote:
Originally Posted by Fixit7 View Post
I am interested in console and GUI programming.
Okay. But I still don't get what you're specifically asking for - unless your post wasn't meant as a question, but rather as a statement. It didn't contain an explicit question, after all, only a general intention.

[X] Doc CPU
 
1 members found this post helpful.
Old 03-08-2014, 05:05 AM   #5
sycamorex
LQ Veteran
 
Registered: Nov 2005
Location: London
Distribution: Slackware64-current
Posts: 5,836
Blog Entries: 1

Rep: Reputation: 1251Reputation: 1251Reputation: 1251Reputation: 1251Reputation: 1251Reputation: 1251Reputation: 1251Reputation: 1251Reputation: 1251
What Doc CPU is referring to is the fact that you haven't actually asked any question so we are not really sure how we can help you.
 
1 members found this post helpful.
Old 03-08-2014, 06:59 AM   #6
johnsfine
LQ Guru
 
Registered: Dec 2007
Distribution: Centos
Posts: 5,286

Rep: Reputation: 1197Reputation: 1197Reputation: 1197Reputation: 1197Reputation: 1197Reputation: 1197Reputation: 1197Reputation: 1197Reputation: 1197
Quote:
Originally Posted by Fixit7 View Post
I would prefer a GUI based program.
That sounds like you are asking for an IDE.

An IDE is a program like Visual Studio that combines the tasks of editing code, building, and debugging into an integrated GUI.

Several IDE's are available for Linux.

By "a GUI based program" you might be asking for a "GUI toolkit", a package of libraries to be used inside a GUI program that you write.

In Visual Studio, Microsoft doesn't identify those things as separate items. In Linux you bring together all the pieces you choose:

A compiler (obvious, but in Linux separate).
An IDE, so you are using a GUI while developing your program.
A GUI toolkit so your program is a GUI.

The overwhelmingly popular compiler in Linux is gcc. Intel sells a better compiler for x86 and x86_64 Linux. But gcc is free and very near as good as Intel's.

Code::Blocks, KDevelop and Eclipse CDT are some of the popular IDEs available for Linux.

Qt and GTK are popular GUI toolkits available for Linux.

Last edited by johnsfine; 03-08-2014 at 07:09 AM.
 
1 members found this post helpful.
Old 03-08-2014, 01:12 PM   #7
Fixit7
Senior Member
 
Registered: Mar 2014
Location: El Lago, Texas
Distribution: Ubuntu_Mate 16.04
Posts: 1,374

Original Poster
Rep: Reputation: 169Reputation: 169
Thanks.

You understood my post.

I will try out Kdevelope and see how it goes.

Andy
 
Old 03-08-2014, 01:16 PM   #8
Fixit7
Senior Member
 
Registered: Mar 2014
Location: El Lago, Texas
Distribution: Ubuntu_Mate 16.04
Posts: 1,374

Original Poster
Rep: Reputation: 169Reputation: 169
Quote:
Originally Posted by Doc CPU View Post
Hi there,

You mentioned being a long-time Windows programmer, so the idea of still using the familiar Windows environment and developing "on Windows", but "for Linux" isn't too far-fetched, I think. In the same way I'm still writing Windows programs occasionally, and for that purpose I use my Linux machine, a comfortable IDE (I mentioned Code:Blocks as my personal recommendation) and mingw32 as a cross-compiler.

[X] Doc CPU

I am not interested in using Windows to create Linux programs.

Better to do it directly from Linux and in my case Puppy 5.6.0.

I am looking for recommendations for a programming package.

Andy
 
Old 03-08-2014, 01:54 PM   #9
sycamorex
LQ Veteran
 
Registered: Nov 2005
Location: London
Distribution: Slackware64-current
Posts: 5,836
Blog Entries: 1

Rep: Reputation: 1251Reputation: 1251Reputation: 1251Reputation: 1251Reputation: 1251Reputation: 1251Reputation: 1251Reputation: 1251Reputation: 1251
Quote:
Originally Posted by Fixit7 View Post
I am not interested in using Windows to create Linux programs.

Better to do it directly from Linux and in my case Puppy 5.6.0.

I am looking for recommendations for a programming package.

Andy
Unless your machine is particularly low on resources, I'd recommended one of the much more fully featured Linux distributions (Linux Mint, Ubuntu, Debian, OpenSuse, Slackware, etc). Especially if you're going to use KDevelop. KDevelop is part of KDE SC, which is a quite heavy desktop environment. I don't think it's available on Puppy as it's mainly targeted at low specs machines.

What do you mean by 'a programming package'? The programming language itself? The KDevelop package?

Edit: For a few seconds I thought I was losing it. I saw a Windows logo on my post while I'm posting it from Slackware. It took me a few seconds to realise that it's the firefox user agent plugin set to Windows to be able to watch Netflix.

Last edited by sycamorex; 03-08-2014 at 01:57 PM.
 
1 members found this post helpful.
Old 03-08-2014, 10:53 PM   #10
Fixit7
Senior Member
 
Registered: Mar 2014
Location: El Lago, Texas
Distribution: Ubuntu_Mate 16.04
Posts: 1,374

Original Poster
Rep: Reputation: 169Reputation: 169
I have tried those distros but can not stand the fact that I can't run as root using GUI type programs.

And when I asked how in their forums, they would not help me.

They would say, "Why would you want to do that ?"

For example, I had to use Puppy to edit the grub.cfg file for Mint, which I feel is ridiculous.

Just my opinion. :-)

Andy
 
Old 03-09-2014, 03:51 AM   #11
Doc CPU
Senior Member
 
Registered: Jun 2011
Location: Stuttgart, Germany
Distribution: Mint, Debian, Gentoo, Win 2k/XP
Posts: 1,099

Rep: Reputation: 344Reputation: 344Reputation: 344Reputation: 344
Hi there,

Quote:
Originally Posted by Fixit7 View Post
I have tried those distros but can not stand the fact that I can't run as root using GUI type programs.
that is just not true. I used Ubuntu for a while, and I've been using its fork Mint now for about two years - you can always use "sudo" to run any program with root privileges. GUI programs too. You can even use "gksu" instead, which is fully GUI oriented and even requests the password using a message box instead of the terminal. Or, if you prefer the command line, of course you can log into a console as root. To do so, however, you must first give root a password.

Quote:
Originally Posted by Fixit7 View Post
And when I asked how in their forums, they would not help me.
They would say, "Why would you want to do that ?"
Bad manners. Though I can understand their reluctance to some extent, they may simply have misunderstood you; maybe your question was phrased ambiguously. They may have thought you wanted to log in to the GUI and desktop as root, which is in fact impossible with the default configuration of those distros (but possible as soon as root is given a password). It's right to discourage people from doing so, because the whole bunch of background processes of the desktop environment would run under the root account then.
However, this isn't necessary at all. As mentioned above, you can have a root shell while primarily being logged in as a regular user, and you can use sudo or gksu to issue commands or launch processes as root.

Quote:
Originally Posted by Fixit7 View Post
For example, I had to use Puppy to edit the grub.cfg file for Mint, which I feel is ridiculous.
Just my opinion. :-)
I see. But that opinion is based on a lack of knowledge. A simple
Code:
sudo nano /boot/grub/grub.cfg
plus re-entering your password when prompted for it would do the trick.
Btw, editing the grub.cfg file directly is not recommended for GRUB2, as it is recreated each time the GRUB configuration is updated automatically. Better edit /etc/default/grub and/or the scripts in /etc/grub.d instead.

So let's calm down and get back to business. ;-)

[X] Doc CPU
 
1 members found this post helpful.
Old 03-09-2014, 05:10 AM   #12
sycamorex
LQ Veteran
 
Registered: Nov 2005
Location: London
Distribution: Slackware64-current
Posts: 5,836
Blog Entries: 1

Rep: Reputation: 1251Reputation: 1251Reputation: 1251Reputation: 1251Reputation: 1251Reputation: 1251Reputation: 1251Reputation: 1251Reputation: 1251
Quote:
Originally Posted by Fixit7 View Post
I have tried those distros but can not stand the fact that I can't run as root using GUI type programs.

And when I asked how in their forums, they would not help me.

They would say, "Why would you want to do that ?"

For example, I had to use Puppy to edit the grub.cfg file for Mint, which I feel is ridiculous.

Just my opinion. :-)

Andy
Hi Andy,

Well, as a general rule, there are very few situations where you'd need to start GUI programs as root. For security reasons it is discouraged from. As mentioned above, a simple 'sudo' command would do in situations that you described. Having said that, I remember installing Linux Mint for a friend a few years ago and being frustrated at the amount of hand holding and restrictions.

Try distros such as Slackware, Arch, Debian. In most cases the system will let you do anything you want (especially true of Slackware). That, obviously, comes at a price that if you do something you shouldn't do, you may easily break the system. It will make it necessary for you to spend slightly more time configuring/maintaining because everything will be in your hands but that's how a lot of people like it. When I got more experienced with Linux, I started appreciating the freedom and customisability and have been happily using Slackware as my only distro for 6-7 years now. Obviously, you may like more Arch or Debian (Arch may require even more manual configuration).

My opinion is that distros such as Puppy are great but are targeted at and design for specific situations (low end specs hardware) and for that reason have somewhat limited features. You'd be unnecessarily losing on Linux experience if you were using it on modern hardware that is capable of running something much more feature packed.
 
1 members found this post helpful.
Old 03-09-2014, 12:41 PM   #13
metaschima
Senior Member
 
Registered: Dec 2013
Distribution: Slackware
Posts: 1,982

Rep: Reputation: 492Reputation: 492Reputation: 492Reputation: 492Reputation: 492
If you know C, you can use gtk2 or gtk3 to make GUI programs. You can make console programs using just gcc and glibc.
 
1 members found this post helpful.
Old 03-09-2014, 05:37 PM   #14
Fixit7
Senior Member
 
Registered: Mar 2014
Location: El Lago, Texas
Distribution: Ubuntu_Mate 16.04
Posts: 1,374

Original Poster
Rep: Reputation: 169Reputation: 169
Quote:
Originally Posted by Doc CPU View Post
Hi there,



that is just not true. I used Ubuntu for a while, and I've been using its fork Mint now for about two years - you can always use "sudo" to run any program with root privileges. GUI programs too. You can even use "gksu" instead, which is fully GUI oriented and even requests the password using a message box instead of the terminal. Or, if you prefer the command line, of course you can log into a console as root. To do so, however, you must first give root a password.



Bad manners. Though I can understand their reluctance to some extent, they may simply have misunderstood you; maybe your question was phrased ambiguously. They may have thought you wanted to log in to the GUI and desktop as root, which is in fact impossible with the default configuration of those distros (but possible as soon as root is given a password). It's right to discourage people from doing so, because the whole bunch of background processes of the desktop environment would run under the root account then.
However, this isn't necessary at all. As mentioned above, you can have a root shell while primarily being logged in as a regular user, and you can use sudo or gksu to issue commands or launch processes as root.



I see. But that opinion is based on a lack of knowledge. A simple
Code:
sudo nano /boot/grub/grub.cfg
plus re-entering your password when prompted for it would do the trick.
Btw, editing the grub.cfg file directly is not recommended for GRUB2, as it is recreated each time the GRUB configuration is updated automatically. Better edit /etc/default/grub and/or the scripts in /etc/grub.d instead.

So let's calm down and get back to business. ;-)

[X] Doc CPU
How is sudo going to work when I am running Thunar for example ?

(I am not talking about running from a console.)

< They may have thought you wanted to log in to the GUI and desktop as root, which is in fact impossible with the default < configuration of those distros .

The above is exactly what I want and so far only Puppy let's me.

I don't mind entering a password once for a computer session.
But everytime I want to mount something, etc is time consuming.

I am a very calm person, I think you misunderstood a valid point and one which is shared by a lot of other's new to Linux.

Andy
 
Old 03-09-2014, 08:08 PM   #15
Fixit7
Senior Member
 
Registered: Mar 2014
Location: El Lago, Texas
Distribution: Ubuntu_Mate 16.04
Posts: 1,374

Original Poster
Rep: Reputation: 169Reputation: 169
Quote:
Originally Posted by sycamorex View Post
Hi Andy,

Well, as a general rule, there are very few situations where you'd need to start GUI programs as root. For security reasons it is discouraged from. As mentioned above, a simple 'sudo' command would do in situations that you described. Having said that, I remember installing Linux Mint for a friend a few years ago and being frustrated at the amount of hand holding and restrictions.

Try distros such as Slackware, Arch, Debian. In most cases the system will let you do anything you want (especially true of Slackware). That, obviously, comes at a price that if you do something you shouldn't do, you may easily break the system. It will make it necessary for you to spend slightly more time configuring/maintaining because everything will be in your hands but that's how a lot of people like it. When I got more experienced with Linux, I started appreciating the freedom and customisability and have been happily using Slackware as my only distro for 6-7 years now. Obviously, you may like more Arch or Debian (Arch may require even more manual configuration).

My opinion is that distros such as Puppy are great but are targeted at and design for specific situations (low end specs hardware) and for that reason have somewhat limited features. You'd be unnecessarily losing on Linux experience if you were using it on modern hardware that is capable of running something much more feature packed.
I appreciate your good feedback. :-)

I have used Mint, Ubuntu, OpenSuse, and Debian.

When you say "feature packed" what do you mean.

Could you provide an example of something than another distro other than Puppy can do that Puppy can't ?

I know some have LibreOffice and Gimp that are already built-in, but package manager can easily install those program.

Take care,
Andy
 
  


Reply


Thread Tools Search this Thread
Search this Thread:

Advanced Search

Posting Rules
You may not post new threads
You may not post replies
You may not post attachments
You may not edit your posts

BB code is On
Smilies are On
[IMG] code is Off
HTML code is Off



Similar Threads
Thread Thread Starter Forum Replies Last Post
Programming Languages: Recommendations unihiekka Programming 15 11-29-2008 11:52 PM
Joining a Linux programming project - recommendations needed. wdli Programming 7 10-22-2008 11:42 AM
recommendations of ides, text editors, programming languages conanm4 Programming 2 05-17-2008 09:44 PM
Programming Book recommendations? pdgardin Programming 7 08-01-2006 09:31 PM

LinuxQuestions.org > Forums > Linux Forums > Linux - Software

All times are GMT -5. The time now is 07:01 PM.

Main Menu
Advertisement
My LQ
Write for LQ
LinuxQuestions.org is looking for people interested in writing Editorials, Articles, Reviews, and more. If you'd like to contribute content, let us know.
Main Menu
Syndicate
RSS1  Latest Threads
RSS1  LQ News
Twitter: @linuxquestions
Open Source Consulting | Domain Registration