クロスプラットフォームなC/C++ IDE CLion を使ってみた
標題通り Windows,Linux,Mac で使えるC/C++のIDE CLionをMac OS X (10.9)で使ってみた。
現在のところβ版扱いで60日間に限り無料で使える。
以下CLionのスクリーンショット。
特徴としては、以下2点が挙げられる。
・コンパイル関係の設定をCMakeList.txtに書いていく
・Vim Emulator
試しにOpenCVを使ってMBAのiSightのキャプチャをしてみた。OpenCVはVer.2.4.9をソースからコンパイルして/opt/OpenCV/2.4.9配下にインストールしたものを利用する。
以下main.cpp
#include <iostream>#include "opencv2/objdetect/objdetect.hpp"#include "opencv2/highgui/highgui.hpp"#include "opencv2/imgproc/imgproc.hpp"そして、以下がCMakeList.txt
using namespace std;using namespace cv;
int main() {
CvCapture *capture; Mat frame, frameCopy, image;
capture = cvCaptureFromCAMCV_CAP_ANY;()
if(capture== NULL){
cout << "Failed to open camera" <<endl;
return -1; }
cvNamedWindow("Result", CV_WINDOW_AUTOSIZE); cout << "Captureing... " << endl;
while (1) {
IplImage *iplImage = cvQueryFrame(capture); frame = iplImage; if (frame.empty()) break; if (iplImage->origin == IPL_ORIGIN_TL) {
frame.copyTo(frameCopy); } else {
flip(frame, frameCopy, 0); }
cvShowImage("result", iplImage); if (waitKey(10) >= 0) break; }
cvReleaseCapture(&capture;); cvDestroyWindow("Result"); return 0;}
cmake_minimum_required(VERSION 2.8.4)7行目以降がOpenCV関係の設定
project(helloCLion)
set(SOURCE_FILES main.cpp)
add_executable(helloCLion ${SOURCE_FILES})
set(OPENCV_PREFIX_PATH /opt/OpenCV/2.4.9)
set(OpenCV_LIBS opencv_core opencv_imgproc opencv_highgui)
FIND_PACKAGE(OpenCV REQUIRED)
INCLUDE_DIRECTORIES(${OPENCV_PREFIX_PATH}/include)
LINK_DIRECTORIES(${OPENCV_PREFIX_PATH}/lib)
TARGET_LINK_LIBRARIES(helloCLion ${OpenCV_LIBS})
問題は、デバッグしようとするとコンソールに下記が出力されデバッグできない。
/Users/hayato/Library/Caches/clion10/cmake/generated/6982c880/6982c880/Debug/helloCLion
During startup program exited with code 1.
Process finished with exit code 0
CLionはデバッガとして同梱の(/Applications/CLion EAP.app/Contents/bin/gdb/bin/gdb)を使っているらしく、このgdbにコード証明書があたっていないのが原因かと考えコード証明書をあててみたが現象は改善せず。