Apache log4cxx는 Apache log4j(자바용)에서 C++용 포팅된 로깅 프레임워크입니다. Apache log4cxx의 라이선스는 아파치 2.0 라이선스를 따릅니다. log4cxx 빌드하는 것이 다소 번잡스러워서 정리해보고 싶었습니다.
이 글을 쓰는 시점에서 최신 stable version 0.11.0이고, 최신 rc 버전은 0.12.1이네요.
사이트 주소
- Log4cxx doxygen page: https://logging.apache.org/log4cxx/latest_stable/index.html
- github: https://github.com/apache/logging-log4cxx
준비사항
Source Code
- log4cxx (0.12.0)
- apr (1.7.0): https://apr.apache.org/download.cgi
- apr-util (1.6.1): https://apr.apache.org/download.cgi
- boost (1.78): https://www.boost.org/users/download
※ 제가 설치한 버전은 괄호 안을 참고해 주시기 바랍니다.
※ boost는 직접 빌드하지 않고 Prebuilt된 바이너리를 사용하셔도 됩니다. 직접 빌드해서 설치할 경우 여기를 참고하세요.
Application
- OpenJDK: https://openjdk.java.net/install/
- Strawberry Perl: https://strawberryperl.com/releases.html
- zip_app: 반디집을 사용했습니다.
- sed_app: http://gnuwin32.sourceforge.net/packages/sed.htm
빌드하기
※ Application 및 boost는 미리 설치되어 있다고 가정하겠습니다.
1) apr 빌드
- CMake 프로그램을 열고 apr을 빌드하기 위한 준비를 합니다.
소스코드/빌드 위치를 셋팅하고, configuration 버튼을 누릅니다. - CMAKE_INSTALL_PREFIX에서 최종 빌드 산출물이 저장될 위치를 정해준 후, Generate 버튼을 누릅니다.
- Visual Studio를 열고 빌드를 합니다.
- 빌드가 끝나면, INSTALL 프로젝트에 대고 오른쪽 버튼 → 프로젝트만 → INSTALL만 빌드를 선택하여, 1번에서 지정한 위치에 최종 빌드 산출물이 저장되도록 합니다.
2) apr-util 빌드
- apr 빌드할 때와 과정은 유사합니다.
소스코드 원본/빌드 위치를 셋팅하고, configuration 버튼을 누릅니다. - 그러면 2가지 문제로 인해 오류가 발생할텐데요,
① apr include / libraries 위치: 이전에 설치한 apr 위치를 지정해 줍니다.
② EXPAT – EXPAT_LIBRARY 경로를 다음과 같이 지정해줍니다.
※ EXPAT이 안 보이면, Grouped와 Advanced를 둘 다 체크해주세요. 쉽게 찾을 수 있습니다. - CMAKE_INSTALL_PREFIX에서 최종 빌드 산출물이 저장될 위치를 정해준 후, Generate 버튼을 누릅니다.
- Visual Studio를 열고 빌드를 합니다. INSTALL 프로젝트로 설치까지 마무리 해주세요.
3) log4cxx 빌드
- 마지막으로 log4cxx을 빌드하기 위해 cmake를 엽니다.
소스코드 원본/빌드 위치를 셋팅하고, configuration 버튼을 누릅니다. - 당연히 여기저기서 오류가 납니다. 아래 화면을 참고하셔서 세팅해주시면 됩니다.
- Visual Studio를 열고 빌드를 합니다. INSTALL 프로젝트로 설치까지 마무리 해주세요. 아래와 같이 최종 산출물이 잘 나오면 끝입니다 🙂