help-gsl
[Top][All Lists]
Advanced

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

Re: [Help-gsl] GSL Installation problem


From: Hongzheng Wang
Subject: Re: [Help-gsl] GSL Installation problem
Date: Tue, 6 Oct 2009 13:58:16 +0800

Hi,

Seems like you don't have make installed in your system.  Just refer
to your system's package manager and find which package provides GNU
make

On Tue, Oct 6, 2009 at 1:07 AM, syed raza <address@hidden> wrote:
> Thank you so much dear Marco for your detail email reply.
> i have tried what you advised me  as
>
>  $ cd /home/marco
>  $ mkdir -p var/build
>  $ cd var/build
>  $ tar --extract --gzip --verbose --file=/home/marco/gsl-1.9.tar.gz
>  $ cd gsl-1.9
>
>  $ ./configure --disable-static --enable-shared
>
> up to this point it works error free  all the tar(command) and  configure
> done successfully
>
>
> but  when i try the command
>
> $ make
>
> it tells me
>
> cant found make command .
>
> in the gsl-1.9  directory  i have the  the makefile .
>
> please let me know what could be the problem .
>
> i am using  Mandriva spring 2009.
>
> Regards
>
> Shahid
>
>
>
> On 10/2/09, Marco Maggi <address@hidden> wrote:
>>
>> "syed raza" wrote:
>> > I want to compile a program of simple Matrix using gcc and
>> > GSL.
>>
>> Ciao,  in what  follows I  assume  you are  a beginner  with
>> GNU+Linux platforms,  so bear with  it if I write  stuff you
>> already know.   There are a lot  of things to say  and it is
>> difficult to have this exchange through email; anyway, let's
>> give it a try.
>>
>> If you do a Google  search for "how to compile and install
>> a program under linux", you  will find a number of tutorials
>> about how  to compile and  install programs; I  suggest that
>> you read some of them.
>>
>> Now for the specific  task of compiling and installing the
>> GSL: first,  you should unpack  the archive "gsl-1.9.tar.gz"
>> in a  temporary directory.
>>
>> On  my  system,  my  user  name is  "marco",  so  my  home
>> directory pathname  is "/home/marco"; in  everything below I
>> use this  pathname, you should  use your own  home directory
>> pathname.   When  I build  a  GSL package  I  do  it in  the
>> temporary  directory "/home/marco/var/build".  It  goes like
>> this,  assuming  that   "gsl-1.9.tar.gz"  is  a  file  under
>> "/home/marco":
>>
>> $ cd /home/marco
>> $ mkdir -p var/build
>> $ cd var/build
>> $ tar --extract --gzip --verbose --file=/home/marco/gsl-1.9.tar.gz
>> $ cd gsl-1.9
>> $ ./configure --disable-static --enable-shared
>> $ make
>>
>> if everything works  the GSL is configured and  built by the
>> last two commands; we can verify that the building worked by
>> running the tests:
>>
>> $ make check
>>
>> you should see a lot of compiler invocations and messages
>> like:
>>
>> =============
>> 1 test passed
>> =============
>>
>> meaning  that  a  test  program  was  run  and  successfully
>> executed.  Running the tests may take some minute.
>>
>> Now we have to install  the GSL; we configured it with the
>> default setting for the destination directory, so it will be
>> installed under the "/usr/local" directory hierarchy.
>>
>> First, you  have to  make sure that  "/usr/local" is  in a
>> hard   disk   partition   mounted   with   writable   access
>> permissions.   For   example,  on  my   system  running  the
>> following command:
>>
>> $ mount | grep /usr/local
>>
>> prints:
>>
>> /dev/sda11 on /usr/local type ext3 (rw,nodev,errors=remount-ro)
>>
>> the first "rw" in the parentheses shows that "/usr/local" is
>> writable.   There is  too much  to  be told  about how  your
>> system  may  be  configured;  so,  let's  assume  that  your
>> "/usr/local" is  writable, and come  back to it only  if the
>> installation fails.
>>
>> To install GSL you  need to acquire root permissions, this
>> means use the "su"  program or "sudo" program.  "sudo" needs
>> to be configured, while "su"  should work for you; let's use
>> "su".  If you do a Google search on "how to use su on linux"
>> you should find some tutorials on it.
>>
>> Basically to install GSL you should do:
>>
>> $ su
>> $ make install
>> $ /sbin/ldconfig
>> $ exit
>>
>> the "su" program asks you to type in the "root" password; do
>> it and  "su" will run  a shell under "root"  privileges; run
>> "make  install" and  "ldconfig" and  finally type  "exit" to
>> exit the privileged shell.
>>
>> The location of "ldconfig"  may vary on your Linux system,
>> I do not know where Mandriva places it; it may be in one of
>> the following locations:
>>
>> /sbin/ldconfig
>> /usr/sbin/ldconfig
>>
>> or  some  other place.   Find  it  and  run it  with  "root"
>> privileges.
>>
>> Now, on to compiling a  program linked to the GSL library.
>> The  source file  of your  program is  called "matrixExp.c",
>> fine; first put it under a temporary directory:
>>
>> $ cd <where the file is>
>> $ mkdir /home/marco/var/tmp
>> $ mv matrixExp.c /home/marco/var/tmp
>> $ cd /home/marco/var/tmp
>>
>> Your program looks fine to me, meaning that I successfully
>> compiled and  run it on  my system with the  commands below.
>> When  linking to  the  GSL  library, you  have  to tell  the
>> compiler how  to use it;  the GSL package installs  a script
>> "gsl-config" which we can use to acquire the informations we
>> need.  You can try to run this:
>>
>> $ gsl-config --cflags --libs
>>
>> on my system it prints:
>>
>> -I/usr/local/include
>> -L/usr/local/lib -lgsl -lgslcblas -lm
>>
>> these are all options to be put on the command line of GCC;
>> so let's try:
>>
>> $ gcc -I/usr/local/include -L/usr/local/lib -lgsl -lgslcblas -lm -o
>> matrixExp matrixExp.c
>>
>> it should compile the program and create an executable named
>> "matrixExp"; equivalently, using the features of the shell
>> you are running you could do:
>>
>> $ gcc $(gsl-config --cflags --libs) -o matrixExp matrixExp.c
>>
>> To run the program:
>>
>> $ ./matrixExp
>>
>> which prints:
>>
>> differences = 0 (should be zero)
>>
>> I hope  all of this helps  you; to have  further help, you
>> can reply to me by private email.
>> --
>> Marco Maggi
>>
> _______________________________________________
> Help-gsl mailing list
> address@hidden
> http://lists.gnu.org/mailman/listinfo/help-gsl
>



-- 
HZ




reply via email to

[Prev in Thread] Current Thread [Next in Thread]