3

Mac で stasm ライブラリを構築し、うまくいけばそれを iPhone に移植しようとしています。stasm ダウンロード: http://www.milbo.users.sonic.net/stasm/download.html

提供されているLinux用のmakefileを使用しています。libjpeg と opencv のヘッダー インクルード パスをいくつか変更した後、このエラーで立ち往生しています。

g++ -c ../stasm/violajones.cpp -O3 -Wall -pedantic -I/home/john/OpenCV-2.1.0/include/opencv -I../gsl -I../gsl/gsl -I../image -I../jpeg -I../mat -I../rowley -I../stasm -I../tasm 
In file included from ../stasm/violajones.cpp:24:
/opt/local/include/opencv/cv.h:63:33: error: opencv2/core/core_c.h: No such file or directory 
/opt/local/include/opencv/cv.h:64:33: error: opencv2/core/core.hpp: No such file or directory
/opt/local/include/opencv/cv.h:65:39: error: opencv2/imgproc/imgproc_c.h: No such file or directory
/opt/local/include/opencv/cv.h:66:39: error: opencv2/imgproc/imgproc.hpp: No such file or directory
/opt/local/include/opencv/cv.h:67:38: error: opencv2/video/tracking.hpp: No such file or directory
/opt/local/include/opencv/cv.h:68:45: error: opencv2/features2d/features2d.hpp: No such file or directory
/opt/local/include/opencv/cv.h:69:35: error: opencv2/flann/flann.hpp: No such file or directory 
/opt/local/include/opencv/cv.h:70:39: error: opencv2/calib3d/calib3d.hpp: No such file or directory
/opt/local/include/opencv/cv.h:71:43: error: opencv2/objdetect/objdetect.hpp: No such file or directory
/opt/local/include/opencv/cv.h:72:37: error: opencv2/legacy/compat.hpp: No such file or directory
/opt/local/include/opencv/cv.h:79:37: error: opencv2/core/internal.hpp: No such file or directory In file included
from ../stasm/violajones.cpp:25:
/opt/local/include/opencv/highgui.h:47:39: error: opencv2/highgui/highgui_c.h: No such file or directory
/opt/local/include/opencv/highgui.h:48:39: error: opencv2/highgui/highgui.hpp: No such file or directory

元のメイクファイルはここにアップロードされています https://github.com/tsaizhenling/stuff/blob/master/makefile

trojanfoeが提案したようにディレクトリを変更しようとしましたが、それでも同じエラー:(

/opt/local/include/にあるopencvとopencv2があります

アップデート:

J-16 SDiZの提案を試してみたところ、これが私を前進させました。衒学的なフラグを削除する必要がありましたが、まだ次のエラーで立ち往生しています

g++ -c ../stasm/tab.cpp -O3 -Wall -I/opt/local/include/opencv -I/opt/local/include -I../gsl -I../gsl/gsl -I. ./image -I../jpeg -I../mat -I../rowley -I../stasm -I../tasm make: *ターゲット-lm', needed bystasm を作成するルールはありません。止まる。

メイクファイルが更新されました

アップデート:

最後に、J-16 SDiZ の助けを借りてすべてを修正しました。

opencvがライブラリ名を変更したため、リンカーフラグを更新する必要がありました

誰かがそれを必要とする場合に備えて、makefileは更新されます

4

2 に答える 2

2

変化する

INCL=\
    -I$(OPENCV_HOME)/include/opencv\
    -I../gsl\

INCL=\
    -I$(OPENCV_HOME)/include/opencv\
    -I$(OPENCV_HOME)/include \
    -I../gsl\

${LIB}また、依存関係では使用しないでください。

変化する

something: xxxxxx $(LIBS) $(OBJ)

something: xxxxxx $(OBJ)

Makefile の仕組みを学ぶべきだと思います。これは Makefile の問題です。

于 2012-10-12T11:19:26.840 に答える