오픈소스 컨트리뷰션 Arcus - 개발환경 셋팅 (1)

Dong Wook Lee (Michael)·2020년 10월 9일
0
post-thumbnail

개발환경 셋팅

오픈 소스에 기여하려면 어떤 부분을 기여할지 막연하게 생각하는 것 보다는 프로젝트를 빌드하고
많이 사용을 해봐야지, 어떤 기능이 있는지 또 내가 어떤 기능을 구현할 수 있을지 구체화 할 수 있다.
따라서 프로젝트를 다운받고, 테스트 환경까지 구축하는 과정을 정리해보았다.
설명하기 앞서서 이건 아커스 서버쪽 구현을 위한 환경 설정이라는 것을 밝힌다.
참고로 운영체제는 CentOS release 6.10 버전을 사용했다.

  1. 우선 git clone https://github.com/naver/arcus 을 하여 프로젝트를 로컬에 다운로드 받는다.
  2. 우리는 서버 구현을 할 것이므로, git clone https://github.com/naver/arcus-memcached 명령을 통해서 arcus-memcacehd 프로젝트 소스코드를 다운 받는다.
  3. cd arcus-memcached 로 프로젝트 폴더에 들어간다
  4. ./config/autorun.sh 명령어로 빌드에 필요한 라이브러리를 다운로드 받는다.
  5. ./config —with-libevent=[arcus 프로젝트 절대 경로를 입력한다.]
  6. 터미널에 make 를 하여 빌드를 시작한다.

1번에서 arcus 프로젝트를 클론한 이유가 5번에서 lib-event를 설정해주기 위함이다.

이렇게 까지 하면 프로젝트 빌드까지는 완료된 것이다.

여기까지 성공했다면 다음과 같이 실행파일들이 생성된 것을 알 수 있다.
실행을 하는 명령어는 ./memcahced 로 실행할 수 있지만, 그냥 실행되지 않는 것을 알 수 있다.
그 이유는 사용할 엔진을 지정하지 않았기 때문이다.

./memcached -h 명령을 통해서 확인하면, 다양한 옵션을 확인할 수 있다.

./memcached -E ./.libs/default_engine.so 를 하여 엔진을 지정해줘야 실행을 시킬 수 있다는 것을 알 수 있다.

매번 이렇게 하는 게 귀찮다면, run_memcacehd_sole.sh 에 설정을 해주면 쉘 스크립트로 실행시킬 수 있다.

다음은 내가 설정한 옵션이다. 엔진은 기본 엔진을 사용하였고, 포트번호는 11216을 사용한 것을 알 수 있다. 그리고 -vvvv 이것은 디버그 레벨인데 v의 개수가 많아 질 수록 디버그 레벨이 증가한다.

실행을 한 후 다음의 명령어로 지정한 포트로 연결을 시도한다. telnet [localhost](http://localhost) 11216

실행

그 후 다음과 같이 명령어를 통해서 프로그램을 실행할 수 있다.

/var/log/message 에서 자세한 로그를 확인할 수 있다.

테스트 방법

자신이 작성한 코드를 테스트 해보고 싶다면 make test 로 전체 테스트를 수행할 수 있다.

또한 일부 테스트만 하고 싶다면, prove t/{테스트코드}.t 로 특정한 테스트를 지정하여 테스트 하면 된다.

profile
오픈소스 메인테이너를 꿈꾸는 개발자!

0개의 댓글