LinuxQuestions.org

LinuxQuestions.org (/questions/)
-   Linux - Newbie (https://www.linuxquestions.org/questions/linux-newbie-8/)
-   -   problems compiling tar.gz files (https://www.linuxquestions.org/questions/linux-newbie-8/problems-compiling-tar-gz-files-500377/)

nick_suse_gnome 11-10-2006 12:09 PM

problems compiling tar.gz files
 
hi, im new to linux and am trying to configure my wireless network. I have downloaded wireless tools but im having problems installing them. from what i understand i have to follow this procedure

# tar xvzf wireless.tar.gz // this works, uncompiles the files
# cd wireless // goes to the correct directory
# ./configure // i get the message "bash: ./configure: no such file or directory"
# make
# make install

im using 'konsole' in suse as i dont know the difference all the different terminals. although 'terminal program - super user mode' asks for a password in the terminal window and i dont seem to be able to type anything in?

my.dying.bride 11-10-2006 12:52 PM

Quote:

Originally Posted by nick_suse_gnome
hi, im new to linux and am trying to configure my wireless network. I have downloaded wireless tools but im having problems installing them. from what i understand i have to follow this procedure

# tar xvzf wireless.tar.gz // this works, uncompiles the files
# cd wireless // goes to the correct directory
# ./configure // i get the message "bash: ./configure: no such file or directory"
# make
# make install

im using 'konsole' in suse as i dont know the difference all the different terminals. although 'terminal program - super user mode' asks for a password in the terminal window and i dont seem to be able to type anything in?

your procedure is right. But sometimes the tarballs (tar.gz) comes preconfigured . In that case look for the Makefile (or when you typed make it should have started compiling). If this is not the case I suggest you look for an install script, something that maybe names "install.sh". If that does not exists either I am clueless , apart from that you should read the "INSTALL" text file that normally comes with the tarball. It is also not necesarry that the files resides in the top folder. So search some subfolders for "configure","Makefile",Install.sh" etc. Sometimes the name may also be slightly different like configure may be "Configure" or "Config" or "config" etc.. Slightly different but with a little imagination you will recognize them.

NB! I always run my linux as root so not sure about this. But I would guess that some files may be hidden from you unless you "sudo" or log in as root. "sudo ./configure" ... or just change to su in the console by entering "su" , and then youll be prompetd for roots password

b0uncer 11-10-2006 01:02 PM

Quote:

# tar xvzf wireless.tar.gz // this works, uncompiles the files
Firstly, it's not "uncompiles the files" but rather "uncompresses the files". Nothing is compiled at this stage.

Then..after you've uncompressed the package and have cd'd to the directory it uncompressed (if it did that), you'll want to do this:

1) read BOTH the INSTALL and README files. Especially the first one, which is most probably there (but in some cases if it's not, then the second file mentioned should contain this information), contains advices on how to compile the code. The developer of the code may have done mad tricks, nobody forces he to use the common methods. Therefore, you will want to read the INSTALL file to get to know how the procedure works - for sure.

2) IF it works like they "usually" do, you do
Code:

./configure
make
### now become root or use sudo ###
make install

The first step configures the compiling process, i.e. sets some variables and so on. The second step compiles the code, and the third step - if needed - copies the compiled files to the appropriate locations on your system (like binaries to /bin or /usr/bin or /usr/local/bin or something, etc.)

This does NOT mean that you will always do it like this. No, it's just how some things work. Some projects use automake or other apps to aid the compiling process and may ask you to run automake or autoconf or some other program, whatever it may be, before doing anything else (like a ./configure -- which actually means "run an executable file called configure from within this directory that's the current working directory at the moment"). The package also might include, as said, a script that automates the compiling process thus freeing you from setting different variables, doing stuff in some exactly correct order or so. So, the compiling procedure might just as well be something like

Code:

automake
autoconf
./fancyinstaller
./someotherfancyinstaller
make
./installer-o-matic

and so on. You got the point. Read the INSTALL file first. READ it.

Nylex 11-10-2006 01:04 PM

Quote:

Originally Posted by nick_suse_gnome
although 'terminal program - super user mode' asks for a password in the terminal window and i dont seem to be able to type anything in?

Your input is being accepted, just nothing's being echoed. It's fine.

Quote:

Originally Posted by my.dying.bride
NB! I always run my linux as root so not sure about this. But I would guess that some files may be hidden from you unless you "sudo" or log in as root. "sudo ./configure" ... or just change to su in the console by entering "su" , and then youll be prompetd for roots password

You shouldn't run as root all the time :/. Also, there's no need to run the configure script or make as root. The only step which you may need to run as root is "make install".

my.dying.bride 11-10-2006 01:13 PM

No problem running as root using Unionfs :) . Hell I would even let my girlfriend run as root on this one >laughs

b0uncer 11-10-2006 01:16 PM

Quote:

No problem running as root using Unionfs . Hell I would even let my girlfriend run as root on this one >laughs
Wiseguy :) if you got it installed, why do you think it's safe? It's not just about how you manage your filesystem, i.e. if you made it read-only, made it look read-write and thought you're safe, you're not -- you're just not thinking far enough.

Or, if you're sure, then why not give me a root login via ssh or something? I'm pretty positive it won't take long to make you understand why running as root is stupid :)

my.dying.bride 11-10-2006 01:49 PM

Quote:

Originally Posted by b0uncer
Wiseguy :) if you got it installed, why do you think it's safe? It's not just about how you manage your filesystem, i.e. if you made it read-only, made it look read-write and thought you're safe, you're not -- you're just not thinking far enough.

Or, if you're sure, then why not give me a root login via ssh or something? I'm pretty positive it won't take long to make you understand why running as root is stupid :)

Do I sense a tention here ??

For a starter I am not of that paranoid type by nature. Secondly, running a unionfs as root files system does not save anytning when logging out (unless i execute my backuping script). So whatever happens to /etc/shit_n_shat dont really matter. Coz it will not be the same /etc/shit.. i use when a reboot, but the one loaded using the ramdisk. Of course I may be really unlucky getting a virus who happens to know exactly what I called the tarred original one, but then again it may be compressed as squash which is a read only file system anyway... So there is only 2 things I need to worry about. 1. A port attack (which may happen anytime anyway and believe me..I check the ports often enough to discover if a new port is opened) 2. That my Windows executables may still get infected and I might execute them on next Windows logon.

So chill and continue to not use root if you feel for it. But allowed us other to use root if we feel for it :)


Lol. Why should i give you a root password for remote logon ?? Any idiot knows that you will access my machine as a root then. It is your job to crack my machine.. And since you say I am in such a risky position I assume you will be on my door soon ;). If this had not been public I would have given you my IP though just so you could have tried (most likely you would never reached my machine behind the router but ended up at some Windows-open machine to my neighbour :) >laughs)

But Bouncer.. I get your intention too. BUT one thing linux people should be careful about is to critisize Windows as insecure , but at the same time claim that "root" is so dangerous. In windows all are root by default.. Let the same happen in linux world so we can find out which os is most secure :p

farslayer 11-10-2006 02:33 PM

Quote:

Originally Posted by my.dying.bride
BUT one thing linux people should be careful about is to critisize Windows as insecure , but at the same time claim that "root" is so dangerous. In windows all are root by default.. Let the same happen in linux world so we can find out which os is most secure

That logic is totally faulty..

One of the reasons Windows is insecure by nature, is because everyone typically runs with Administrator rights..
the point is to NOT duplicate those errors when running Linux by being root all the time. It isn't necessary to have those priviledges all the time in EITHER OS

to say I'll run as root to prove linux isn't more secure is just crazy talk..

Thats like me proving a dog is vicious by smearing my body with bacon grease and running around in a dog fighting arena full of hungry pit bulls. It's logic that just doesn't make any sense.. no matter how you look at it.

Just crazy talk I tell ya.

But hey if that's what you're into don't call us if you get bit.

weibullguy 11-10-2006 02:39 PM

@nick_suse_gnome

Is there a website associated with the wireless.tar.gz (i.e., a project website) that you downloaded? I found a wireless.tar.gz, downloaded it and untarred it. There are no configure scripts and I found the INSTALL/README documentation is "lacking." I'm just thinking that there may be instructions at the website you retrieved the tarball from.

If I grabbed the same one you did, it looks like you'll probably need to
Code:

cd wireless/wimp
make
make install

But I don't have java on the machine I'm using right now so make fails for me.

And if you run in an inherently vulnerable mode like my.dying.bride, you don't even have to change to root to install. ;)

Emerson 11-10-2006 02:58 PM

Quote:

Originally Posted by my.dying.bride

So chill and continue to not use root if you feel for it. But allowed us other to use root if we feel for it :)

Do you drink and drive around like crazy? Do you like when other guys do it? Hopefully not. Hopefully you understand it's dangerous and may cause huge financial losses. Running root all time means every piece of malicious code some website may execute in your PC will run with root rights. And turning your Linux box into a spam proxy is a piece of cake then. Do you know how much damage is caused by spammers every year, month, day?
This is why we do not like Windows users like you playing with Linux as root. (You do not qualify as Linux noob yet, noob knows the basics and tries to follow rules.) Drunken driver or irresponsible computer admin damage other people too, not only themselves.

nick_suse_gnome 11-10-2006 03:30 PM

well.. back to the original problem. thankyou for all your help so far! I have read both the INSTALL and README files and they dont seem to tell me anything i dont know, particularly about the ./ command. Although the make file is there, so i do not have to configure it? this is the makefile (1st half)

##
## Please check the configurion parameters below
##

## Installation directory. By default, go in /usr/local.
## Distributions should probably use /, but they probably know better...
ifndef PREFIX
PREFIX = /usr/local
endif

## Compiler to use (modify this for cross compile).
CC = gcc
## Other tools you need to modify for cross compile (static lib only).
AR = ar
RANLIB = ranlib

## Uncomment this to build tools using static version of the library.
## Mostly useful for embedded platforms without ldd, or to create
## a local version (non-root).
# BUILD_STATIC = y

## Uncomment this to build without using libm (less efficient).
## This is mostly useful for embedded platforms without maths.
# BUILD_NOLIBM = y

## Uncomment this to strip binary from symbols. This reduce binary size.
## by a few percent but make debug worse...
# BUILD_STRIPPING = y

## Uncomment this to build with only essential functionality.
## This leaves out the less used features and cut in half the tools.
## This is mostly useful for embedded platforms without limited feature needs.
# BUILD_WE_ESSENTIAL = y

i understand from this that the uncompiled files need to go in /usr/local
so in the terminal i go to /usr/local and uncompile the files to /usr/local/wireless, i go into that directory and run the make command and get this.

//nick:/usr/local/wireless # make
//gcc -Os -W -Wall -Wstrict-prototypes -Wmissing-prototypes -Wshadow //-Wpointer-arith -Wcast-qual -Winline -I. -MMD -fPIC -c -o //iwlib.so iwlib.c
//make: gcc: Command not found
//make: *** [iwlib.so] Error 127

Emerson 11-10-2006 03:36 PM

./command is executed in current directory

What happened when you ran make?

weibullguy 11-10-2006 04:01 PM

Quote:

Originally Posted by nick_suse_gnome
make: gcc: Command not found

You either don't have gcc installed, it's not installed correctly, or your PATH variable does not include the directory where gcc is located. Check to see if gcc is installed.
Code:

which gcc
If it is, check to make sure the PATH variable includes the directory
Code:

echo $PATH
If gcc is not installed, you will need to install it. Not knowing (only guessing that you're using SuSE) what distro you're using, I can't tell you how to install gcc.

nick_suse_gnome 11-10-2006 04:16 PM

your right i am using suse, its distro 10.1. i havent installed much since i started using it (only yesterday) and certainly not gcc, so unless it come pre-installed im guessing i dont have it.

im not sure how to find out if gcc is installed and running correctly. ive typed the code in yout post directly into the terminal and nothing comes up.

//Nick@nick:~> which gcc
//Nick@nick:~> echo $path
//

lbdgwgt 11-10-2006 04:59 PM

Quote:

Originally Posted by nick_suse_gnome
im not sure how to find out if gcc is installed and running correctly. ive typed the code in yout post directly into the terminal and nothing comes up.

- go to YaST control center (if u dont know: from start menu -> system -> configuration
- put your root password
- select "software" -> "software management", then in "search", type "gcc", the check the boxes with the gcc compiler, you can check the dependencied (button "check" at the bottom)
- after finish, click the button "accept" and it will ask you to put it the DVD or CDs.

check YaST control center if you want to install something. maybe you can find your wireless package also there. it is very usefull for newbee like us :)

by the way you typed the wrong command to see PATH, in linux everything is case sensitive:

Code:

# echo $PATH
cheers,


All times are GMT -5. The time now is 08:32 PM.