LinuxQuestions.org
Download your favorite Linux distribution at LQ ISO.
Home Forums Tutorials Articles Register
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 11-29-2005, 07:54 PM   #1
hongxing
Member
 
Registered: Oct 2005
Posts: 73

Rep: Reputation: 15
why I want to compile in my Linux?


when installing software in linux, mostly, it needs us to compile it, not like in
windows. why?

but sometimes we can install and use third party software directory without compiling, why?

can anyone explain in detail?

thanks in advance!
 
Old 11-29-2005, 08:40 PM   #2
dogbird
Member
 
Registered: Nov 2004
Location: oklahoma
Distribution: slackware 9.0
Posts: 98

Rep: Reputation: 15
Because it is open source.

1. sources are always provided.
2. it compiles on many different architectures. yours is different than mine.
3. If you compile it yourself you will know there are no viruses or trojans in the code.
So there are several reasons . So we all need to compile stuff.
josephus
 
Old 11-29-2005, 08:47 PM   #3
Charred
Member
 
Registered: Mar 2005
Location: Utah, USA
Distribution: Slackware 11
Posts: 816
Blog Entries: 2

Rep: Reputation: 30
Compiling builds a program optimized for your box. This CAN mean significant performance gains.

Besides, you can't be a true geek if you don't compile your own programs!
 
Old 11-29-2005, 09:05 PM   #4
number9
Member
 
Registered: Dec 2003
Location: Fresno
Distribution: Gentoo Ricer
Posts: 85

Rep: Reputation: 15
Because, we're all doing it.
It's the coolest thing.

Read all about it here,
http://www.linuxquestions.org/questi...ticle&artid=15
 
Old 11-29-2005, 11:08 PM   #5
arrenlex
Member
 
Registered: Jul 2005
Distribution: Debian Etch
Posts: 48

Rep: Reputation: 17
Because windows is very standardised. It comes with one specific set of libraries that Microsoft made for everyone. People making software for windows know exactly what's on your box already because it's the same as everyone else has, so they can give you a ready-made application.

On Linux, because it's open-source, many different versions of everything have sprung up. Someone might be using kde 3.4, which uses libraries that a program built for kde 3.5 won't work on. On windows, everyone is running the same thing.

Compiling allows you to build your application so that it works on your system. It makes sure you fulfil dependencies. It keeps applications small - people who make applications only need to make a 1 MB tarball of the program and tell you what dependencies it has, rather than putting together a 100MB file that includes everything necessary to make it run.

RedHat and Debian, two very major distributions, install some files in different directories. When you compile, the system reports to the compiler what should go where for the system to recognise it correctly. On windows, there is only one version of the operating system, one place to put the files.

Linux is inherently flexible. It comes from being open-source. Thus, the applications made for it have to be created in a manner that allows for flexibility. Compiling does this. But even in Linux, with proper package management, you could get away with having many applications pre-compiled, like on Debian. This is what RPMs are (although without apt-rpm, the whole system is hellish). This is also what Debian does. I run Debian and there's really no application that I regularly use that I've compiled; they've all come from debian packages. I compiled WINE because I don't like the frills Debian puts in and I want the control; I compiled k3b because there's no version in Etch right now; I compiled mplayer because I want to fine-tune the video out drivers to my system. In general, however, I could have gotten all these programs as packages and not have to compile a thing.
 
Old 11-30-2005, 03:42 AM   #6
hongxing
Member
 
Registered: Oct 2005
Posts: 73

Original Poster
Rep: Reputation: 15
thanks. still has question:
if i update my kernel from 2.4.20 to 2.6.12, can I ran programs that compiled on 2.6.20 on the new kernel?
 
Old 11-30-2005, 03:47 AM   #7
T.Hsu
Member
 
Registered: Jan 2005
Posts: 178

Rep: Reputation: 31
Yes, you can.

Are you using Redhat 9.0, if so, you need install module-init-tools first.
 
Old 11-30-2005, 04:28 AM   #8
runlevel0
Member
 
Registered: Mar 2005
Location: Hilversum/Holland
Distribution: Debian GNU/Linux 5.0 (“Lenny”)
Posts: 290

Rep: Reputation: 31
Quote:
Originally posted by hongxing
thanks. still has question:
if i update my kernel from 2.4.20 to 2.6.12, can I ran programs that compiled on 2.6.20 on the new kernel?
If you upgrade the kernel using Red Hat's software manager, you will get every necessary program updated and there will be no problems.

If you are going to compile it yourself you can get into trouble. Normally a faulty kernel would not affect the software you installed: It will simply not boot.

Compile stuff only when it's something very exotic which can't be found using your software manager. There is no sense in compiling most of the stuff as modern processors are optimized themselves to run code written for an i486. There is only a small bunch of programs which will take advantage of recompiling. So better stick with the good ol' RPM packages.

There are tens of thousands of RPM packaged applications, the only thing you need is to learn how to use the package manager in an advanced way so that you can insert new software repositories.

You can also install RPM packages straight form your web browser clicking on links to RPM packages.

Here is an URL where you will find almost any RPM package in the world: RPMSEEK.com.


To have the best experience with Linux, first get comfortable with the software manager and the rest of the software. Then learn to use the console... and then you can start trying to compile some minor packages and finally you will decide whether you want to compile an application or prefer to download it.

Last edited by runlevel0; 11-30-2005 at 04:30 AM.
 
  


Reply



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
help me - compile c++ on linux fedora owentn Programming 1 08-04-2005 11:12 AM
Linux 2.6.xx Compile Errors BenneJezzerette Slackware 60 04-26-2005 08:31 PM
linux-2.6.11.7 won't compile hubabuba Slackware 3 04-16-2005 10:44 AM
compile Python in Linux? pandasuit Programming 2 12-13-2003 05:22 AM
How do you compile a Linux module? SparceMatrix Programming 17 09-02-2002 12:12 PM

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

All times are GMT -5. The time now is 01:10 AM.

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