목록초보사장 생활 (1270)
Dharma
그냥 컴파일 하면 에러가 발생합니다. > g++ -o test test.cpp -lcppunit > ./libcppunit.so: undefined reference to `dlclose' > ./libcppunit.so: undefined reference to `dlopen' > ./libcppunit.so: undefined reference to `dlsym' > collect2: ld returned 1 exit status > make: *** [test] Error 1 이런 에러 인데 , 기존의 윈도우 체제랑은 달라서 조금 당황합니다. 침착하게 -ldl 옵션을 link 옴션에서 추가해 주시면 무리 없이 컴파일 됩니다.
Fixture 는 Test Case 들을 모아놓구 한꺼번에 실행 시킬때 편리하게 쓸 수 있는 클래스 입니다. 여러 XUnit 프레임 워크를 찾아보시면 Fixture 는 대게 setUp() 과 tearDown() 두가지 메서드를 지원한다는 것을 아실 수 있을 것입니다. 즉 다시 설명하자면, 여러개의 테스트 메서드에서 공통적으로 필요한 준비물이 있다면 (예를 들자면 DB에 접속 한다던지 , 아니면 아래 예제의 경우처럼 복소수 여러개를 미리 준비한다 던지) 이렇게 '미리' 준비하는 부분이 setUp() 메서드 이고, setUp() 에서 설정한 내용을 해제 한다던지 메모리를 지운다던지 DB 접속을 끊는다던지 하는 마무리 작업을 해주는 곳을 tearDown() 이라고 합니다. - 쉽게 말하자면 constructo..
CppUnit 을 공부하는 와중에 요리책 (Cookbook)을 따라하면서 한글로 좀 정리를 할 필요가 있어서 정리중입니다. 원래 글은 CookBook 을 직접 보시면 되시고 저는 저의 입장이 많이 반영된 글입니다. 환경 : .NET 2005 의 VC8.0 간단한 테스트 케이스 - Simple Test Case 지금부터 복소수(complex) Class 를 만들어 볼까 합니다. 이를 TDD (Test Driven Development)를 이용해서 작성할 것입니다. 처음에 프로젝트를 생성합니다. 일단 GUI 버젼을 빼고 Text 버젼으로 시작해보지요. VS2005 에서 파일 - 새로만들기 - 프로젝트 를 선택하시고 Visual C++ 섹션 - Win32 - Win32 콘손 응용 프로그램 으로 새 콘솔용 프로..
컴파일 하면 TestRunner 쪽에서 에러가 발생합니다. 사실 TestRunner 없어도 cppunit 안에 Text 형식의 TestRunner 가 포함되어 있긴 하지만 (이걸 사실 제일 많이 씁니다) 그래도 안되는게 있으면 짜증이 나지요. 만지작 거리다 보니까 CPPUnit 쪽 위키에서 해결방안이 있더군요. http://cppunit.sourceforge.net/cppunit-wiki/BuildingCppUnit1 ('' 여기를 참조하시면 되고요. 실제로 수정하는 부분은 #import "libid:80cc9f66-e7d8-4ddd-85b6-d9e6cd0e93e2" version("7.0") lcid("0") raw_interfaces_only named_guids 여기서 7.0 인 부분을 8.0 으로..
Guile 하면 전 스트리트 파이터 2의 미국 캐릭터가 생각이 나는군요. http://en.wikipedia.org/wiki/Guile_(Street_Fighter) 여기에 자세한 정보가 있구요 ^^ 이렇게 생겼었죠 , 좀 미화가 많이 이루어 진거 같기도 하고 -ㅅ- (음.. 회사에서 신제품 테스트 하다가 , 기존의 태터툴을 쓰면 이미지 관련 해서 다루는게 확실히 불편해서 잘 다루기 힘들군요 ^^; ) 거두 절미하고 절대 왼쪽의 가일하고 상관이 없습니다. 가일은 GNU 에서 만든 Scheme 계열의 언어인데 주로 가벼운 모듈이나, 융통성 있는 응용프로그램을 만드는데 쓰입니다. http://www.gnu.org/software/guile/guile.html 여기가 공식 페이지 이고 1.8 버젼 까지 나왔습..
사람이 어떻게 까지 게으를 수가 있는 것인지 !!! 아 물론 프로그래머의 영역은 조금 다르긴 합니다. 게으르면 게으를 수록 훌륭한 프로그래머 입니다. 사실은 전제 조건이 있지요 '자기 할 일을 한다는 전제하에 ' 말이죠. 자기 할일을 하면서 게으른 프로그래머가 최고지요 ^^; 사실 유닉스 쪽에서는 유명한 기술이라고 합니다. 견문이 짧은 제가 드디어 알게 된 것이긴 하지만 말이죠. 유닉스에서 프로그램을 만들기 위한 makefile 스크립트를 자동으로 생성하게 도와주는 자동화 툴입니다. (저는 이런것 무지 좋아합니다 +ㅂ+ ) Makefile.am 과 configure.ac 파일 두개만 생성시켜 주고 나서 콘솔에서 autoreconf -f -i 를 가볍게 입력해주면 자동화 스크립트가 모든 것을 알아서 해주는..
제가 무식한 탓인지 저는 리눅스의 가장 기초적인 쉘을 잘 못 씁니다. 편리한 툴에만 익숙해져 있기 때문입니다. (그렇다고 쉘이 편하지 않다는게 아닙니다!!) 유닉스 친구계열들을 보면 환경변수에 값들을 등록시켜서 쓰는데 그 문법이 crazia>NAME=crazia crazia>export NAME 식으로 등록합니다. 이걸 편하게 하기 위해서 shell 로 여러가지 환경 변수를 등록시키기 위해서 shell 로 작성을 합니다. #!/bin/bash export NAME=crazia export HOBBY=game export HOBBY2=sleep 이 shell 을 my.sh 라고 작성해서 실행 옵션을 줘서 실행시키면 아무 동작을 안합니다. 결국 이거저거 시도하다가 알아낸 방법은 source ./my.sh 라..
이누잇 님의 글에 PDA 열심히 써보자고 생각해서 만지작 거렸는데 제가 주로 쓰는 OS 가 집 & 회사가 전부 Vista 인 관계로 Active Sync 가 설치 되어 있지 않아서 애 먹었습니다. 그래서 문제가 발생했는데 어디를 찾아봐도 좌절했다는 이야기만 쓰여져 있더군요. 그래서 혼자 이리저리 하다 우연히(!) 해결책을 찾았는데 , 정보를 제일 많이 얻었던 곳에 그 사실을 남겨야 겠다고 생각해서 글을 남겼습니다. 국내 최고의 사이트라고 유명하더군요. +ㅂ+ www.mymits.net 이고요. 아래는 거기에 올린 제 글입니다. 우찌 우찌해서 SPH-M8100 을 하늘의 은총으로 업어왔습니다. 주신분의 성의도 있고 해서 열심히 쓸려고 노력을 하는 중인데 워낙 모르는 계열이라 애를 좀 썼습니다. 제가 집/회..
PDA 폰 (Pocket PC 분류라고 하더군요) 을 설정하던 와중에 Windows Mobile Device Center 를 실행 시킬때마다 DEP 관련 오류가 뜨더군요. 그래서 구글링을 해서 대충 정보를 모아보니 DEP 관련 기술을 끄라고 나와 있더군요. (이 얼마나 무책임한가 ㅜ.ㅜ ) 그래서 아무 생각 없이 Cmd.exe 를 실행시키고 다음 명령을 쳐서 bcdedit.exe /set {current} nx AlwaysOff 꺼버렸습니다. -ㅅ- 그때부터 제 컴퓨터는 난리가 나더군요. 심지어 고객앞에서 Internet Explorer 가 안되는 대형 사태까지 발발.. (얼마나 뜨악했는지..) 다시 복구하는 명령을 찾아보니 bcdedit.exe /set {current} nx AlwaysOn 로 되어 ..
MS에서 개발을 좋아하는 사람들에게 무료 개발툴을 배포한다는 소식을 늦게 접했습니다. http://msdn2.microsoft.com/ko-kr/express/default.aspx 바로 여기가 그 사이트 입니다. 30일 트라이얼이지만 등록을 하면 무한대 가 되지요. 금전적인 이유가 아니라 저는 전혀 다른 이유로 설치했습니다. (사실 어둠의 경로를 이용하면 최상위 버젼인 Team Foundation 버젼을 설치가능합니다.) 제가 가지고 다니는 서브 노트북이 사양이 조금 후달리다 보니, 자연스럽게 통합 스튜디오인 .NET 버젼을 설치한다 해도 심하게 버벅입니다. 그래서 가벼운게 없나 찾아보던중 Express 가 있더군요. 간단한 공짜 IDE도 제공하고 아주 맘에 듭니다. C#은 C#만, C++은 C++ 만..