http://sweetkegoon.blog.me/50100334222
-ml:namespace prefix = o ns = "urn:schemas-microsoft-com:office:office" />
http://sweetkegoon.blog.me/50100334222
-ml:namespace prefix = o ns = "urn:schemas-microsoft-com:office:office" />
갑자기 한밤 중에 JSON에 꼿혀가지고...헬로월드 예제 한번 만들어봄.
1. JSON 스터디 엔트리 포인트
http://json.org/ 및 구글링
2. JSON C++ 라이브러리
json-cpp (http://sourceforge.net/projects/jsoncpp/) 로 해봤음.
딱히 특별한 이유는 없고,
그냥, 첫번째로 링크되있길래 구글링해보니 JSON C++ 라이브러리로는 제일 유명한 듯.
3. JSON C++ 라이브러리 빌드
1) 2에서 언급한 사이트에서 다운로드. (오늘자 최신버전은 0.5.0)
2) make directory 에 가면 vs71 폴더 아래 sln 파일이 있음. 열어서 라이브러리 빌드하면 됨. VS2008 용 솔루션 파일이긴 하나, 2010 에서는 워닝 몇개만 뜨고 잘 컨버젼됨.
3) 빌드가 완료되면 build>vs71>debug>lib_json 디렉토리에 가면, 빌드 환경에 따른 lib 이 생성된게 보임. 내 경우엔 json_vc71_libmtd.lib 이란 이름으로 생김. (mtd 로 빌드했다)
4. HelloWorld 만들기
1) 3에서 만든 json lib을 프로젝트에 포함시켜주자. (Project Property > Linker > Input > Additional Dependencies
2) json 헤더 파일을 다운받은 파일에서 가져와서 프로젝트에 적당히 포함 (include\json)
3) http://jsoncpp.sourceforge.net/ 를 보고 따라서 Main 함수 작성. (주의: 공식사이트 코드는 레퍼런스 코드라 그대로 작성하면 동작안함. 무려 버그도 있음, 흠
5. 실행 결과
6. 소감
JSON에 대한 언급이 부쩍 많아져서, 뭔가 알아야 할것 같은 생각이 들었는데, 알고보니 XML 과 비슷하면서, 어떻게 보면 XML 보다 훨씬 유연하고 확장된 데이터 타입이 아닌가 싶다.
무엇보다 XML 처럼 엘리먼트 이름가지고 구분을 하지 않고, std::map처럼 key:value pair 로 데이터를 처리하니까, 보기도 깔끔하고.
JSON 파서들도 어마어마하게 많은 걸 보면, 이미 꽤나 자리잡은 포맷이 아닌가 싶네. 한마디로 대세인듯.
7. Future works
다음 번에 다시 JSON 에 꼿히면,
1) JSON 포맷으로 Query Response 를 보내주는 웹서비스에 접속해서 결과를 가져와보자. (ex) 티스토리? ㅋ)
2) Java 라이브러리로도 테스트
을 사용하기 위해서 이클립스 Maven 플러그인인 M2Eclipse
를 설치한 후에 이클립스에서 빌드할때마다 다은과 같은 메시지가 떴습니다.


1. OpenSSL 소스 받기 (URL: http://www.openssl.org/source)
- 컴파일을 하기 위한 가장 최신버전(현재: openssl-1.0.0d.tar.gz)의 OpenSSL 소스를 다운받는다.
- 다음 소스 코드의 압축을 풀어준다. ( C:\openssl-0.9.8r )
2. Perl Interpreter (URL: http://www.activestate.com/activeperl)
- 다운로드 한 다음 기본설정으로 설치한다. ( C:\Perl )
3. Assembler
- 암호화 라이브러리는 성능을 개선하고자 부분적으로 어셈플리어를 사용한다. 따라서 이를 컴파일하는 어셈블러를 설치해주어야한다.
- 우리는 NASM 를 사용하기로한다. 아래의 경로 중 하나를 사용하여 다운로드한다.
http://www.nasm.us
http://sourceforge.net/projects/nasm/
http://www.nasm.us/pub/nasm/releasebuilds/2.10rc4/win32/
4. PATH 환경변수 등록
- 필요한 파일들을 모두 다운 받았다면 컴파일을 해야하는데, 컴파일하기 전에 중요한 사항이 환경변수에 실행파일에 대한 PATH를 등록하는 일이다. 이를 해주지 않는다면 컴파일 도중 실행파일을 찾지 못하여 컴파일이 안된다. 다음의 경로가 환경변수 시스템변수 PATH에 등록되었는지 확인한다. 테스트 커맨드 창에 ml 혹은 perl 입력해보면 알 수 있음.
C:\Perl\bin
C:\Program Files\NASM
5. 빌드
- 커맨드 창 실행 후 OpenSSL 소스 경로로 이동.
C:\openssl-0.9.8r
- Configure
C:\openssl-0.9.8r> perl Configure VC-WIN32
- Makefile 생성 (NASM을 사용하는 경우)
C:\openssl-0.9.8r> ms\do_nasm
- 빌드 (빌드는 Visual Studio Command Prompt 를 사용한다.)
C:\openssl-0.9.8r> nmake -f ms\ntdll.mak
6. 테스트
- 위의 과정이 모두 정상적으로 이루어진 경우 C:\openssl-0.9.8r\out32dll 폴더 아래에 결과 파일들이 생성된다.
ssleay32.lib
libeay32.lib
ssleay32.dll
libeay32.dll
- 이를성공적으로 컴파일이 되었는지 테스트 해보기 위해서 다음의 커맨드를 입력한다.
C:\openssl-0.9.8r\out32dll> ..\ms\test
- 마지막에 "passed all tests" 라는 메세지가 뜨면 성공한 것.
7. 설치
- 모든 과정에 끝난 후 직접 OpenSSL을 사용하기 위해서 설치를 해야한다. 다음의 커맨드를 입력한다.
C:\openssl-0.9.8r> nmake -f ms\ntdll.mak install
- 설치가 끝나면 C:\usr\local\ssl 경로에 개발하기 위한 모든 소스파일 및 실행파일들이 설치된 것을 확인할 수 있다.
최근 덧글