LinuxQuestions.org
Visit Jeremy's Blog.
Go Back   LinuxQuestions.org > Forums > Linux Forums > Linux - Distributions > Slackware
User Name
Password
Slackware This Forum is for the discussion of Slackware Linux.

Notices


Reply
  Search this Thread
Old 01-17-2014, 05:12 PM   #1
bmarley83
Member
 
Registered: Apr 2013
Location: Pennsylvania
Distribution: Slackware, Debian
Posts: 185

Rep: Reputation: 32
Building from source


Okay my question is fairly general so I don't necessarily need help with the programs in reference (though any advice is appreciated!) I'm just trying to get a better understanding of how compiling software from source works and how I can diagnose make errors on my own rather than having to scour the net or ask others for help. So anyways here it is.

I was recently looking for an rss newsreader application and tried a few. At first I settled on RSSowl but even though the slackbuild built and installed (even though a few of the dependencies failed to build, I found binary packages for them on the net) it would not work with errors that listed the lack of multiple dependencies that I later installed and still received errors after meeting them. So even though I would have normally attempted to figure out the problem I scraped it, uninstalled all the dependencies and chose instead to go with liferea.

Now liferea installed and built just fine and seems to working okay with the exception of pages that use flash. I have flash installed it works fine in ff. To get flash to work in liferea you need xulrunner. I cannot get the slackbuild of xulrunner to work, it wont build, yes i have installed all deps and optional deps. But looking at the slackbuild it was quite old so I decided to download the latest source to build against the version of ff i have installed (i.e. ff 24). This also fails during the make process. I'm running a Slackware 14.1 multi-lib system. Can anyone grant some insight into how to properly diagnose make failures in modern Linux for a non-programmer?

Last edited by bmarley83; 01-17-2014 at 05:41 PM.
 
Old 01-17-2014, 05:31 PM   #2
bmarley83
Member
 
Registered: Apr 2013
Location: Pennsylvania
Distribution: Slackware, Debian
Posts: 185

Original Poster
Rep: Reputation: 32
bump
 
Old 01-17-2014, 05:33 PM   #3
Alien Bob
Slackware Contributor
 
Registered: Sep 2005
Location: Eindhoven, The Netherlands
Distribution: Slackware
Posts: 8,559

Rep: Reputation: 8116Reputation: 8116Reputation: 8116Reputation: 8116Reputation: 8116Reputation: 8116Reputation: 8116Reputation: 8116Reputation: 8116Reputation: 8116Reputation: 8116
This is not IRC. NO need at all to bump a post already after 20 minutes! Go have something to drink.
 
Old 01-17-2014, 05:34 PM   #4
dugan
LQ Guru
 
Registered: Nov 2003
Location: Canada
Distribution: distro hopper
Posts: 11,351

Rep: Reputation: 5382Reputation: 5382Reputation: 5382Reputation: 5382Reputation: 5382Reputation: 5382Reputation: 5382Reputation: 5382Reputation: 5382Reputation: 5382Reputation: 5382
Just so you know: a) posts that contain "bump" and no other information are explicitly against the rules, b) threads with no replies are automatically bumped twice, and c) your post would be a lot easier to read if it were in shorter paragraphs.

Last edited by dugan; 01-17-2014 at 05:35 PM.
 
Old 01-17-2014, 05:35 PM   #5
bmarley83
Member
 
Registered: Apr 2013
Location: Pennsylvania
Distribution: Slackware, Debian
Posts: 185

Original Poster
Rep: Reputation: 32
sorry Eric and dugan. Won't happen again. Also Dugan I edited the post accordingly.

Last edited by bmarley83; 01-17-2014 at 05:43 PM. Reason: Asked to by a mod.
 
Old 01-17-2014, 06:06 PM   #6
Alien Bob
Slackware Contributor
 
Registered: Sep 2005
Location: Eindhoven, The Netherlands
Distribution: Slackware
Posts: 8,559

Rep: Reputation: 8116Reputation: 8116Reputation: 8116Reputation: 8116Reputation: 8116Reputation: 8116Reputation: 8116Reputation: 8116Reputation: 8116Reputation: 8116Reputation: 8116
Hint, if you are not so versed in compiling from source, try to find SlackBuild scripts.
The slackbuilds.org website has lots of them, and you can use the sbopkg tool to make the process a whole lot easier. Sbopkg knows the concept of building queues (of packages): http://sbopkg.org/queues.php . Basically, a queue is a recipe to build all requirements for the package first, and then the package itself, in the proper order. That page contains a link to a git repository which contains build queue files for every package on slackbuilds.org.
Download that whole git repository of queue files and you'll be able to compile most if not all of slackbuilds.org entries with a few clicks.

Interactive discussion can be had in the #slackbuilds channel on the FreeNode IRC network. A forum just is not that interactive. Be patient and hope that people come up with good advice.

Eric

---------- Post added 18th Jan 2014 at 00:06 ----------

Hint, if you are not so versed in compiling from source, try to find SlackBuild scripts.
The slackbuilds.org website has lots of them, and you can use the sbopkg tool to make the process a whole lot easier. Sbopkg knows the concept of building queues (of packages): http://sbopkg.org/queues.php . Basically, a queue is a recipe to build all requirements for the package first, and then the package itself, in the proper order. That page contains a link to a git repository which contains build queue files for every package on slackbuilds.org.
Download that whole git repository of queue files and you'll be able to compile most if not all of slackbuilds.org entries with a few clicks.

Interactive discussion can be had in the #slackbuilds channel on the FreeNode IRC network. A forum just is not that interactive. Be patient and hope that people come up with good advice.

Eric
 
1 members found this post helpful.
Old 01-17-2014, 06:26 PM   #7
bmarley83
Member
 
Registered: Apr 2013
Location: Pennsylvania
Distribution: Slackware, Debian
Posts: 185

Original Poster
Rep: Reputation: 32
Thank you for your response Eric, I appreciate you taking the time to answer my question, and the all of the work that you've done to make Slackware "more usable" for many people, including "noobs" like myself.

However, I don't use a package manager on purpose. If wanted one click access for installing a program I would probably just use a distribution like debian, ubuntu, redhat, fedora, or even pcbsd. I like the idea of compiling from source, as it is traditional, and using slackbuilds allows me to maintain my own package repository for future installs and upgrades.

Also some slackbuild packages are not working properly. I plan to email the person maintaining the packages I'm having problems with shortly to notify them of the problems I have had in an attempt to contribute to the slackbuilds project and/or solve my own problems with those packages.

With that said, my real question is how does one become more adept at compiling their own packages from source, and does anyone have a resource or guide that highlights ways to diagnose the process when it fails? I will definitely be connecting to the the slackbuilds IRC channel to ask for help from now on, but for future reference, I want to become better with source compilation.

Can a non-programmer do this without understanding the languages the program was written in? Or would it be a good idea to start learning some programming?

Last edited by bmarley83; 01-17-2014 at 06:28 PM.
 
Old 01-17-2014, 08:35 PM   #8
MannyNix
Member
 
Registered: Dec 2005
Location: ~
Distribution: Slackware -current
Posts: 467

Rep: Reputation: 55
Hi, this is very basic, but helpful. Not sure if that's what you had in mind?
http://www.slackwiki.com/Compiling
http://www.slackwiki.com/Building_A_Package

Hope it helps ;-)
 
Old 01-17-2014, 08:49 PM   #9
bmarley83
Member
 
Registered: Apr 2013
Location: Pennsylvania
Distribution: Slackware, Debian
Posts: 185

Original Poster
Rep: Reputation: 32
Thank you MannyNix that was helpful, but I guess i'll just search the web for more stuff on debugging make errors, thanks everyone.

Last edited by bmarley83; 01-18-2014 at 05:47 PM.
 
Old 01-18-2014, 06:00 PM   #10
bmarley83
Member
 
Registered: Apr 2013
Location: Pennsylvania
Distribution: Slackware, Debian
Posts: 185

Original Poster
Rep: Reputation: 32
Okay well I'm going to mark this as solved because I did find some answers "out there". Particularly on the Mozilla developer website for compiling their software from source. For anyone who reads this for reference in a similar situation I guess you are not supposed to build new versions of Firefox, Thunderbird, and XULRunner with the traditional ./configure, make, make install.

Instead you are to use "make -j10 -f client.mk" skipping ./configure all together, and that was why XULRunner 26 wouldn't build for me. Still haven't figured out how to get the package installed after compilation, though it did seem to also build a Firefox nightly build (32 bit version 26) that I managed to replace my browser with!

Jokes aside, I like the 32 bit nightly build better, its faster and takes less ram, and it supports all the plugins I had in 64bit. So all is not in vein! But if anybody knows how to install XULRunner after compiling it from the latest source from Mozilla, please let me know because I have followed the instructions online and I have failed miserably.
 
Old 01-18-2014, 07:00 PM   #11
enorbet
Senior Member
 
Registered: Jun 2003
Location: Virginia
Distribution: Slackware = Main OpSys
Posts: 4,981

Rep: Reputation: 4625Reputation: 4625Reputation: 4625Reputation: 4625Reputation: 4625Reputation: 4625Reputation: 4625Reputation: 4625Reputation: 4625Reputation: 4625Reputation: 4625
Greetings and thanks for the thread. I too prefer building from source and sorely miss "checkinstall". Guess I'm going to have to read up on making SlackBuilds.

Incidentally, was the mozilla project by chance the mplayer-plugin mess?

Last edited by enorbet; 01-18-2014 at 07:02 PM.
 
Old 01-18-2014, 07:31 PM   #12
hitest
Guru
 
Registered: Mar 2004
Location: Canada
Distribution: Slackware (desktops), Void (thinkpad)
Posts: 7,432

Rep: Reputation: 3848Reputation: 3848Reputation: 3848Reputation: 3848Reputation: 3848Reputation: 3848Reputation: 3848Reputation: 3848Reputation: 3848Reputation: 3848Reputation: 3848
I prefer to use the package management system that comes with Slackware: pkgtool.
If and when I want to compile stuff I will use the slackbuild scripts provided by the good people at slackbuilds.org.
For pre-built binary packages I will install packages from trusted sources only. I like the packages created by Robby and Eric, our Slackware developers.

http://rlworkman.net/pkgs/

http://www.slackware.com/~alien/

The problem with compiling from source (without using slackbuild scripts and the created packages) is that it can on occasion be a PITA to remove unwanted compiled programs. That is, the programs can install themselves to weird, non-standard slackware locations. Just my two cents worth.
 
Old 01-18-2014, 07:46 PM   #13
enorbet
Senior Member
 
Registered: Jun 2003
Location: Virginia
Distribution: Slackware = Main OpSys
Posts: 4,981

Rep: Reputation: 4625Reputation: 4625Reputation: 4625Reputation: 4625Reputation: 4625Reputation: 4625Reputation: 4625Reputation: 4625Reputation: 4625Reputation: 4625Reputation: 4625
Quote:
Originally Posted by hitest View Post
<snip>

The problem with compiling from source (without using slackbuild scripts and the created packages) is that it can on occasion be a PITA to remove unwanted compiled programs. That is, the programs can install themselves to weird, non-standard slackware locations. Just my two cents worth.
That can only happen if you rely on a simple "make install" and possibly if you didn't set $PREFIX. That's why I miss "checkinstall". It would quickly build a Slackware Slackpack.tgz and then we could just use "pkgtool" which also has the benefit of being trackable and uninstallable.
 
Old 01-18-2014, 08:16 PM   #14
Richard Cranium
Senior Member
 
Registered: Apr 2009
Location: McKinney, Texas
Distribution: Slackware64 15.0
Posts: 3,860

Rep: Reputation: 2229Reputation: 2229Reputation: 2229Reputation: 2229Reputation: 2229Reputation: 2229Reputation: 2229Reputation: 2229Reputation: 2229Reputation: 2229Reputation: 2229
Great Goo, nobody has mentioned the excellent src2pkg program? If there isn't a slackbuild, src2pkg is the way to go.
 
3 members found this post helpful.
Old 01-18-2014, 08:20 PM   #15
hitest
Guru
 
Registered: Mar 2004
Location: Canada
Distribution: Slackware (desktops), Void (thinkpad)
Posts: 7,432

Rep: Reputation: 3848Reputation: 3848Reputation: 3848Reputation: 3848Reputation: 3848Reputation: 3848Reputation: 3848Reputation: 3848Reputation: 3848Reputation: 3848Reputation: 3848
Thumbs up

Quote:
Originally Posted by Richard Cranium View Post
Great Goo, nobody has mentioned the excellent src2pkg program? If there isn't a slackbuild, src2pkg is the way to go.
Yeah, forgot gnashley's amazing utility.

http://distro.ibiblio.org/amigolinux/download/src2pkg/
 
  


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
Building an out-of-tree module without building the kernel source lijodevasia Linux - General 2 08-01-2013 01:45 AM
Building the source Tieshan Linux - Newbie 22 10-27-2012 01:07 PM
Best distro for source building? Rick069 Linux - Distributions 16 12-24-2008 09:04 PM
building and learning the source narender Linux - Newbie 2 04-16-2004 07:37 AM
building from source Protex Slackware 2 02-24-2004 09:26 PM

LinuxQuestions.org > Forums > Linux Forums > Linux - Distributions > Slackware

All times are GMT -5. The time now is 06:30 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