2008/12/02

MySQL Connector/C++ 1.0.1 Alpha 컴파일 하기

MySQL Connector/C++ 를 사용하기 위해서는 소스를 받아 컴파일을 하여 사용하여야 한다. 이 글에서는 Visual C++ 2005 에서 컴파일 하는 방법을 소개하고자 한다.


소스 내려 받기

MySQL Connector/C++ 은 launchpad(https://launchpad.net/mysql-connector-cpp) 를 통해 볼 수 있으며 Bazaar를 설치하여 다운 받을 수 있다.


bzr branch lp:~mysql/mysql-connector-cpp/trunk


bzr branch lp:~andrey-mysql/mysql-connector-cpp/v1_0_1


이것저것 다 귀찮으면 이 글의 맨 마지막에 첨부한 프로젝트 소스를 사용해도 된다.


소스를 받아서 포함되어 있는 README 파일을 보면 마지막 부분에 보면 Windows 에서 컴파일 하는 방법이 나온다. 그 내용을 참고하여 본인이 수행한 내용을 기준으로 정리해 보았다.


우선 컴파일을 위해서 cmake(http://www.cmake.org) 프로그램을 받아야 한다.


설치판을 받아서 설치해도 되지만 레지스트리 건들고 하는걸 싫어하는 필자같은 분들은 무설치 압축 버전을 받으면 된다.


마지막으로 mysql 5.0 이상이 필요한데 이 또한 설치판이 아니고 무설치 압축판을 받으면 된다.


이상의 준비물을 정리해 보면...


+ Visual Studio 2005


+ CMake 2.4 이상 (2008년 12월 2일 현재 버전 2.6)


+ MySQL 5.0 이상


+ MySQL Connector/C++ 소스 (2008년 12월 2일 현재 1.0.1 Alpha)




Visual Studio 를 제외한 나머지 3개의 압축 파일을 풀어준다. 설명을 편히 하고자 MySQL_Conn_cpp 란 폴더에 풀어 놓은 걸로 하겠다.






먼저 시작메뉴의 Visual Studio 2005 에 있는 "Visual Studio 2005 명령 프롬프트"를 실행하여 작업을 한다.

Visual Studio 2005 명령 프롬프트 창에서 MySQL_Conn_cpp 폴더 아래에 있는 MySQL Connector/C++ 소스 위치(MySQL_Conncpp\v1_0_1)로 이동을 하여 아래의 작업을 수행한다.


1. cmake 경로 설정

cmake 을 어느 곳에서나 실행 할 수 있도록 현재의 path에 추가로 cmake 의 경로를 추가 한다.

E:\...\v1_0_1>set path=%path%;E:\Temp\MySQL_Conn_cpp\cmake-2.6.2-win32-x86\bin


2. mysql 경로 설정

E:\...\v1_0_1>set MYSQL_DIR=E:\Temp\MySQL_Conn_cpp\mysql-5.1.30-win32


3. cmake 컴파일러 설정

Debug 의 경우

E:\...\v1_0_1>cmake -G "Visual Studio 8 2005" -DCMAKE_BUILD_TYPE=Debug


Release 의 경우

E:\...\v1_0_1>cmake -G "Visual Studio 8 2005"


64비트 Debug 의 경우

E:\...\v1_0_1>cmake -G "Visual Studio 8 2005 Win64" -DCMAKE_BUILD_TYPE=Debug


64비트 Release 의 경우

E:\...\v1_0_1>cmake -G "Visual Studio 8 2005 Win64"


4. 컴파일

Debug 의 경우

E:\...\v1_0_1>devenv.com MYSQLCPPCONN.sln /build Debug


Release 의 경우

E:\...\v1_0_1>devenv.com MYSQLCPPCONN.sln /build Release


64비트 버전의 경우 프로젝트 소스를 다른 이름(v1_0_1_x64)의 경로에 압축을 풀어서 수행하였다.


위의 작업을 모두 수행하면 v1_0_1 폴더 아래 driver 폴더에 debug 와 release 폴더가 생기고 그 안에 mysqlcppconn.dll 와 mysqlcppconn.lib 파일이 생긴다.


MySQL Connector/C++ 을 포함시키고자 하는 프로젝트에 Debug 용과 Release 용을 따로 따로 포함을 시켜 주어야 한다. 프로젝트를 Debug에 놓고 Release 용 mysqlcppconn.lib 를 포함 시키면 정삭 동작을 하지 않았다.


아래 프로젝트 소스와 만들어진 결과 물로 DLL 과 LIB를 추가 하였다. win32 에 대해서 접속까지는 테스트를 했는데 그 이상은 아직 테스트 해보지 않았다.


지금 진행중인 프로젝트에 포함 시킬 예정으로 x64까지 테스트 할 계획이다.

결과는 다음 포스팅에서....


MySQL Connector/C++ 1.0.1 Alpha 프로젝트 소스




MySQL Connector/C++ 1.0.1 Alpha 컴파일된 DLL 과 LIB 파일




No comments :

Post a Comment