728x90
반응형
728x90
반응형
728x90
반응형
728x90
반응형
728x90
반응형
728x90
반응형
728x90
반응형
728x90
반응형
728x90
반응형


visual studio 2008/2010 을 대상으로한 색 모음(color scheme)입니다.
 사용 방법은
  1. *.settings 파일을 다운로드 받는다.
     다운로드시, 임의의 경로가 아닌 자신의 계정에서 접근이 가능한 경로에 넣어 둔다.
     (필자는 studio-style 경로등을 만들어서 넣어둠)
 2. visual studio menu 중 tools / import and export  settings 를 선택하여 설정 정보를
    import 한다. 이때 기존 사용 환경 정보를 백업하는 것도 가능하다.
 3. 대부분 일단 import 한 정보에다가 추가 변경 설정을 할 것이므로, *.settings 파일은 후에
    별도의 자신만의 이름으로 설정하여 재사용하는 것이 좋다.

012


728x90
반응형
728x90
반응형

728x90
반응형
728x90
반응형
728x90
반응형
728x90
반응형
손쉽게 gnu glibc 의 버전을 확인하는 예제이다. 
728x90
반응형
728x90
반응형
728x90
반응형
728x90
반응형

 MapReducde는 구글이 제안한 분산 처리를 위한 개발 모델입니다. 조엘은 소프트웨어를 넘어서 에서도 소개되기도 한 이 방법은 대용량 자료의 분산 처리에 유용한 구조입니다.

 이미 하둡 등의 프레임워크가 많이 나와 있으며, 미래의 컴퓨터 언어는 이런 처리를 기본 사양으로 제공해 줄 가능성이 높습니다. 물론 기존의 컴퓨터 언어도 미래형 언어로 변신하려면 이런 기능을 끌어 안아야 할 것입니다.
 그런데 Qt 쪽에도 이런 기능이 있는가 하는 것을 찾아 보다 보니 QtConcurrent 가 있습니다. 주 대상은 멀티코어 프로그램 개발이 필요한 경우에 저수준 인터페이스의 지원을 넘어서, 고수준의 인터페이스 제공을 목적으로 하고 있습니다.

 하지만, 향후 함수형 언어의 사용을 지향하는 MapReduce 모델과 객체지향 기반 모델인 Qt를 융합하는 방향이 어떻게 될 지는 노키아(201x)의 향후 방향을 계속 지켜봐야 할 것입니다. [본문 초안은 2011년에 작성되었습니다.]
 아래는 필자가 작성한 예제이며, 듀얼코어 CPU라면 한번에 두 개까지만의 쓰레드가 실행됨을 확인할 수 있을 것입니다. 물론 두 개의 쓰레드는 듀얼코어에서 사용하기 가장 이상적인 쓰레드 개수입니다.
 예제 실행을 원하면 Nokia Qt 사이트에서 LGPL 지원하는 Qt SDK 를 받아서, 콘솔 예제를 실행해 보면 됩니다.
  



728x90
반응형
728x90
반응형
728x90
반응형
728x90
반응형

728x90
반응형
728x90
반응형



 wxWidgets(=wxWindows)는 크로스 플랫폼을 지원하는 오픈 소스 C++ 라이브러리이다. 라이센스는 자체 라이센스를 가지고 있으며, LGPL 을 기반으로 한다고 보면 된다. 역시 이러한 오픈 소스 계열의 가장 큰 단점은 문서 및 교육 문제인데, 아마존에 가면 몇 권의 책이 있음을 알 수 있고, 최근에는 국내에서도 개발 소개 서적이 나와서 정보를 얻기 조금 용이해졌다. 하지만 역시 많은 기능 활용을 원한다면 온라인 도움말이 가장 큰 도움을 줄 것이다.

 wxWindows는 이십년 가까운 긴 개발/테스트를 기능을 가진 매우 안정적인 라이브러리이며, 상용으로 존재하는 노키아의 Qt와 비슷한 용도로 사용한다고 보면 될 것이다. 물론 최근에는 Qt도 LGPL이 적용되도록 공개된 상태에서 IDE가 지원하는 SDK까지 무료로 제공해 주므로, wxWindows와 병용해서 사용해 보는 것도 좋을 것이다.

  wxWindows의 IDE는 다양한 형태로 존재하는데, 윈도에서 개발시에는 주로 Visual Studio가 권장된다. 물론 VS는 MS에서 천문학적인 액수를 투자하여 만드는 제품이기에 완성도가 높을 수 밖에 없고, 3rd 파티 도구도 많아서 사용하기에 가장 좋다고 볼 수 있다. (최근에는 Express 버전을 MS에서 무료 공개해 주고 있어서 이것을 사용하면 라이센스 문제도 없다.)

 또한 eclipse를 CDT와 사용하는 방안도 있다. eclipse는 일단 JVM 도구이기에 편하게 개발하려면 개발 리소스가 매우 많이 필요한 단 점도 있지만, 수많은 유용한 플러그인이 존재하는 장점이 있다.

  그리고 이 글에서 소개하는 Code::Blocks는 오픈소스 기반의 크로스 플랫폼 IDE 이다. 단순히 wxWindow뿐 아니라 종합적인 C++ 코딩 및 GUI 디버깅 환경을 제공해 주므로 유리한 점이 많다. 그리고, 리눅스/맥 등의 타 OS에서도 바로 IDE가 지원되므로 프로젝트 적용 시에 매우 편리하다. 단지, 윈도우즈에서 사용하려면 cygwin, mingw 등의 gcc 지원 환경에서 빌드를 할 수 있도록 해야 하므로, 설치 시에 불편함이 있다.
 따라서 좀더 손쉽게 Code::Blocks와 wxWindows를 설치하는 방법을 소개해 본다.

 1) Code::Blocks는 mingw를 내장한 32비트 윈도우즈용 배포본을 현재 제공하고 있다. (ver.8.02)
     codeblocks-8.02mingw-setup.exe 라는 형태로 되어 있다.
     (http://www.codeblocks.org/downloads)

 2) wxWidgets는 공식 홈페이지에서는 소스 파일로만 제공해주고, 그것을 받아서 환경별로 빌드하여
    사용하는 방법이 기본 사용 방법이다. 하지만, 우리는 그 귀찮은 과정(?)을 일소 하기 위하여
    wxPack이라는 미리 빌딩된 wxWindows를 사용하기로 한다.
    (http://wxpack.sourceforge.net/)
     Downloads에 보면 최신 버전의 wxPack이 있지만, Code::Blocks 8.02 설치시에 함께 설치되는
     MinGW의 gcc버전이 3.4.5이기에 그것에 맞는 wxPack의 다운로드하기로 한다.
     글을 읽어 보면 2008년 여름 버전부터 gcc4지원을 위하여 포팅/테스트 작업을 하였다는 것을
     알 수 있다. 그래서 2.8.7.03의 2007년 마지막 버전을 받기로 한다.
     wxPack의 버전은 빌드한 wxWidgets의 버전이기도 하다.
     (wxPack_v2.8.7.03.exe)

 3) 설치는 아무거나 순서없이 한다.
    wxPack에는 gcc빌드 버전만 설치하면 되고, Visual Studio용 빌드는 필요하면 설치하라.

 4) Code::Blocks를 실행 후, 새 프로젝트를 시작하자.

 5) 새 프로젝트 생성 위자드에서 wxWidgets 프로젝트를 선택하여 새로 만들자.

 6) 각 과정을 따라가면 아무 문제가 없다가, $(#wx) 라는 wxWidgets 경로를 찾는 부분에서
     설정이 안 될 것이다. 그때, wx의 경로로 wxPack의 wxWidgets가 설치된 경로를 잡아준다. 
    (예> C:\SourceCode\Libraries\wxWidgets2.8 )
    Code::Blocks 메뉴 Settings / Global variables 에서 확인 또는 추가하면 된다.

 7) 정상적인 인식이 되었는지는 빌드나 디버깅, 런을 통하여 wxWidgets 프로그램이 
     작동하는 것으로 확인 가능하다...
 
c.f> 다운이 잘 안되는 분을 위해 파일을 모아서 올려 본다. (7-zip 압축)

728x90
반응형

+ Recent posts