2017-04-09 5 views
0

Windows 10でGSLを使いたい。cygwinにGSLパッケージをインストールした後、cygwinの下にインストールGSLフォルダが見つかりません。エラーは、このようなものです:GSLはcygwin、Windows 10にどこにインストールされていますか?

$ G ++ bessel.cpp -lm -o -lgsl bessel.out -Lは/ usr/binに bessel.cpp:32:1致命的なエラー:GSL/gsl_sf_bessel.h:いいえ、そのようなファイルまたはディレクトリ コンパイルが終了しました。

私がインストールGSLパッケージを参照してくださいかかわら:

enter image description here

私は小さなテスト.cppファイルにリンクの下に続いてきました。 Using GSL with cygwin g++

のCygwinのインストールディレクトリがC:\cygwin64であれば、あなたは上記参照するヘッダファイルは次の場所に位置しており、Windowsの10でGSLライブラリの設定に

おかげで、

答えて

1

ファイルの場所とパッケージがインストールされているかどうかを確認します。
チェックウィッヒパッケージは、コンパイルのための

$ cygcheck -cd |grep gsl 
gsl          2.3-2 
gsl-apps        2.3-2 
gsl-devel        2.3-2 
gsl-doc         2.3-2 
libgsl-devel       2.3-2 
libgsl0         1.16-2 
libgsl19        2.3-2 

ヘッダやインポートライブラリはdevelのパッケージに含まれている名前に「GSL」が含まれています。
私たちは、パッケージの状態をチェックします。

$ cygcheck -c libgsl-devel 
Cygwin Package Information 
Package    Version  Status 
libgsl-devel   2.3-2   OK 

ので、パッケージがインストールさcorrecltiで、どのファイルが欠落していません。 パッケージの内容を表示

$ cygcheck -l libgsl-devel 
/usr/bin/gsl-config 
/usr/include/gsl/gsl_blas.h 
/usr/include/gsl/gsl_blas_types.h 
/usr/include/gsl/gsl_block.h 
/usr/include/gsl/gsl_block_char.h 
/usr/include/gsl/gsl_block_complex_double.h 
/usr/include/gsl/gsl_block_complex_float.h 
/usr/include/gsl/gsl_block_complex_long_double.h 
/usr/include/gsl/gsl_block_double.h 
/usr/include/gsl/gsl_block_float.h 
/usr/include/gsl/gsl_block_int.h 
[cut] 
/usr/include/gsl/gsl_wavelet2d.h 
/usr/lib/libgsl.dll.a 
/usr/lib/libgslcblas.dll.a 
/usr/lib/pkgconfig/gsl.pc 
/usr/share/aclocal/gsl.m4 
/usr/share/info/gsl-ref.info-1.gz 
/usr/share/info/gsl-ref.info-2.gz 
/usr/share/info/gsl-ref.info-3.gz 
/usr/share/info/gsl-ref.info-4.gz 
/usr/share/info/gsl-ref.info-5.gz 
/usr/share/info/gsl-ref.info-6.gz 
/usr/share/info/gsl-ref.info.gz 
/usr/share/man/man1/gsl-config.1.gz 
/usr/share/man/man3/gsl.3.gz 
0

を助けてください。

C:\cygwin64\usr\include\gsl\gsl_sf_bessel.h 

あなたがそこに表示されない場合、あなたはあなたからgsllibgsl-develパッケージを再インストールする必要がありますCygwinのインストールプログラム。あなたがソースコードにstdio.hヘッダファイルを追加すると、そのページ上の答えに示すようUsing GSL with cygwin g++ページに提供されているコードは、限り、罰金コンパイルする必要があります。このファイルはbessel.cppであると仮定すると、

#include <gsl/gsl_sf_bessel.h> 
#include <stdio.h> 

int main (void) 
{ 
    double x = 5.0; 
    double y = gsl_sf_bessel_J0 (x); 
    printf ("J0(%g) = %.18e\n", x, y); 
    return 0; 
} 

、それはしてコンパイルする必要があります:

g++ bessel.cpp -lgsl 
+0

お返事ありがとうございます。私はパスをチェックした。 C:\ cygwin64 \ usr \ include \の下にgslフォルダはありません。 cygwin64でGSLをインストールする際に問題があるようです。図に示すように、私はインストール時にいくつかのGSLライブラリオプションをチェックしました。 Cygwinで正常にgslをインストールすると何が問題になるでしょうか?つまり、gslライブラリがインストールされていると、そのヘッダファイルはあなたが表示するようにフォルダになければなりませんか? –

+0

@RobertWilliam - Cygwinでgslパッケージのアンインストール/再インストールを試みましたか?私は最初にgslパッケージ(とその依存関係)をインストールしましたが、ヘッダーはそのステップにインストールされませんでした。私はlibgsl-develをインストールしていました。おそらくインストールの不具合?または別のミラーで試してみませんか? (それはたぶんストレッチです...今すぐアイデアを放棄しています)。私のローカルインストールで参照する他のファイルがあるかどうか教えてください。私はCygwinの64ビット版をWindows 10上で実行しています。 –

+1

もっと一般的な答えとして、https://cygwin.com/packages/でCygwinパッケージがインストールされている場所を見つけることができます。 – pak

関連する問題