記事ランキング
以前の記事
2016年 11月 2015年 11月 2015年 09月 2015年 04月 2014年 10月 2014年 09月 2014年 07月 2014年 04月 2014年 01月 2013年 10月 2013年 08月 2013年 07月 2013年 06月 2013年 03月 2012年 11月 2012年 10月 2012年 09月 2012年 08月 2012年 07月 2012年 04月 2012年 03月 2012年 01月 2011年 08月 2011年 07月 2011年 02月 2010年 11月 2010年 08月 2010年 05月 2010年 03月 2010年 01月 2009年 12月 2009年 11月 2009年 10月 2009年 09月 2009年 08月 2009年 07月 2009年 06月 2009年 05月 2009年 04月 2009年 03月 2009年 02月 2008年 12月 2008年 10月 2008年 09月 2008年 08月 2008年 07月 2008年 06月 2008年 05月 2008年 04月 2008年 03月 2008年 02月 2008年 01月 2007年 12月 2007年 11月 2007年 10月 2007年 08月 2007年 07月 2007年 06月 2007年 05月 2007年 04月 2007年 03月 2007年 02月 2007年 01月 2006年 11月 2006年 10月 2006年 08月 2006年 07月 2006年 06月 2006年 05月 2006年 04月 2006年 03月 2006年 02月 2006年 01月 2005年 11月 2005年 10月 2005年 09月 2005年 08月 2005年 07月 2005年 06月 2005年 05月 2005年 04月 2005年 03月 2005年 01月 2004年 12月 2004年 11月 2004年 10月 2004年 09月 2004年 08月 2004年 07月 2004年 06月 2004年 05月 2004年 04月 2004年 03月 カテゴリ
フォロー中のブログ
ファン
その他のジャンル
ブログジャンル
画像一覧
|
ずいぶん前にCUDAがエラーになるという記事を書いて、
そのままになっていたがようやくできたので報告する。 気がついていない事項も含めてなので、情報源を失っている場合もあるが申し訳ない。 まとめてみると簡単だが、なかなかに時間を必要としてしまった・・・・・ 1)libc++ か libstdc++か 最終的なライブラリ指定はxcode上で選択しなければならない。 clangのデフォルトはlibc++で、10.8から10.9に移行する場合に、libstdc++ をやめれば モジュールはできるというようなことを過去に書いた。 それでも良いのだが、ここでCUDA をオンにすると以下のようなエラーが起きる clang: error: unsupported option '-dumpspecs' オープンソース系のリソースとの併用で、libstdc++に指定したい場合はどうしたら良いのか という解にもつながるが、CMAKEのオプションをきちんと指定すればそれが回避できる。 <手順> ・CMAKE のGUIで、Grouped と Advanced にチェックを入れる。 ・CMAKE_CXX_FLAGS と CMAKE_SHARED_LINKER_FLAGS 両方 -stdlib=libstdc++ 64bit に限定したい場合は -arch x86_64 も追加 ・CUDA_HOST_COMPILER を /usr/bin/clang ・CUDA_NVCC_FLAGS を-Xcompiler -stdlib=libstdc++; -Xlinker -stdlib=libstdc++ 64bit に限定したい場合は -Xcompiler -arch; -Xcompiler x86_64 も追加(セミコロンでつなげる) これで、コンパイルは通るはず。 2)インストール時の cmdsize is zeroエラー コンパイルしてインストールすると -- Up-to-date: /usr/local/lib/libopencv_core.dylib /Applications/Xcode.app/Contents/Developer/Toolchains/XcodeDefault.xctoolchain/usr/bin/install_name_tool: object: /usr/local/lib/libopencv_core.2.4.8.dylib malformed object (load command 21 cmdsize is zero) こんなエラーが出る。 このまま実行すると、実行時エラーになってしまう(添付画像)。 実はずいぶん前にコンパイル方法はわかっていたが、このエラーの回避方法がわからなかった。 これは、実はCMAKEを 2.8.11 にダウングレードするとうまくいく。 Python - opencv- cuda のエラー回避で同様の指摘が出ていたのでようやく解決ができた。 http://answers.opencv.org/question/28304/opencv-master-cuda-55-os-x-109-python-malformed/ 次のCMAKE3では解決されることを期待したい。
by e-angels
| 2014-04-21 17:28
| Macとか
|
ファン申請 |
||