2017-10-12 3 views
0

Ich möchte die Bibliothek fgsl verwenden, die von gsl abhängt. Ich habe ein Problem, das angibt, wo gsl installiert ist, während fgsl konfiguriert wird. Ich möchte die statische Version dieser Bibliotheken verwenden. Ich kann gsl Bibliothek von Linux-Paketen nicht verwenden, diese Versionen sind nicht neu genug.FGSL-Konfiguration mit lokaler Installation von GSL

Zuerst ich herunterladen, konfigurieren, kompilieren und installieren gsl lokal, d. H. Mit der --prefix Option. (Anweisungen sind unten dargestellt)

Dann lade ich fgsl, konfigurieren Sie es. Diese letzte Operation schlägt fehl, weil es mir nicht gelingt anzugeben, wo gsl ist. Ich habe versucht, gsl_LIBS erfolglos zu verwenden.

wget http://ftp.igh.cnrs.fr/pub/gnu/gsl/gsl-2.3.tar.gz -O gsl.tar.gz 
mkdir -p gsl_build && cd gsl_build 
tar -xzf ../gsl.tar.gz --strip 1 
autoreconf -fi 
./configure CFLAGS="-Wall" --prefix `pwd`/../gsl 
make 
make install 
cd .. 
rm -rf gsl_build 

Hier sind die Befehle, die ich fgsl

wget https://github.com/reinh-bader/fgsl/archive/v1.2.0.tar.gz -O fgsl.tar.gz 
mkdir -p fgsl_build 
cd fgsl_build 
tar -xzf ../fgsl.tar.gz --strip 1 
autoreconf -fi 
export gsl_LIBS=`pwd`/../gsl/lib 
./configure CFLAGS="-Wall" FCFLAGS="-Wall" --prefix `pwd`/../fgsl --libdir=`pwd`/../gsl/lib --includedir=`pwd`/../gsl/include 
make 
make check 
make install 
cd .. 
rm -rf fgsl_build 

Ich versuche, dies zu tun für das Open-Source-Projekt AcousticBEM Installation ausgeführt werden. Hier ist die log präsentiert das Problem.

+0

Installation mit Was ist die entsprechende Ausgabe von 'configure'? Sie geben jedoch keine vollständige Verbindungslinie, sondern nur einen Verzeichnisnamen an. – francescalus

+0

Ich habe versucht mit 'export gsl_LIBS =' pwd' /../gsl/lib/ libgsl.a; 'pwd' /../gsl/lib/ libgslcblas.a', aber ohne Erfolg –

+0

Das Ausgabeprotokoll befindet sich bei Das Ende dieser Webseite: https://travis-ci.org/Gjacquenot/AcousticBEM –

Antwort

0

Nun, hier sind meine aktualisierten Skripte zu gsl und fgsl lokal zu installieren. Ich habe PKG_CONFIG_PATH verwendet, um fgsl mitzuteilen, wo gsl installiert ist. Ich am Ende mit einem Verzeichnis mit dem Namen gsl enthält gsl Bibliotheken und fgsl Bibliotheken.

Zuerst wird ein Shell-Skript gsl

export gsl_INSTALL_DIR=`pwd`/gsl 
[ -f ./gsl.tar.gz ] && echo "No need to download gsl" || wget http://ftp.igh.cnrs.fr/pub/gnu/gsl/gsl-2.3.tar.gz -O gsl.tar.gz 
mkdir -p gsl_build 
cd gsl_build 
tar -xzf ../gsl.tar.gz --strip 1 
autoreconf -fi 
./configure CFLAGS="-Wall" --prefix=${gsl_INSTALL_DIR} 
make 
make install 
cd .. 
rm -rf gsl_build 

zweiter Stelle zu installieren, wird ein Skript fgsl lokal installieren die neu gsl

export PKG_CONFIG_PATH=`pwd`/gsl/lib/pkgconfig 
export gsl_LIBS=`pwd`/gsl 
[ -f ./fgsl.tar.gz ] && echo "No need to download fgsl" || wget https://github.com/reinh-bader/fgsl/archive/v1.2.0.tar.gz -O fgsl.tar.gz 
mkdir -p fgsl_build 
cd fgsl_build 
tar -xzf ../fgsl.tar.gz --strip 1 
autoreconf -fi 
./configure CFLAGS="-Wall" FCFLAGS="-Wall" --prefix=${gsl_LIBS} 
make 
make check 
make install 
cd .. 
rm -rf fgsl_build