why in gnu/linux is so super-complicated/super-annoying to install something from source... God!

29 réponses [Dernière contribution]
Takumi13
Hors ligne
A rejoint: 07/03/2016

Sorry for my frustration and irritation.
Just trying to install gnu/mit-scheme 9.2 from source and, despite several attempts, I simply can't. I do every-time, every little instruction "by-the-book", as they give me on tutorials or documentation and in the end always can't install a program from source. This is so, but so irritating, so much time wasted for nothing...God!
what I am doing wrong, why is always so problematic to install something in the gnu/linux world?

p.s. I'll be back for the details.

onpon4
Hors ligne
A rejoint: 05/30/2012

Compiling source isn't complicated on GNU/Linux, it's just complicated in general. If you want something really complicated, try doing it on Windows.

Why compiling fails can vary quite a bit. Most commonly, either the code is just buggy or there's a dependency you're missing. There's no one-size-fits-all approach to finding out what the problem is; you just have to look at the error messages and warning messages and see if you can piece together what happened.

SuperTramp83

I am a translator!

Hors ligne
A rejoint: 10/31/2014

He's probably missing dependencies. OP: do a
sudo apt-get build-dep mit-scheme

Then follow instructions for compiling.

https://www.gnu.org/software/mit-scheme/documentation/mit-scheme-user/Unix-Installation.html

Takumi13
Hors ligne
A rejoint: 07/03/2016

Just done that now but...:
->brutal08@Dragon:~$ sudo apt-get build-dep mit-scheme-dbg
Reading package lists... Done
Building dependency tree
Reading state information... Done
E: Build-Depends dependency for mit-scheme-dbg cannot be satisfied because the package mit-scheme cannot be found

many thanks anyway

SuperTramp83

I am a translator!

Hors ligne
A rejoint: 10/31/2014

>Just done that now but...:
->brutal08@Dragon:~$ sudo apt-get build-dep mit-scheme-dbg
Reading package lists... Done
Building dependency tree
Reading state information... Done
E: Build-Depends dependency for mit-scheme-dbg cannot be satisfied because the package mit-scheme cannot be found

It is not **mit-scheme-dbg**. You are trying to build the package **mit-scheme**, hence you need to type "sudo apt-get build-dep mit-scheme". I am starting to think it is not compiling that is difficult and complicated but it is rather you who have issues following instructions. :P

Here, screenshot, so you can see that that command will in fact install all the dependencies you need to build it from your downloaded source.
Cheers, be patient and **follow** instructions!

Screenshot - 11302016 - 12:32:05 AM.png
Takumi13
Hors ligne
A rejoint: 07/03/2016

My friend I do not consider myself a dumb, so don't say I have problems follow instructions because that is not true, please.
Just for you:
->[sudo] password for brutal08:
Reading package lists... Done
Building dependency tree
Reading state information... Done
E: Build-Depends dependency for mit-scheme cannot be satisfied because the package mit-scheme cannot be found

I had tried that before. I think you are being condescending with me. Don't do that please!

SuperTramp83

I am a translator!

Hors ligne
A rejoint: 10/31/2014

I never said nor have I thought you were "dumb" and I am in no way "condescending". I just pointed out that I wrote to build the dependencies for a package and you did that for another package. You should know by now that I am nothing but helpful and nice. I also like and tend to joke.
I made a joke, and to make it more clear it was a joke I also left you a nice emoticon to point out it was a joke. No offense was intended.

Anyway, are you missing sources repository? Mit-scheme is in your repository and the build-dep command **should** work.

Should = MUST work.

lembas
Hors ligne
A rejoint: 05/13/2010

Usual compile on GNU/Linux is very simple:./configure
make

That is, if the program follows the GNU standard.

Takumi13
Hors ligne
A rejoint: 07/03/2016

Hello again. It's time for me to explain my episode.
But first of all I would like to make a side question: how do you put that pink-forcode-frame in your statements? I would like to use it in the future, in code related posts that I would do.
Explaining my situation:
I had installed mit-scheme from command line like so:
-> sudo apt-get install mit-scheme
Everything all right, the program runs smoothly and all the rest... As I wanted to learn how to function with this particular program, I downloaded a pdf file of the manual (this one: https://www.gnu.org/software/mit-scheme/documentation/mit-scheme-user.pdf). But then and realize that I was using an older version of the program so most of the examples didn't apply for the program version I downloaded from the repositories ( version 9.1.1). So I dig in and downloaded the tar file of the new most stable version: MIT/GNU Scheme 9.2.
I downloaded the tar file from here: http://ftp.gnu.org/gnu/mit-scheme/stable.pkg/9.2/. I untar it, moved to the new folder, move again for the src/ folder, apply the Gnu/Linux Universal sequence:
->./configure
-> make
-> make install
And voilà, an error as usual in the make step. I read the README.txt file very carefully added the
->./Setup.sh
step that I was missing before the ./configure step, but again: error in the make step.
Incredible!
I am missing something??? Why is this so cryptic to install some program from source in Gnu/linux? Have I first to swallow a thousand-page manual to succeed??? all that I want is the new version of the program! Everybody knows that in the repositories they only have the older version!
Have patient with me... Many many thanks

p.s. I will give you the error message in-a-minute, sorry
p.s.1 The thing here -and hence my frustation/irritation of yesterday is that from my experience, everytime I need to install from source a programe I only suceed in 1/8 of the time. And I (think) always do the right steps: 1 -> untar de file; 2-> move to the new directory; 3-> do the "./configure", "make" and "sudo make install" sequence 4->read the README.txt file and apply the required adjustments if needed

Magic Banana

I am a member!

I am a translator!

Hors ligne
A rejoint: 07/24/2010

See https://trisquel.info/en/wiki/formatting-trisquel-forum for some HTML tags that the Trisquel forum interprets (among other tags such as <ul>, <ol>, etc.).

Takumi13
Hors ligne
A rejoint: 07/03/2016

Good, nice one!
Know I can beautify my posts!
Thanks

Takumi13
Hors ligne
A rejoint: 07/03/2016

The error that gets me in the:
-> make compile-microcode
process is the as follows:
(cd microcode && make all)
make[1]: Entering directory `/home/brutal08/src/mit-scheme-9.2/src/microcode'
make[1]: *** No rule to make target `all'. Stop.
make[1]: Leaving directory `/home/brutal08/src/mit-scheme-9.2/src/microcode'
make: *** [compile-microcode] Error 2

I simply don't know what it is, and what it means...
If anybody could help me on this one, I would be so much appreciated. In the meanwhile I'll keep trying other ways...
see you!
... And many thanks in advance!

Takumi13
Hors ligne
A rejoint: 07/03/2016

Sorry but how do I manage to correct that, if you know. more generally: how do I put the missing flag on a file.

thanks

onpon4
Hors ligne
A rejoint: 05/30/2012

"make all" isn't something you normally do. The typical command is just "make", and as far as I can tell, that's the appropriate command in this case as well.

By the way, in this case, you might need the "Portable C". See the text below the downloads on this page:

https://www.gnu.org/software/mit-scheme/

That page also links to instructions for building the "Portable C" version, which includes an additional step.

Takumi13
Hors ligne
A rejoint: 07/03/2016

I didn't do the "make all" is part of system process. All I've done was the:
-> make compile-microcode
command, which gave me the mentioned error.
And anyway with the command:
-> make
, gives exactly the same error:
"(cd microcode && make all)
make[1]: Entering directory `/home/brutal08/src/mit-scheme-9.2/src/microcode'
make[1]: *** No rule to make target `all'. Stop.
make[1]: Leaving directory `/home/brutal08/src/mit-scheme-9.2/src/microcode'
make: *** [microcode/scheme] Error 2"

Takumi13
Hors ligne
A rejoint: 07/03/2016

I guess I will try to build MIT/GNU Scheme from portable C, although they warn that takes a lot of time, but I will try, if not today, tomorrow I will!
Thanks

ADFENO
Hors ligne
A rejoint: 12/31/2012

Hi all! :)

I'm not really a programmer, also but as far as my little experience
goes, I can explain the following to all of you that are starting to
learn things now:

Don't worry, most of the time, errors are useful to understand what is
being done (or what was supposed to be done, or wasn't done). What is
left now is to find out why. I do, like most of you, sometimes get
irritated and start repeating things over and over with mostly no good
results, this is absolutely normal, don't worry. :)

In this case, I did a quick test and downloaded the source files,
extracted them, went to "src/microcode", and did:

Note: "$ " can be ignore. It denotes a command to be run as normal user.

$ make all

And got the same message.

However, as some of us are well aware, this can mean lots of things, so
I decided to read a little about make (using: info make) and found a
useful command to try:

$ make -d all

This makes the same error message more detailed, and with that we notice
something: We have a "Makefile.in" file in this directory, but GNU make
doesn't look for it. "Why?", we ask.

Since I'm not a programmer, I don't have the answer, but it might be
related to the usual "./configure && make" sequence. This known sequence
does two things: configures and makes what's in the current
directory. "configure" is a file in the current directory, and it's an
executable file (this is why we can preffix it with "./", to run/execute it).

Since I'm not directly involved with the GNU/MIT Scheme project, I'll
give you a manual workaround:

Go to "microcode" directory and do

$ ./configure

Then, go to parent directory ("src") and do the sequence you were asked for.

Takumi13
Hors ligne
A rejoint: 07/03/2016

Done, but nope gives the very same error again!
many thanks anyway

SuperTramp83

I am a translator!

Hors ligne
A rejoint: 10/31/2014

Can you give us the output of ./configure , dear mate Takumi ?
You can paste it here (so you don't flood the thread with the very long text..) -> https://paste.debian.net/

quantumgravity
Hors ligne
A rejoint: 04/22/2013

A command that is really useful when it comes to compiling is "apt-file".
If you get an error message like "blabla.h not found", you just enter "apt-file search blabla.h" and you get all the
packages that contain the missing file.
Then install one of those packages with apt-get, and you have fixed the problem. You have to keep your fingers crossed though that there won't be twenty more missing files waiting for you.
I always wonder why there is no tool for executing this process automatically.

Takumi13
Hors ligne
A rejoint: 07/03/2016

there is a Makefile:
->brutal08@Dragon:~/src/mit-scheme-9.2$ ls
changelog.txt doc etc ->Makefile<- src

And yes I've tried as a root also and nothing, gave me the same error.
I think I will adress to the package maintainer Mr. Chris Hanson to see if he knows this problem. But before that I will give it a try by installing by the portable C, only tomorow.

Many thanks to all so far!
Good night

Takumi13
Hors ligne
A rejoint: 07/03/2016

Tht's what they say in the README.txt file and I've tried that to before, but gave me this error on ./Setuo.sh:
->brutal08@Dragon:~/src/mit-scheme-9.2/src/microcode$ ./Setup.sh
make: Nothing to be done for `all'.

Anyway, many many thanks. And thanks by the scheme book -> good one!

Takumi13
Hors ligne
A rejoint: 07/03/2016

Good day everyone.
I done it!
Using the portable C instalation of scheme I made it! Altoght my pc was compiling it almost 3 hours ( I have an old laptop -> my sweet emachines e620 with 4GB RAM) trough the night.
I've done it some way. he he he.
closed topic
And thanks to all.

schemePortableCInstalled.png
SuperTramp83

I am a translator!

Hors ligne
A rejoint: 10/31/2014

You are welcome!