GMP: Difference between revisions
From CBLFS
Jump to navigationJump to search
I added the "Command Explanations" and "Contents" sections. |
|||
| Line 1: | Line 1: | ||
{| style="text-align: left; background-color: AliceBlue;" | {| style="text-align: left; background-color: AliceBlue;" | ||
|- | |-valign="top" | ||
!Download Source: | !Download Source: | ||
| ftp://ftp.gnu.org/gnu/gmp/gmp-{{GMP-Version}}.tar.bz2 | | ftp://ftp.gnu.org/gnu/gmp/gmp-{{GMP-Version}}.tar.bz2 | ||
| Line 40: | Line 40: | ||
make install && | make install && | ||
mv -v /usr/include/gmp{,-32}.h | mv -v /usr/include/gmp{,-32}.h | ||
=== Command Explanations === | |||
''--enable-cxx'': Enables C++ support. | |||
''--enable-mpbsd'': Configures make to build the Berkeley MP compatibility library. | |||
=== N32 === | === N32 === | ||
| Line 70: | Line 76: | ||
{{Stub-Header|gmp.h}} | {{Stub-Header|gmp.h}} | ||
= Contents = | |||
{| style="text-align: left;" | |||
|-valign="top" | |||
! Installed Programs: | |||
| None | |||
|-valign="top" | |||
! Installed Libraries: | |||
| libgmp.{a,la,so}, libgmpxx.{a,la,so} | |||
|-valign="top" | |||
! Installed Directories: | |||
| None | |||
|} | |||
=== Short Descriptions === | |||
{| style="text-align: left;" | |||
|-valign="top" | |||
! libgmp.{a,la,so} | |||
| contains the definitions for GNU multiple precision functions. | |||
|-valign="top" | |||
! libgmpxx.{a,la,so} | |||
| contains a C++ class wrapper for GMP types. | |||
|} | |||
Revision as of 12:43, 1 January 2007
| Download Source: | ftp://ftp.gnu.org/gnu/gmp/gmp-4.3.1.tar.bz2 |
|---|
Introduction to GMP
The GMP package contains math libraries. These have useful functions for arbitrary precision arithmetic.
Dependencies
Non-Multilib
Compile the package:
./configure --prefix=/usr --enable-cxx \
--enable-mpbsd &&
make
Install the package
make install
Multilib
32Bit
Compile the package:
CC="gcc ${BUILD32}" ./configure --prefix=/usr \
--host=${CLFS_TARGET32} --enable-cxx \
--enable-mpbsd &&
make
Install the package
make install &&
mv -v /usr/include/gmp{,-32}.h
Command Explanations
--enable-cxx: Enables C++ support.
--enable-mpbsd: Configures make to build the Berkeley MP compatibility library.
N32
Compile the package:
CC="gcc ${BUILDN32}" ./configure --prefix=/usr \
--libdir=/usr/lib32 --enable-cxx \
--enable-mpbsd &&
make
Install the package
make install &&
mv -v /usr/include/gmp{,-n32}.h
64Bit
Compile the package:
CC="gcc ${BUILD64}" ./configure --prefix=/usr \
--libdir=/usr/lib64 --enable-cxx \
--enable-mpbsd &&
make
Install the package
make install &&
mv -v /usr/include/gmp{,-64}.h
Creating a Stub Header (Multilib Only)
Creating a Generic Stub Header
cat > /usr/include/gmp.h.h << "EOF"
/* gmp.h.h - Stub Header */
#ifndef __STUB__GMP.H_H__
#define __STUB__GMP.H_H__
#if defined(__x86_64__) || \
defined(__sparc64__) || \
defined(__arch64__) || \
defined(__powerpc64__) || \
defined (__s390x__)
# include "gmp.h-64.h"
#else
# include "gmp.h-32.h"
#endif
#endif /* __STUB__GMP.H_H__ */
EOF
Creating a Stub Header For Mips
cat > /usr/include/gmp.h.h << "EOF" /* gmp.h.h - Stub Header */ #ifndef __STUB__GMP.H_H__ #define __STUB__GMP.H_H__ #include <sgidefs.h> #if (_MIPS_SIM == _ABIO32) # include "gmp.h-32.h" #elif (_MIPS_SIM == _ABIN32) # include "gmp.h-n32.h" #elif (_MIPS_SIM == _ABI64) # include "gmp.h-64.h" #endif #endif /* __STUB__GMP.H_H__ */ EOF
Contents
| Installed Programs: | None |
|---|---|
| Installed Libraries: | libgmp.{a,la,so}, libgmpxx.{a,la,so} |
| Installed Directories: | None |
Short Descriptions
| libgmp.{a,la,so} | contains the definitions for GNU multiple precision functions. |
|---|---|
| libgmpxx.{a,la,so} | contains a C++ class wrapper for GMP types. |