cross-compiling

View: New views
9 Messages — Rating Filter:   Alert me  

cross-compiling

by Michel Boaventura :: Rate this Message:

Reply to Author | View Threaded | Show Only this Message

Hello all,

I'm trying to cross-compile pspp to run on windows, but i'm having some trouble.
I've instaled mingw on my ubuntu, and then compile from source
iconv,zlib and gsl
with these arguments on configure:
--prefix=/usr/local/i586-mingw32msvc/ --host=i586-mingw32msvc
All of those work like a charm, and then I've tried to compile pspp,
with the minimal requisites
(--without-gui --without-libpq --without-libncurses
--without-libplot), but it keep telling me that i dont
have zlib neither libgsl. What im doing wrong? Look at the errors of configure:

configure: WARNING: The following optional prerequisites are not installed.
You may wish to install them to obtain additional functionality:
        zlib
        zlib
        libreadline (which may itself require libncurses or libtermcap)
configure: error: The following required prerequisites are not installed.
You must install them before PSPP can be built:
        libgslcblas
        libgsl (version 1.4 or later)

Thanks,

Michel


_______________________________________________
pspp-dev mailing list
pspp-dev@...
http://lists.gnu.org/mailman/listinfo/pspp-dev

Re: cross-compiling

by Ben Pfaff :: Rate this Message:

Reply to Author | View Threaded | Show Only this Message

"Michel Boaventura" <michel.boaventura@...> writes:

> I'm trying to cross-compile pspp to run on windows, but i'm having some trouble.
> I've instaled mingw on my ubuntu, and then compile from source
> iconv,zlib and gsl
> with these arguments on configure:
> --prefix=/usr/local/i586-mingw32msvc/ --host=i586-mingw32msvc
> All of those work like a charm, and then I've tried to compile pspp,
> with the minimal requisites
> (--without-gui --without-libpq --without-libncurses
> --without-libplot), but it keep telling me that i dont
> have zlib neither libgsl.

It seems likely that GSL and zlib are not installed in a place
that the configure script is able to find them with the default
settings.  Have you set LDFLAGS and CPPFLAGS so that the linker
and compiler, respectively, can locate those libraries?  If you
have already done so, but it is not working anyhow, then perhaps
you could pass along your config.log for us to look at.
--
Ben Pfaff
http://benpfaff.org


_______________________________________________
pspp-dev mailing list
pspp-dev@...
http://lists.gnu.org/mailman/listinfo/pspp-dev

Re: cross-compiling

by John Darrington :: Rate this Message:

Reply to Author | View Threaded | Show Only this Message

On Wed, Jun 25, 2008 at 01:28:43PM -0300, Michel Boaventura wrote:
     Hello all,
     
     I'm trying to cross-compile pspp to run on windows, but i'm having some trouble.
     I've instaled mingw on my ubuntu, and then compile from source
     iconv,zlib and gsl
     with these arguments on configure:
     --prefix=/usr/local/i586-mingw32msvc/ --host=i586-mingw32msvc
     All of those work like a charm, and then I've tried to compile pspp,
     with the minimal requisites
     (--without-gui --without-libpq --without-libncurses
     --without-libplot), but it keep telling me that i dont
     have zlib neither libgsl. What im doing wrong?

     Look at the errors of configure:
     
     configure: WARNING: The following optional prerequisites are not installed.
     You may wish to install them to obtain additional functionality:
             zlib
             zlib
             libreadline (which may itself require libncurses or libtermcap)
     configure: error: The following required prerequisites are not installed.
     You must install them before PSPP can be built:
             libgslcblas
             libgsl (version 1.4 or later)



Assuming that your mingw32 std C library  is located in <xxx>
you will need to set the following environment variables:
 CFLAGS=-I<xxx>/include
 LDFLAGS=-L<xxx>/lib
 LD_LIBRARY_FLAGS=<xxx>/lib

If you're relying on pkg-config to find your mingw32 gsl library (or
anything else) then you will need to set  PKG_CONFIG_LIBDIR to the
place where the ming32 gsl.pc file is located.

Your --prefix argument is probably not what you wanted, this
is the location where PSPP will be installed (on the target).

After you've built PSPP, I find it best to do something like

 mkdir /tmp/pspp-target
 make install DESTDIR=/tmp/pspp-target
 cd /tmp/pspp-target
 tar -czf pspp-mingw.tar.gz .

Then you can copy the tarball to your target platform and install it
wherever you please.

Hope this helps.

J'



--
PGP Public key ID: 1024D/2DE827B3
fingerprint = 8797 A26D 0854 2EAB 0285  A290 8A67 719C 2DE8 27B3
See http://pgp.mit.edu or any PGP keyserver for public key.




_______________________________________________
pspp-dev mailing list
pspp-dev@...
http://lists.gnu.org/mailman/listinfo/pspp-dev

signature.asc (196 bytes) Download Attachment

Re: cross-compiling

by Michel Boaventura :: Rate this Message:

Reply to Author | View Threaded | Show Only this Message

Tanks a lot for the help. I will try it tomorrow. By the way, let me
ask some advices.
Im graduating on computer science, and all of my works on my disciplines where
made to compile only using makefiles and nothing else. And my only tools where
Vim, gcc and gdb.
I saw that pspp is made with a lot of sofisticated tools, like
./configure and so on.
My doubts are: What is the advantages of use it, and do not make just
a makefile?
Do you guys use some IDE to make pspp, and how do you manage all of those tools?

Thanks for the advices,

Michel

2008/6/25 John Darrington <john@...>:

> On Wed, Jun 25, 2008 at 01:28:43PM -0300, Michel Boaventura wrote:
>     Hello all,
>
>     I'm trying to cross-compile pspp to run on windows, but i'm having some trouble.
>     I've instaled mingw on my ubuntu, and then compile from source
>     iconv,zlib and gsl
>     with these arguments on configure:
>     --prefix=/usr/local/i586-mingw32msvc/ --host=i586-mingw32msvc
>     All of those work like a charm, and then I've tried to compile pspp,
>     with the minimal requisites
>     (--without-gui --without-libpq --without-libncurses
>     --without-libplot), but it keep telling me that i dont
>     have zlib neither libgsl. What im doing wrong?
>
>     Look at the errors of configure:
>
>     configure: WARNING: The following optional prerequisites are not installed.
>     You may wish to install them to obtain additional functionality:
>             zlib
>             zlib
>             libreadline (which may itself require libncurses or libtermcap)
>     configure: error: The following required prerequisites are not installed.
>     You must install them before PSPP can be built:
>             libgslcblas
>             libgsl (version 1.4 or later)
>
>
>
> Assuming that your mingw32 std C library  is located in <xxx>
> you will need to set the following environment variables:
>  CFLAGS=-I<xxx>/include
>  LDFLAGS=-L<xxx>/lib
>  LD_LIBRARY_FLAGS=<xxx>/lib
>
> If you're relying on pkg-config to find your mingw32 gsl library (or
> anything else) then you will need to set  PKG_CONFIG_LIBDIR to the
> place where the ming32 gsl.pc file is located.
>
> Your --prefix argument is probably not what you wanted, this
> is the location where PSPP will be installed (on the target).
>
> After you've built PSPP, I find it best to do something like
>
>  mkdir /tmp/pspp-target
>  make install DESTDIR=/tmp/pspp-target
>  cd /tmp/pspp-target
>  tar -czf pspp-mingw.tar.gz .
>
> Then you can copy the tarball to your target platform and install it
> wherever you please.
>
> Hope this helps.
>
> J'
>
>
>
> --
> PGP Public key ID: 1024D/2DE827B3
> fingerprint = 8797 A26D 0854 2EAB 0285  A290 8A67 719C 2DE8 27B3
> See http://pgp.mit.edu or any PGP keyserver for public key.
>
>
>
> -----BEGIN PGP SIGNATURE-----
> Version: GnuPG v1.4.6 (GNU/Linux)
>
> iD8DBQFIYuRjimdxnC3oJ7MRAs8DAJ0cxczxmRy+q9EPVaudVEMeSWmilACfSMB+
> jj71BalS4k97V+x4xgrkZkc=
> =FH1k
> -----END PGP SIGNATURE-----
>
>


_______________________________________________
pspp-dev mailing list
pspp-dev@...
http://lists.gnu.org/mailman/listinfo/pspp-dev

Re: cross-compiling

by Ben Pfaff :: Rate this Message:

Reply to Author | View Threaded | Show Only this Message

"Michel Boaventura" <michel.boaventura@...> writes:

> Im graduating on computer science, and all of my works on my disciplines where
> made to compile only using makefiles and nothing else. And my only tools where
> Vim, gcc and gdb.
> I saw that pspp is made with a lot of sofisticated tools, like
> ./configure and so on.
> My doubts are: What is the advantages of use it, and do not make just
> a makefile?

How many platforms and platform variations were your projects
expected to build and run successfully on?  How many compilers,
kernels, libraries, and other kinds of configuration were they
expected to support on each of those platforms?  My guess is that
the answer is "one of each", or perhaps two or three in a few
cases.

PSPP and most GNU software is intended to run on a wide variety
of platforms, both new and old, and to automatically adapt itself
to whatever compiler, kernel, and libraries are available.  This
takes more sophisticated mechanisms than can be portably obtained
with a straightforward Makefile.

> Do you guys use some IDE to make pspp, and how do you manage
> all of those tools?

I use Emacs, which I do not think most people would consider to
be an IDE.
--
Ben Pfaff
http://benpfaff.org


_______________________________________________
pspp-dev mailing list
pspp-dev@...
http://lists.gnu.org/mailman/listinfo/pspp-dev

Re: cross-compiling

by Edmund Smith :: Rate this Message:

Reply to Author | View Threaded | Show Only this Message

Just a makefile is great so long as:
 - we all agree on library versions (i.e. we all have the same
libraries installed - almost never true)
 - all the library versions people installed that our program will
build against actually work (again not true, again they flood our
mailing list with subtle errors because they have some ancient broken
implementation).
 - our C compilers agree on the standards they implement (increasingly
true, but still many edge cases)
and users are happy that:
 - the only warning they get is their build fails (good news, they can
mail us all to tell us the error message)
 - they're happy to edit a makefile to configure the program ("don't
want that package? no problem edit line 474 of src/foo/Makefile to
look more like this")

Actually, just a makefile isn't so great.

Ed

2008/6/26 Michel Boaventura <michel.boaventura@...>:

> Tanks a lot for the help. I will try it tomorrow. By the way, let me
> ask some advices.
> Im graduating on computer science, and all of my works on my disciplines where
> made to compile only using makefiles and nothing else. And my only tools where
> Vim, gcc and gdb.
> I saw that pspp is made with a lot of sofisticated tools, like
> ./configure and so on.
> My doubts are: What is the advantages of use it, and do not make just
> a makefile?
> Do you guys use some IDE to make pspp, and how do you manage all of those tools?
>
> Thanks for the advices,
>
> Michel
>
> 2008/6/25 John Darrington <john@...>:
>> On Wed, Jun 25, 2008 at 01:28:43PM -0300, Michel Boaventura wrote:
>>     Hello all,
>>
>>     I'm trying to cross-compile pspp to run on windows, but i'm having some trouble.
>>     I've instaled mingw on my ubuntu, and then compile from source
>>     iconv,zlib and gsl
>>     with these arguments on configure:
>>     --prefix=/usr/local/i586-mingw32msvc/ --host=i586-mingw32msvc
>>     All of those work like a charm, and then I've tried to compile pspp,
>>     with the minimal requisites
>>     (--without-gui --without-libpq --without-libncurses
>>     --without-libplot), but it keep telling me that i dont
>>     have zlib neither libgsl. What im doing wrong?
>>
>>     Look at the errors of configure:
>>
>>     configure: WARNING: The following optional prerequisites are not installed.
>>     You may wish to install them to obtain additional functionality:
>>             zlib
>>             zlib
>>             libreadline (which may itself require libncurses or libtermcap)
>>     configure: error: The following required prerequisites are not installed.
>>     You must install them before PSPP can be built:
>>             libgslcblas
>>             libgsl (version 1.4 or later)
>>
>>
>>
>> Assuming that your mingw32 std C library  is located in <xxx>
>> you will need to set the following environment variables:
>>  CFLAGS=-I<xxx>/include
>>  LDFLAGS=-L<xxx>/lib
>>  LD_LIBRARY_FLAGS=<xxx>/lib
>>
>> If you're relying on pkg-config to find your mingw32 gsl library (or
>> anything else) then you will need to set  PKG_CONFIG_LIBDIR to the
>> place where the ming32 gsl.pc file is located.
>>
>> Your --prefix argument is probably not what you wanted, this
>> is the location where PSPP will be installed (on the target).
>>
>> After you've built PSPP, I find it best to do something like
>>
>>  mkdir /tmp/pspp-target
>>  make install DESTDIR=/tmp/pspp-target
>>  cd /tmp/pspp-target
>>  tar -czf pspp-mingw.tar.gz .
>>
>> Then you can copy the tarball to your target platform and install it
>> wherever you please.
>>
>> Hope this helps.
>>
>> J'
>>
>>
>>
>> --
>> PGP Public key ID: 1024D/2DE827B3
>> fingerprint = 8797 A26D 0854 2EAB 0285  A290 8A67 719C 2DE8 27B3
>> See http://pgp.mit.edu or any PGP keyserver for public key.
>>
>>
>>
>> -----BEGIN PGP SIGNATURE-----
>> Version: GnuPG v1.4.6 (GNU/Linux)
>>
>> iD8DBQFIYuRjimdxnC3oJ7MRAs8DAJ0cxczxmRy+q9EPVaudVEMeSWmilACfSMB+
>> jj71BalS4k97V+x4xgrkZkc=
>> =FH1k
>> -----END PGP SIGNATURE-----
>>
>>
>
>
> _______________________________________________
> pspp-dev mailing list
> pspp-dev@...
> http://lists.gnu.org/mailman/listinfo/pspp-dev
>


_______________________________________________
pspp-dev mailing list
pspp-dev@...
http://lists.gnu.org/mailman/listinfo/pspp-dev

Re: cross-compiling

by Michel Boaventura :: Rate this Message:

Reply to Author | View Threaded | Show Only this Message

Now I see all the things that make the use of those tools, but imagine
that i want
to use then on my works. I will have to write al the configs from the
"configure" script
by my self? And allmost all of the GNU softwares became with the same
skeleton, with
the README, the INSTALL, the "configure", etc...

There's one IDE, or thing like that who make all of this alone?
As far as I know, kdevelop does the job, but I really like Vim as a program
enviroment ;)

Michel

2008/6/26 Ed <icelus2k5@...>:

> Just a makefile is great so long as:
>  - we all agree on library versions (i.e. we all have the same
> libraries installed - almost never true)
>  - all the library versions people installed that our program will
> build against actually work (again not true, again they flood our
> mailing list with subtle errors because they have some ancient broken
> implementation).
>  - our C compilers agree on the standards they implement (increasingly
> true, but still many edge cases)
> and users are happy that:
>  - the only warning they get is their build fails (good news, they can
> mail us all to tell us the error message)
>  - they're happy to edit a makefile to configure the program ("don't
> want that package? no problem edit line 474 of src/foo/Makefile to
> look more like this")
>
> Actually, just a makefile isn't so great.
>
> Ed
>
> 2008/6/26 Michel Boaventura <michel.boaventura@...>:
>> Tanks a lot for the help. I will try it tomorrow. By the way, let me
>> ask some advices.
>> Im graduating on computer science, and all of my works on my disciplines where
>> made to compile only using makefiles and nothing else. And my only tools where
>> Vim, gcc and gdb.
>> I saw that pspp is made with a lot of sofisticated tools, like
>> ./configure and so on.
>> My doubts are: What is the advantages of use it, and do not make just
>> a makefile?
>> Do you guys use some IDE to make pspp, and how do you manage all of those tools?
>>
>> Thanks for the advices,
>>
>> Michel
>>
>> 2008/6/25 John Darrington <john@...>:
>>> On Wed, Jun 25, 2008 at 01:28:43PM -0300, Michel Boaventura wrote:
>>>     Hello all,
>>>
>>>     I'm trying to cross-compile pspp to run on windows, but i'm having some trouble.
>>>     I've instaled mingw on my ubuntu, and then compile from source
>>>     iconv,zlib and gsl
>>>     with these arguments on configure:
>>>     --prefix=/usr/local/i586-mingw32msvc/ --host=i586-mingw32msvc
>>>     All of those work like a charm, and then I've tried to compile pspp,
>>>     with the minimal requisites
>>>     (--without-gui --without-libpq --without-libncurses
>>>     --without-libplot), but it keep telling me that i dont
>>>     have zlib neither libgsl. What im doing wrong?
>>>
>>>     Look at the errors of configure:
>>>
>>>     configure: WARNING: The following optional prerequisites are not installed.
>>>     You may wish to install them to obtain additional functionality:
>>>             zlib
>>>             zlib
>>>             libreadline (which may itself require libncurses or libtermcap)
>>>     configure: error: The following required prerequisites are not installed.
>>>     You must install them before PSPP can be built:
>>>             libgslcblas
>>>             libgsl (version 1.4 or later)
>>>
>>>
>>>
>>> Assuming that your mingw32 std C library  is located in <xxx>
>>> you will need to set the following environment variables:
>>>  CFLAGS=-I<xxx>/include
>>>  LDFLAGS=-L<xxx>/lib
>>>  LD_LIBRARY_FLAGS=<xxx>/lib
>>>
>>> If you're relying on pkg-config to find your mingw32 gsl library (or
>>> anything else) then you will need to set  PKG_CONFIG_LIBDIR to the
>>> place where the ming32 gsl.pc file is located.
>>>
>>> Your --prefix argument is probably not what you wanted, this
>>> is the location where PSPP will be installed (on the target).
>>>
>>> After you've built PSPP, I find it best to do something like
>>>
>>>  mkdir /tmp/pspp-target
>>>  make install DESTDIR=/tmp/pspp-target
>>>  cd /tmp/pspp-target
>>>  tar -czf pspp-mingw.tar.gz .
>>>
>>> Then you can copy the tarball to your target platform and install it
>>> wherever you please.
>>>
>>> Hope this helps.
>>>
>>> J'
>>>
>>>
>>>
>>> --
>>> PGP Public key ID: 1024D/2DE827B3
>>> fingerprint = 8797 A26D 0854 2EAB 0285  A290 8A67 719C 2DE8 27B3
>>> See http://pgp.mit.edu or any PGP keyserver for public key.
>>>
>>>
>>>
>>> -----BEGIN PGP SIGNATURE-----
>>> Version: GnuPG v1.4.6 (GNU/Linux)
>>>
>>> iD8DBQFIYuRjimdxnC3oJ7MRAs8DAJ0cxczxmRy+q9EPVaudVEMeSWmilACfSMB+
>>> jj71BalS4k97V+x4xgrkZkc=
>>> =FH1k
>>> -----END PGP SIGNATURE-----
>>>
>>>
>>
>>
>> _______________________________________________
>> pspp-dev mailing list
>> pspp-dev@...
>> http://lists.gnu.org/mailman/listinfo/pspp-dev
>>
>


_______________________________________________
pspp-dev mailing list
pspp-dev@...
http://lists.gnu.org/mailman/listinfo/pspp-dev

Re: cross-compiling

by Jason Stover-3 :: Rate this Message:

Reply to Author | View Threaded | Show Only this Message

On Thu, Jun 26, 2008 at 12:23:16AM -0300, Michel Boaventura wrote:
> Now I see all the things that make the use of those tools, but imagine
> that i want
> to use then on my works. I will have to write al the configs from the
> "configure" script
> by my self? And allmost all of the GNU softwares became with the same
> skeleton, with
> the README, the INSTALL, the "configure", etc...

You would normally write a shorter script called configure.ac, which
is a list of macros expanded by a program called autoconf to produce
the configure script. You would also put some other macros in a file
called Makefile.am, which are expanded by a program called automake to
produce a file called Makefile.in. The configure script would then
read Makefile.in to produce the final Makefile. (I think that's right,
someone else can correct that if I'm wrong.)

> There's one IDE, or thing like that who make all of this alone?

Not that I know of.

> As far as I know, kdevelop does the job, but I really like Vim as a program
> enviroment ;)

I think most project maintainers just use autoconf, automake, and a
couple of extra helper scripts, and edit the macros with an editor
like Emacs or vi. For PSPP, Ben packaged all that stuff in Smake,
which also inserts code from gnulib.

-Jason


_______________________________________________
pspp-dev mailing list
pspp-dev@...
http://lists.gnu.org/mailman/listinfo/pspp-dev

Re: cross-compiling

by Ben Pfaff :: Rate this Message:

Reply to Author | View Threaded | Show Only this Message

Jason Stover <jhs@...> writes:

> For PSPP, Ben packaged all that stuff in Smake, which also
> inserts code from gnulib.

As a minor correction to this point, John is the original author
of Smake.
--
Ben Pfaff
http://benpfaff.org


_______________________________________________
pspp-dev mailing list
pspp-dev@...
http://lists.gnu.org/mailman/listinfo/pspp-dev
LightInTheBox - Buy quality products at wholesale price