전체 글

일상/메모
소프트웨어/IDE

이클립스 CDT로 C/C++ 개발 시작하기

목차들어가기이클립스 CDT 설치하기이클립스로 C/C++ 프로그램 개발하기마무리 들어가기 이전 포스팅에서 이클립스에 대한 소개를 해봤다.이제 본격적으로 CDT를 이용한 개발에 대해서 이야기해보려고 한다.다만 이클립스 CDT에 대한 소개는 이미 많이 존재하고 있어서 대부분의 내용은 링크로 대체한다. 이클립스 CDT 설치하기 이클립스 CDT를 설치하는 방법은 아래 두 가지가 있다.개인적으로 1번을 추천한다. 2번은 정신건강에 해롭다.C/C++ 개발자용 이클립스 다운로드Classic 이클립스 다운로드 후 CDT 플러그인 설치윈도우에서 이클립스로 C/C++을 개발하기 위해서는 툴체인도 필요하다. cygwin 이나 minGW 등을 사용한다.이 모든 과정은 다음 블로그(링크)에 잘 설명되어 있다. 동영상을 선호하면 ..

소프트웨어/IDE

이클립스 통합개발환경 소개 및 설치

목차이클립스 소개이클립스 인스톨이클립스 사용법이클립스 디버깅 방법마무리 이클립스 소개이클립스는 개발자를 위한 통합개발환경이다. 10년 전에는 Java 개발환경으로 유명했고 (지금도 유명하다) 5년전 즈음에는 안드로이드 앱 개발환경으로 유명했다.지금은 안드로이드 스튜디오에 안드로이드 개발환경은 넘어간 상황이지만 여전히 이클립스는 개발자라면 한번 즈음은 접해보는 IDE이다. 나 같은 경우는 지금도 이클립스를 사용해서 ARM용 네이티브 (c/c++) 서비스 들을 개발한다. 이클립스의 전반적인 내용은 나무위키를 참조하자. 아주 설명이 잘되어 있다.조금 정리하자면 장단점은 아래와 같다. 장점운영체제에 제한이 없다.여러 언어를 지원한다.방대한 플러그인을 지원한다.무설치판이다. 사용목적에 따라 여러 버전을 유지할 수..

소프트웨어/툴 & 프로파일링

gprof 고급사용법 : call 그래프 결과 이미지로 변환하기 등

이전 포스팅에서 (http://kkangeva.tistory.com/67) 기본적인 사용법을 다뤘다. 아래 내용은 이전 포스팅의 내용 기본으로 작성된 것이다. [gmon.out 파일을 지정하기]기본적으로 gmon.out 파일은 실행파일과 같은 위치에 만들어진다. 하지만 실제로 프로파일링이 필요한 환경에서는 다른 디렉토리를 지정하고 싶을 수 있다. 가령 rootfs가 읽기전용이거나 실행파일의 위치가 읽기전용일 경우 재현이 잘되지 않아서 여러 번 프로파일링을 반복하고 결과를 저장하고 싶은 경우 사실 이전 포스팅에서 이미 방법을 소개했다. GMON_OUT_PREFIX 환경변수를 사용하면 된다. 아래는 기본적인 gprof 시퀀스다. $ g++ -g -pg -o test test.cpp $ ./test $ gpr..

소프트웨어/툴 & 프로파일링

예제와 함께하는 gprof를 이용한 기본적인 CPU 프로파일링

gprof를 사용하면 특정 실행파일의 함수별 호출횟수, 대략적인 CPU 사용시간을 확인할 수 있다. 즉, 함수별 호출횟수를 기반으로 성능 최적화 포인트 (혹은 성능저하 포인트)를 잡아낼 수 있는 툴이다. 참고로 CPU 사용률의 경우, 10ms 단위의 샘플링이기 때문에 아주 상세한 정보라고 보기는 힘들다. 그리고 기본으로 제공하는 text 리포트의 경우 callstack 정보를 상세하게 확인하기 어려운 단점이 존재한다. [기본적인 사용법]기본적인 프로파일링 시퀀스는 다음과 같다.컴파일 with -pg실행프로파일링 리포트 확인-pg 옵션이 활성화된 실행파일은 아래 세 가지 작업이 추가가 된다. gmon.out 파일생성 (GMON_OUT_PREFIX 환경변수로 위치 조정가능) 10ms 마다 PC (프로그래밍 ..

소프트웨어/툴 & 프로파일링

gperftools & tcmalloc 소개

[소개]구글의 성능 측정 툴이 모태가 되어서 개발된 오픈소스 툴이다.멀티스레드 환경에서 잘 동작한다고 주장하고 있으며 아래 세 가지가 메인 기능이라고 한다.malloc 성능향상 : tcmallocheap-checkerheap-profilercpu-profiler 체커나 프로파일을 위한 리포트를 생성하기 위해서 pprof 라는 내부 툴이 있다.다만 해당이 golang 버전으로 대체 되었다고 한다.얼핏 살펴보니 perf 또한 지원하는 형태로 발전한 듯 하다.나중에 시간나면 한번 살펴봐야지. - https://github.com/google/pprof [TCMALLOC]간단하게 -ltcmalloc 또는 -ltcmalloc_minimal 을 링크하는 것으로 끝이다.이렇게 하면 코드 상의 malloc 또는 new..

취미/여행

온가족 나들이 장소 율동공원

와이프랑 운동삼아 율동공원에 다녀왔습니다. 율동공원 후문 (별표)에서 시작해서 저수지를 한 바퀴 돌고다시 출발지로 돌아오는 코스였습니다. 쉬엄쉬엄 구경하면서 걸으니 약 2시간 정도 걸리더군요. 후문에 들어서면 상쾌한 길이 나타납니다.운동삼아 나온 가족들이 많이 보입니다. 공간이 허락되는 곳은 대부분 텐트가 자리잡고 있습니다.의외로 배드민턴을 치는 가족이 많더군요. 조금 걷다보면 관리사무소가 나타납니다. 관리사무소 앞에는 이렇게 자전거를 타난 아이들로 넘쳐납니다.대부분은 자전거 타는 법을 가르쳐주는 부모님과 함께 있더군요. 관리사무소 옆에 대로변으로 나가면 이렇게자전거 대여점이 있습니다. 여기서 대여를 해서 자전거 타는 법을 가르쳐주는거죠. 대여료는 쌉니다.재밌게도 잠자리체와 채집통도 빌려주네요. 초등학생..

취미/맛집

행복점보 (태평역, 수진동)

이사온 집 근처의 괜찮은 중국집을 찾지 못한 처지였는데우리동네 맛집 포스팅을 읽게 되었습니다. 오홀~ 근처에 괜찮은 중국집이 있었네요.(참고로 배달은 되지 않습니다) 우선 위치는 아래와 같습니다. 가천대역 3번 출구와 태평역 1번 출구 사이에 있습니다.태평역 쪽에서 출발했는데 언덕을 올라간다고 힘들더군요; 열심히 올라가다보면 버스 정류장 [05-032]를 만나게 됩니다. 버스 정류장 바로 뒤에 [행복점보]가 위치하고 있습니다.이름하여 짬뽕 전문점! 실내가 생각보다 크지는 않습니다. 메뉴판입니다.짬뽕 전문점이라서 그런지 짬뽕 메뉴가 좀 세분화 되어 있습니다. 저희는 블로거가 추천한 2번 세트에서 짬뽕을 낙지짬뽕으로 업그레이드 했습니다.업그레이드시 비용이 추가됩니다. 가장 먼저 나온 짜장면입니다.짜장면의 경..

취미/여행

남한산성 나들이

휴일을 맞아 남한산성에 나들이 다녀왔습니다. 가는 방법은 굉장히 쉬워요. 8호선 [남한산성 입구역] 혹은 [산성역]으로 가셔서9번 혹은 9-1번을 타시면 됩니다. 참고로 남한산성 꼭대기까지 올라가는 버스는9번, 9-1번, 52번이 있습니다.52번은 운행 중인 버스가 많지 않아서 오래 기다려야 합니다. 올라가는 길이 1차선이라서 사람이 몰리는 날에 가게 되면40분에서 1시간은 도로에서 버려야 합니다. 중간에 내려서 등산로로 걸어올라가는 것도 (운동삼아) 좋은 선택일 것 같습니다. 저는 9번 버스를 타고 올라갔습니다.차가 밀려서 한 1시간 정도 걸린 것 같네요;; 버스에서 내려서 조금만 걸어가면 이렇게 편의점들이 즐비합니다. 남문 주차장입니다. 휴일에 가서 그런지 만차네요.주차하기도 힘들고 빠져나오기도 힘들..

강에바
강에바의 이것저것