Become a MacRumors Supporter for $50/year with no ads, ability to filter front page stories, and private forums.

gusious

macrumors 65816
Original poster
Dec 2, 2007
1,277
2
Greece
Ok sorry if i'm posting this thread in the wrong section.

Well i was wandering if the Terminal.app in OS X is enough for learning programming (C and Perl is in my interest) and learn how to work over terminal.

Does "our" terminal have the same features with a Linux distribution or do i have to install linux in order to learn? If it lacks in some, which are they and is there a way to cover them?

Thanks guys!
 
Ok sorry if i'm posting this thread in the wrong section.

Well i was wandering if the Terminal.app in OS X is enough for learning programming (C and Perl is in my interest) and learn how to work over terminal.

Does "our" terminal have the same features with a Linux distribution or do i have to install linux in order to learn? If it lacks in some, which are they and is there a way to cover them?

Thanks guys!

It is fine. It is a full UNIX terminal. Technically it is more UNIX than Linux as Mac OS X has actually been POSIX certified.

There will obviously be some differences though, but that is true of all the UNIX distributions.
 
NOTE: For C you will need to install Xcode to get gcc (easiest, or get it from fink/macports). Perl is included.

If you find other things missing, you can always add them via macports/fink or add modules to Perl via CPAN.

B
 
It is fine. It is a full UNIX terminal. Technically it is more UNIX than Linux as Mac OS X has actually been POSIX certified.

There will obviously be some differences though, but that is true of all the UNIX distributions.

Do you mind posting some of the differences?
 
Do you mind posting some of the differences?

Where are you coming from? What are you familiar with?

What Cromulent is saying is that it's not much different than Fedora vs. gentoo vs. ubuntu. They are all Linux but are quite different. So is OS X from the terminal.

B
 
Do you mind posting some of the differences?

Commands and command options.

There may be commands that exist on some version of Linux that don't exist on Mac OS X, or have a different name.

The command options may also differ.

Some command output might differ, such as the output of 'ls -l' when ACLs are present. This would usually only be a problem when scripting, as scripts ported without change might not parse command-generated output robustly.

Library names and pathnames.

Libraries might not be at the same pathname, and may have a different name.

If you install 3rd-party libs or commands, you should put them somewhere OUTSIDE of Apple-maintained directories. DO NOT put them in /usr, /bin, etc. Put them somewhere YOU control, like /opt (which you will have to create).

Config files, system startup, daemons, etc.

Completely different. Assume you know nothing, and then read about 'launchd' on Mac OS X. And read:
http://developer.apple.com/mac/library/technotes/tn2005/tn2083.html


The one unifying principle in all of this: Don't assume. Read the man page first.
 
Register on MacRumors! This sidebar will go away, and you'll see fewer ads.