0

OS X 10.6.8 で OpenCV をビルドしようとしています。ソースをダウンロードし、ビルド ディレクトリを作成し、ccmake を実行して構成し、次に cmake を実行しました。make を実行すると、次の出力が得られます。

[laptop] build$ pwd
/Users/jesse.aldridge/OpenCV-2.4.2/build
[laptop] build$ make
...
[ 92%] Built target opencv_perf_photo_pch_dephelp
[ 92%] Built target pch_Generate_opencv_perf_photo
[ 93%] Built target opencv_perf_photo
[ 93%] Built target opencv_test_photo_pch_dephelp
[ 94%] Built target pch_Generate_opencv_test_photo
[ 94%] Built target opencv_test_photo
Linking CXX shared library ../../lib/cv2.so
Undefined symbols for architecture x86_64:
  "_PyGILState_Ensure", referenced from:
      OnMouse(int, int, int, int, void*)in cv2.cpp.o
      OnChange(int, void*)in cv2.cpp.o
      NumpyAllocator::allocate(int, int const*, int, int*&, unsigned char*&, unsigned char*&, unsigned long*)in cv2.cpp.o
      NumpyAllocator::deallocate(int*, unsigned char*, unsigned char*)in cv2.cpp.o
  "_PyGILState_Release", referenced from:
      OnMouse(int, int, int, int, void*)in cv2.cpp.o
      OnChange(int, void*)in cv2.cpp.o
      NumpyAllocator::allocate(int, int const*, int, int*&, unsigned char*&, unsigned char*&, unsigned long*)in cv2.cpp.o
      NumpyAllocator::deallocate(int*, unsigned char*, unsigned char*)in cv2.cpp.o

  ...a bunch of similar errors

私は C++ の経験があまりないので、このエラーが何であるかはわかりません。任意のヒント?

完全な出力は次のとおりです: https://gist.github.com/3190726

4

1 に答える 1

1

ディレクトリに移動したらbuild、次のコマンドを実行します。

cmake -G "Unix Makefiles" ..
make -j8
sudo make install

これは常に私のために働いてきたものです。cmake コマンドの末尾にある 2 つのドットを忘れないでください。最初にそれを試してみて、それが機能する場合は、ccmake のオプションを変更してみてください。cmake の前に ccmake を実行することは想定されていません。これは、cmake のインタラクティブなフロント エンドです。ccmake を使用して make ファイルを生成した場合は、cmake を実行しないでください。ccmake から make に直行するだけです。

于 2012-07-27T23:10:22.947 に答える