build openssl with msvc

준비물: version 1.0.1e
perl없이 빌드하기: msvc 솔류션 파일 이용
openssl/ 디렉토리 밑에 풀어서 솔류션을 열어서 빌드한다.

참고: https://famellee.wordpress.com/2013/01/30/build-openssl-with-visual-studio-without-perl/

한마디

소스사이트에 올라온 1.0.1e버젼의 파일 내용이 프로젝트와 다르다. 그동안 업데이트 된듯.
설명서에 나온 perl을 이용한 dll빌드가 나을듯 하다.

boost 기반 httpd lib : cpp-netlib

node.js, python … 웹프로토콜 지원은 당연시하는 시점에서
c++에서 간단한 웹서버 기능이 필요할 때 사용하면 좋을듯 하다.
boost를 설치하고 있는 상황이라면 http://cpp-netlib.org/
boost에 편입되진 않았지만 boost의 껍데기를 둘러쓰고 있다.

간단한 웹서버 구현

한마디

따로 설치해야 하는 불편함이 있지만 간단한 http client/server구현에는 딱 좋을 듯.

python packet build 오류 : error: Unable to find vcvarsall.bat

python27은 기본 라이브러리 VS2008(VS90)을 사용하기 때문에
파이썬 패키지를 직접 빌드하는데 VS2008이 설치가 안되어 있으면 error: Unable to find vcvarsall.bat를 출력한다.

  • Visual Studio 2010 (VS10): SET VS90COMNTOOLS=%VS100COMNTOOLS%
  • Visual Studio 2012 (VS11): SET VS90COMNTOOLS=%VS110COMNTOOLS%
  • Visual Studio 2013 (VS12): SET VS90COMNTOOLS=%VS120COMNTOOLS%

후기

환경변수 덮어쓰기도 가능하구나!

ms online updater에서 offline이미지 받기

ms online updater/downloader의 단점

  • 요즘엔 online update / download가 많다.
  • internet 연결이 안되는 환경에서는 곤란한 점이 많다.
  • iso이미지를 받으려고 하면 ms계정 로그인을 해야한다.

offline용으로 받으려면

  • online용 다운로더를 받는다.
  • /Layout 옵션을 붙여준다.
  • 실행하면 다운로드 경로를 묻는다.

vs2013 update 4 rtm offline용 다운로드

한마디

  • 사용할 때마다 까먹어서 기록으로 남겨둠
  • 귀찮은거 없고 편하다.

initialize apache thrift user defined structure

structure일 경우 default 값으로 초기화는 어떻게 할까?
json형식으로 초기값을 지정할 수 있다.

header.thrift를 incldue해서 사용하고 기본 값을 지정한다고 하자.

json형식으로 사용할 때 숫자, 문자열 구분을 하므로 맞게 넣어주면 된다.

소감

thrift 정말 쓸만한듯.

apache thrift IDL include

thrift의 매력적인 기능 중 하나는 include이다. define을 중복하지 않고 공유할 수 있도록 만들어준 센스

include하고 cpp코드를 생성하는데 계속 못찾겠다는 오류발생… 영문도 모르고 실망하고 있었는데 자세히 을 읽어보니 이미 답이 있었다.

namespace를 누락했던 것. namesapce의 변수를 사용할 경우 반드시 붙여주도록 하자.

소감

문서 읽을 때 꼼꼼히 읽어보자 !!

apache thrift with c#

apache thrift c# 예제 구하기 정말 힘들다. byte[]로 받고 json모양으로 화면 출력도 해보고 괜춘함.

thrift 정의

thrift compile

버퍼에 저장하고 복원

byte[]로 저장할 수 있다는 것은 그것을 파일로 보내 것 나만의 네트워크 엔진을 쓰건 원하는 대로 수정할 수 있다는 뜻. TJSONProtocol대신 TBinaryProtocol을 성능 차원에서 추천한다. json한번 보고 싶었음.

소감

c#에서도 맘껏 쓸 수 있다니 좋네.

google gyp

구글쪽 프로젝트를 사용하다보니 gyp라는 빌드시스템을 사용한다.
scons처럼 python 기반 프로젝트이다. breakpadchrome v8을 빌드하려면 필요해진다.

gyp 소스 받기

[git clone https://chromium.googlesource.com/external/gyp]

gyp 빌드 : for windows

c:\python27\Scripts\gyp.exe에 생긴다.

소감

리눅스처럼 기본 시스템에 설치가 되면 좋겠지만 태생적으로 윈도와 통합이 잘 안되는 대규모 오픈소스 프로젝트들, 통합이 잘 되어도 윈도 디렉토리 구조는 적응이 안된다.