8

私のプログラミング経験は、高校時代の約 1 年間の C/C++ 経験ですが、調査を行い、数か月前に OpenCL で簡単なプログラムを作成しました。g++ と --framework オプションを使用して、Apple コンピューターで比較的簡単にこれをコンパイルして実行することができました。現在、Ubuntu マシンを使用していますが、コンパイル方法がわかりません。ATI の Stream SDK と一緒に正しいドライバがダウンロードされています (私は ATI Radeon HD5870 を持っています)。どんな助けでも大歓迎です!

4

3 に答える 3

8

試す

locate libOpenCL.so

それが標準ディレクトリの 1 つ (おそらく /usr/lib または /usr/local/lib) にある場合は、「--framework OpenCL」を「-lOpenCL」に置き換える必要があります。g++ がライブラリを見つけられない場合は、"-L/path/to/library" を追加して、g++ に特定のディレクトリを探すように指示できます。

Linux がもっと便利になればいいのにと思います... ati-stream-sdk を再ダウンロードし、展開した後、ターミナルを開いて "cd /path/to/extracted/files" を実行するのがおそらく最善です。そのディレクトリで実行make && sudo make install

  • makeあなたはおそらくWindowsからこれを知っているでしょう、これはコンパイルされ、コンパイルする必要があるものは何でも
  • &&コマンドを連鎖させると、次のコマンドは最初のコマンドが成功した場合にのみ実行されます
  • sudo make installこれにより、ファイルが予想される場所に配置されます(sudoはスーパーユーザー権限でコマンドを実行します。パスワードを入力する必要があります)

それが役立つことを願っています。

于 2010-10-30T20:09:36.350 に答える
0

動的リンカー構成から動的ライブラリーが欠落している可能性があります。

ライブラリの場所を検索します。ほとんどの場合、/usr/lib または /usr/local/lib です。

パスの場所も次のいずれかの場所に構成されていることを確認してください。

  • LD_LIBRARY_PATH - .bashrc のように、環境シェルで設定できます
  • /etc/ld.so.conf - ldconfig を呼び出してキャッシュを更新する必要があり、ファイルを変更するには root アクセスが必要です。
于 2010-10-30T22:05:58.043 に答える