how to install nightingale software

Asked by Ashton on 2012-03-31

Hi all! I've been using Ubuntu for 5+ years now, and I'm ashamed to say that I have never successfully been able to get a program running from a tarball. I decided to give it another shot tonight, and I ran into problems again. I'm not a terribly advanced user, but I really want to learn to do this, and thus far the internet has proven surprisingly unhelpful. I'd really appreciate someone letting me know where I'm going wrong.

What I'm trying to install: Nightingale

What I've done so far:
1) Downloaded the tar.bz2 file and saved it to a file named "Projects."
2) In the terminal, I navigated to the Projects folder and entered "tar xvjf nightingale.tar.bz2"
3) That seems to go fine, so I navigate to the new nightengale folder, check to make sure there's stuff in there and look for a readme file.
4) Finding none, I try to run the configure command. I enter "./configure" into the terminal, and I get back "bash: ./configure: No such file or directory"

This is what's got me stumped. This always happens, and I don't know what the problem is. I have GCC and build-essential, and I am up to date on my updates. I saw something on a forum about changing my bash path but frankly I don't know what that means. Any suggestions or tips would be greatly appreciated. Thanks!

Cheers,
Ashton

Question information

Language:
English Edit question
Status:
Answered
For:
Ubuntu gcc-defaults Edit question
Assignee:
No assignee Edit question
Last query:
2012-03-31
Last reply:
2012-04-01
Gaz Davidson (garethdavidson) said : #1

Are you sure you didn't download one of the Linux binary releases? I can't see a source download on Nightingale's project page, the only .tar.bz2 files are 32 and 64-bit binary releases. Source is available in their git repository.

Ashton (blondewarning) said : #2

Thanks for answering so quickly, but I'm afraid that I have no idea what you're talking about. What is the difference between a binary release and the source? And why would they have me download the binary release from their front page if I can't use it to install the program?

Anyway, I downloaded the source (or what I think is the source) from github (https://github.com/GetNightingale/nightingale) and extracted it. The folder contains some files, including ones called "allmakefiles.sh" and "configure.ac." But when I tried to run './configure' it still gave me the same error message:

bash: ./configure: No such file or directory

What's going on? Sorry to be such a novice, but I still don't know what I'm doing wrong.

And for the record, I'd like to point out that all the internet guides make installing from source sound so easy. "Oh, you just extract the tarball, run ./configure and make and sudo make install and you're done!" Is it supposed to be that simple?

mycae (mycae) said : #3

Building from source is hard, unless someone has "paved the way" already. You need to be familiar with the project.

A tarball is just a "zip file" - its a way of packing multiple files into one file. There is no difference. This means that there is no standard concept of how one is to build a program.

For example, if I make a file "hello.cpp" and put the following in it
----------------
#include <iostream>
#include <cstdlib>
using namespace std;

int main()
{
cerr << "Hello" << endl;
}

----------------

running "./configure" will do exactly nothing (you will get "command not found", or similar).

./configure is the standard command provided by using a framework known as "autotools", and any particular project may be using this or not (other tools include "cmake", plain "make" makefiles, "ant", "maven", "scons", etc...). Autotools is quite popular with many OS projects at this time, despite being somewhat arcane.

Looking at the nightinggale code (this is a *very* hard project to try to kick off with - its like building the titanic, instead of building a little wooden boat, due to "dependencies"), they provide a configure.ac file (the template file for autotools), but not "configure", the build script.

instead, they provide a build script called "build.sh".

This is documented in the "README" file, where it says:

========================================================================
Building:
========================================================================
If on Linux, simply run the build.sh script. It will download the deps
and build the app for you. You'll generally need the usual build deps
for most software packages, though.

Ubuntu and Debian users should note you'll need:
libdbus-glib-1-dev
libgstreamer-plugins-base0.10-dev

More information can be gleaned from the Songbird wiki:

Windows: http://tinyurl.com/3jfo6lv
Mac: http://tinyurl.com/3bwg8e3
Linux: http://tinyurl.com/3kh3gk8

Can you help with this problem?

Provide an answer of your own, or ask Ashton for more information if necessary.

To post a message you must log in.