- 締切済み
xcodeのビルド時のエラー
ご覧頂き有難うございます。 現在、opencvを使ってiPhoneアプリの開発を試みているところです。 環境-------- Mac OS 10.6 X Code 3.2 iOS SDK 4.3 open cv 2.2 ------------ http://iphone.moo.jp/app/ このサイトを参考にガウシアンフィルタのプログラムを 組んで実行すると以下のエラーが出ます。 ------------------------------------------------------------------------- Ld build/Debug-iphonesimulator/Test.app/Test normal i386 cd /Users/******/Desktop/Test setenv MACOSX_DEPLOYMENT_TARGET 10.6 setenv PATH "/Developer/Platforms/iPhoneSimulator.platform/Developer/usr/bin:/Developer/usr/bin:/usr/bin:/bin:/usr/sbin:/sbin" /Developer/Platforms/iPhoneSimulator.platform/Developer/usr/bin/g++-4.2 -arch i386 -isysroot /Developer/Platforms/iPhoneSimulator.platform/Developer/SDKs/iPhoneSimulator4.3.sdk -L/Users/****/Desktop/Test/build/Debug-iphonesimulator -L/usr/local/lib -L/Users/keisukeyamamoto/Desktop/Test/../OPENCV -F/Users/*****/Desktop/Test/build/Debug-iphonesimulator -filelist /Users/*****/Desktop/Test/build/Test.build/Debug-iphonesimulator/Test.build/Objects-normal/i386/Test.LinkFileList -mmacosx-version-min=10.6 -Xlinker -objc_abi_version -Xlinker 2 -framework Foundation -framework UIKit -framework CoreGraphics -o /Users/*****/Desktop/Test/build/Debug-iphonesimulator/Test.app/Test ld: duplicate symbol _main in /Users/****/Desktop/Test/build/Test.build/Debug-iphonesimulator/Test.build/Objects-normal/i386/fastGaussian.o and /Users/*****/Desktop/Test/build/Test.build/Debug-iphonesimulator/Test.build/Objects-normal/i386/main.o collect2: ld returned 1 exit status Command /Developer/Platforms/iPhoneSimulator.platform/Developer/usr/bin/g++-4.2 failed with exit code 1 Command /Developer/Platforms/iPhoneSimulator.platform/Developer/usr/bin/g++-4.2 failed with exit code 1 ------------------------------------------------------------------------- ググッても中々解決しなかったので質問させていただきました。 何卒宜しくお願い致します。 初心者ですので足りない情報があるかと思いますが、補足が必要な場合は すぐに対応します!
- みんなの回答 (1)
- 専門家の回答
みんなの回答
- kmee
- ベストアンサー率55% (1857/3366)
エラー表示はこれからもずーーーっとお世話になります。 読んで理解するようにしましょう。 今回の肝は > ld: duplicate symbol _main in /Users/****/Desktop/Test/build/Test.build/Debug-iphonesimulator/Test.build/Objects-normal/i386/fastGaussian.o and /Users/*****/Desktop/Test/build/Test.build/Debug-iphonesimulator/Test.build/Objects-normal/i386/main.o ここです。 duplicate: 複製とか同じものとかの意味 symbol: プログラムでは、変数とか関数とかの「名前」を表わすもののこと。 途中の処理の関係で、実際のソース中とは違うこともあるけど、たいていは共通の部分があるので、そこから推測できる _main: そのduplicate symbol の名前。 _ が頭についていたら、それを取ったのがだいたいソースでの名前になっている。ということで「main」 ということで。 「main」がfastGaussian.oとmain.oの両方にあります、というエラーです。 そのサイトにあるサンプルは、それ自体がメインプログラムになるように、main関数で定義されています。 それを、ひな型かなんかでもともとあるmain.mと一緒に使おうとしてませんか?
お礼
回答ありがとうございます!!! その通りでした。 エラーメッセージ見て理解するように心がけます!! ありがとうございます。