2013-04-10 15 views
5

フレームワークの構築に問題があります。iOS用のOpenCVフレームワークを構築できません

は、私はここからOpenCVののコピーをクローン化しています

https://github.com/Itseez/opencvは、その後、私は2.8.10.2

が続いてiOSのフォルダにbuild_framework.py実行し、最新のcmakeのを持っていることを確認しました。

-- Setting up iPhoneOS toolchain 
-- iPhoneOS toolchain loaded 
-- Setting up iPhoneOS toolchain 
-- iPhoneOS toolchain loaded 
-- The CXX compiler identification is Clang 4.2.0 
-- The C compiler identification is Clang 4.2.0 
-- Detecting CXX compiler ABI info 
-- Detecting CXX compiler ABI info - failed 
-- Detecting C compiler ABI info 
-- Detecting C compiler ABI info - failed 
-- Performing Test HAVE_CXX_W 
-- Performing Test HAVE_CXX_W - Failed 
-- Performing Test HAVE_C_W 
-- Performing Test HAVE_C_W - Failed 
-- Performing Test HAVE_CXX_WALL 
-- Performing Test HAVE_CXX_WALL - Failed 
-- Performing Test HAVE_C_WALL 
-- Performing Test HAVE_C_WALL - Failed 
-- Performing Test HAVE_CXX_WERROR_RETURN_TYPE 
-- Performing Test HAVE_CXX_WERROR_RETURN_TYPE - Failed 
-- Performing Test HAVE_C_WERROR_RETURN_TYPE 
-- Performing Test HAVE_C_WERROR_RETURN_TYPE - Failed 
-- Performing Test HAVE_CXX_WERROR_NON_VIRTUAL_DTOR 
-- Performing Test HAVE_CXX_WERROR_NON_VIRTUAL_DTOR - Failed 
... 

-- Could NOT find PythonInterp (missing: PYTHON_EXECUTABLE) (Required is at least version "2.0") 
-- Performing Test HAVE_CXX_WNO_UNDEF 
-- Performing Test HAVE_CXX_WNO_UNDEF - Failed 
-- Performing Test HAVE_CXX_WNO_SIGN_PROMO 
-- Performing Test HAVE_CXX_WNO_SIGN_PROMO - Failed 
-- Performing Test HAVE_CXX_WNO_MISSING_DECLARATIONS 
-- Performing Test HAVE_CXX_WNO_MISSING_DECLARATIONS - Failed 
-- Performing Test HAVE_CXX_WNO_MISSING_PROTOTYPES 
-- Performing Test HAVE_CXX_WNO_MISSING_PROTOTYPES - Failed 
-- Performing Test HAVE_OBJCXX_FOBJC_EXCEPTIONS 
-- Performing Test HAVE_OBJCXX_FOBJC_EXCEPTIONS - Failed 
-- Performing Test HAVE_CXX_WNO_DEPRECATED_DECLARATIONS 
-- Performing Test HAVE_CXX_WNO_DEPRECATED_DECLARATIONS - Failed 
-- 
-- General configuration for OpenCV 2.4.9 ===================================== 
-- Version control:    unknown 
-- 
-- Platform: 
--  Host:      Darwin 12.3.0 i386 
--  Target:      iOS 
--  CMake:      2.8.10.2 
--  CMake generator:    Xcode 
--  CMake build tool:   /Applications/CMake 2.8-10.app/Contents/bin/cmakexbuild 
--  Xcode:      4.6.1 
-- 
-- C/C++: 
--  Built as dynamic libs?:  NO 
--  C++ Compiler:    /Applications/Xcode.app/Contents/Developer/Toolchains/XcodeDefault.xctoolchain/usr/bin/clang++ (ver 4.2.0) 
--  C++ flags (Release):   -stdlib=libc++ -headerpad_max_install_names -fvisibility=hidden -fvisibility-inlines-hidden -fPIC -DNDEBUG -O3 -fomit-frame-pointer -ffast-math -DNDEBUG 
--  C++ flags (Debug):   -stdlib=libc++ -headerpad_max_install_names -fvisibility=hidden -fvisibility-inlines-hidden -fPIC -g -O0 -DDEBUG -D_DEBUG -ggdb3 
--  C Compiler:     /Applications/Xcode.app/Contents/Developer/Toolchains/XcodeDefault.xctoolchain/usr/bin/clang 
--  C flags (Release):   -fPIC -O3 -DNDEBUG -DNDEBUG 
--  C flags (Debug):    -fPIC -g -O0 -DDEBUG -D_DEBUG -ggdb3 
--  Linker flags (Release):  
--  Linker flags (Debug):   
--  Precompiled headers:   NO 
-- 
-- OpenCV modules: 
--  To be built:     core imgproc flann highgui features2d calib3d ml video objdetect contrib legacy nonfree photo softcascade stitching videostab world 
--  Disabled:     - 
--  Disabled by dependency:  - 
--  Unavailable:     androidcamera gpu java ocl python superres ts 
-- 
-- GUI: 
--  Cocoa:      YES 
--  OpenGL support:    NO 
-- 
-- Media I/O: 
--  ZLib:      build (ver 1.2.7) 
--  JPEG:      build (ver 90) 
--  WEBP:      NO 
--  PNG:       build (ver 1.5.12) 
--  TIFF:      NO 
--  JPEG 2000:     NO 
--  OpenEXR:      NO 
-- 
-- Video I/O: 
--  AVFoundation:    YES 
--  QuickTime:     NO 
--  QTKit:      YES 
--  V4L/V4L2:     NO/NO 
-- 
-- Other third-party libraries: 
--  Use IPP:      NO 
--  Use Eigen:     NO 
--  Use TBB:      NO 
--  Use OpenMP:     NO 
--  Use GCD      YES 
--  Use Concurrency    NO 
--  Use C=:      NO 
--  Use Cuda:     NO 
--  Use OpenCL:     NO 
-- 
-- Python: 
--  Interpreter:     NO 
-- 
-- Java: 
--  ant:       NO 
--  JNI:       NO 
--  Java tests:     NO 
-- 
-- Documentation: 
--  Build Documentation:   NO 
--  Sphinx:      NO 
--  PdfLaTeX compiler:   NO 
-- 
-- Tests and samples: 
--  Tests:      NO 
--  Performance tests:   NO 
--  C/C++ Examples:    NO 
-- 
-- Install path:     /Users/Ants/Dev/iOS/opencv-ios-build/build/iPhoneOS-armv7/install 
-- 
-- cvconfig.h is in:    /Users/Ants/Dev/iOS/opencv-ios-build/build/iPhoneOS-armv7 
-- ----------------------------------------------------------------- 
-- 
-- Configuring done 
-- Generating done 
-- Build files have been written to: /Users/Ants/Dev/iOS/opencv-ios-build/build/iPhoneOS-armv7 

しかし、それは、Xcodeプロジェクトのビルドを行います。このことから

./opencv/ios/build_framework.py opencv-ios-build 

出力があります。

プロセスは、コンパイルを実行し続けますが、これはOpenCVのコア

/Users/Ants/Dev/iOS/opencv/modules/core/src/rand.cpp:758:8: error: unknown type name 'pthread_key_t'; did you mean 'pthread_attr_t'? 
static pthread_key_t tlsRNGKey = 0; 
     ^~~~~~~~~~~~~ 
     pthread_attr_t 
/Applications/Xcode.app/Contents/Developer/Platforms/iPhoneOS.platform/Developer/SDKs/iPhoneOS6.1.sdk/usr/include/sys/signal.h:157:34: note: 'pthread_attr_t' declared here 
typedef __darwin_pthread_attr_t   pthread_attr_t; 
             ^
/Users/Ants/Dev/iOS/opencv/modules/core/src/rand.cpp:758:22: error: no viable conversion from 'int' to 'pthread_attr_t' (aka '_opaque_pthread_attr_t') 
static pthread_key_t tlsRNGKey = 0; 
        ^   ~ 
/Applications/Xcode.app/Contents/Developer/Platforms/iPhoneOS.platform/Developer/SDKs/iPhoneOS6.1.sdk/usr/include/sys/_types.h:64:8: note: candidate constructor (the implicit copy constructor) not viable: no known conversion from 'int' to 'const _opaque_pthread_attr_t &' for 1st argument 
struct _opaque_pthread_attr_t { long __sig; char __opaque[__PTHREAD_ATTR_SIZE__]; }; 
    ^
/Users/Ants/Dev/iOS/opencv/modules/core/src/rand.cpp:759:8: error: unknown type name 'pthread_once_t'; did you mean 'pthread_attr_t'? 
static pthread_once_t tlsRNGKeyOnce = PTHREAD_ONCE_INIT; 
     ^~~~~~~~~~~~~~ 
     pthread_attr_t 
/Applications/Xcode.app/Contents/Developer/Platforms/iPhoneOS.platform/Developer/SDKs/iPhoneOS6.1.sdk/usr/include/sys/signal.h:157:34: note: 'pthread_attr_t' declared here 
typedef __darwin_pthread_attr_t   pthread_attr_t; 
             ^
/Users/Ants/Dev/iOS/opencv/modules/core/src/rand.cpp:759:39: error: use of undeclared identifier 'PTHREAD_ONCE_INIT' 
static pthread_once_t tlsRNGKeyOnce = PTHREAD_ONCE_INIT; 
            ^
/Users/Ants/Dev/iOS/opencv/modules/core/src/rand.cpp:774:5: error: use of undeclared identifier 'pthread_once' 
    pthread_once(&tlsRNGKeyOnce, makeRNGKey); 
    ^
5 errors generated. 

任意のアイデアでrand.cppで失敗しますか?

+0

私はcmakeを使用して問題なくOSXライブラリを構築できます。 – Ants

答えて

2

手掛かりであるOS Xのそれらの使用の良い概要を示します

が欠落しているように見えますライン:

-- Could NOT find PythonInterp (missing: PYTHON_EXECUTABLE) (Required is at least version "2.0")

私はcmakeargsの中でのpythonのパスを追加し、build_framework.pyファイルを編集することによってこの問題を回避働いていましたセクション(年頃ライン39):

cmakeargs = ("-GXcode " + 
      "-DPYTHON_EXECUTABLE=/usr/bin/python " + 
      "-DCMAKE_BUILD_TYPE=Release " + 
      "-DCMAKE_TOOLCHAIN_FILE=%s/ios/cmake/Toolchains/Toolchain-%s_Xcode.cmake" + 
      "-DBUILD_opencv_world=ON " + 
      "-DCMAKE_INSTALL_PREFIX=install") % (srcroot, target) 

あるいは代わりに、依存関係をインストールするcocoapods使用(それはゼロからコンパイルするより速い方法です)。

+0

ありがとう、私はこれを試して更新します。私はココアポッドを使う考えが好きです。 – Ants

関連する問題