Difference between revisions of "GMP"

From CBLFS
Jump to navigationJump to search
(Multilib)
Line 38: Line 38:
 
Install the package
 
Install the package
  
  make install
+
  make install &&
 +
mv -v /usr/include/gmp{,-32}.h
  
 
=== N32 ===
 
=== N32 ===
Line 51: Line 52:
 
Install the package
 
Install the package
  
  make install
+
  make install &&
 +
mv -v /usr/include/gmp{,-n32}.h
  
 
=== 64Bit ===
 
=== 64Bit ===
Line 64: Line 66:
 
Install the package
 
Install the package
  
  make install
+
  make install &&
 +
mv -v /usr/include/gmp{,-64}.h
 +
 
 +
==== Creating a Stub Header ====
 +
 
 +
cat > /usr/include/gmp.h << "EOF"
 +
/* gmp.h.  Stub Header  */
 +
#ifndef __STUB__GMP_H__
 +
#define __STUB__GMP_H__
 +
 +
#if defined(__x86_64) || \
 +
    defined(__sparc64__) || \
 +
    defined(__arch64__) || \
 +
    defined(__powerpc64__) || \
 +
    defined (__s390x__)
 +
# include "gmp-64.h"
 +
#else
 +
# include "gmp-32.h"
 +
#endif
 +
 +
#endif /* __STUB__GMP_H__ */
 +
EOF
 +
 
 +
==== Creating a Stub Header For Mips ====
 +
 
 +
cat > /usr/include/gmp.h << "EOF"
 +
/* gmp.  Stub Header  */
 +
#ifndef __STUB__GMP_H__
 +
#define __STUB__GMP_H__
 +
 +
#include <sgidefs.h>
 +
 +
#if (_MIPS_SIM == _ABIO32)
 +
# include "gmp-32.h"
 +
#elif (_MIPS_SIM == _ABIN32)
 +
# include "gmp-n32.h"
 +
#elif (_MIPS_SIM == _ABI64)
 +
# include "gmp-64.h"
 +
#endif
 +
 +
#endif /* __STUB__GMP_H__ */
 +
EOF

Revision as of 10:10, 26 December 2006

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

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

cat > /usr/include/gmp.h << "EOF"
/* gmp.h.  Stub Header  */
#ifndef __STUB__GMP_H__
#define __STUB__GMP_H__

#if defined(__x86_64) || \
    defined(__sparc64__) || \
    defined(__arch64__) || \
    defined(__powerpc64__) || \
    defined (__s390x__)
# include "gmp-64.h"
#else
# include "gmp-32.h"
#endif

#endif /* __STUB__GMP_H__ */
EOF

Creating a Stub Header For Mips

cat > /usr/include/gmp.h << "EOF"
/* gmp.  Stub Header  */
#ifndef __STUB__GMP_H__
#define __STUB__GMP_H__

#include <sgidefs.h>

#if (_MIPS_SIM == _ABIO32)
# include "gmp-32.h"
#elif (_MIPS_SIM == _ABIN32)
# include "gmp-n32.h"
#elif (_MIPS_SIM == _ABI64)
# include "gmp-64.h"
#endif

#endif /* __STUB__GMP_H__ */
EOF