2014-11-07 9 views
0

win8 환경에서 DBD-mysql을 설치했지만 다음과 같은 오류가 발생합니다.Win8.1에서 DBD-mysql을 설치할 수 없습니다.

저는 ActivePerl 5.10, mysql 5.5를 사용합니다. 누구든지 나를 도울 수 있습니까?

사실, 나는 소스에서 설치하고 싶지 않습니다. 그러나 ppm 패키지를 찾는 것은 쉽지 않습니다.

일부 시스템 경로가 추가되지 않으면 쉽게 처리 할 수 ​​있습니다. 하지만이 오류는 몇 가지 창 라이브러리가 필요하다는 것을 보여주었습니다. 그런 다음 설정하는 방법과 설정 위치를 알지 못합니다. DBD-mysql의 소스 코드를 변경해야하기 때문입니다. 하지만 'perl -MCPAN -e'명령을 사용하여 설치할 DBD :: mysql 명령을 실행할 때마다 새로운 DBD-mysql 패키지가 다운로드되므로 로컬에서 코드를 수정하더라도 아무 쓸모가 없습니다.

Creating library blib\arch\auto\DBD\mysql\mysql.lib and object blib\arch\auto 
\DBD\mysql\mysql.exp 
mysqlclient.lib(handshake_client.obj) : error LNK2019: unresolved external symbo 
l [email protected] referenced in function "public: virtual c 
lass Blob __thiscall Handshake_client::process_data(class Blob const &)" (?proce 
[email protected][email protected]@[email protected]@[email protected]@Z) 
mysqlclient.lib(handshake.obj) : error LNK2019: unresolved external symbol _Comp 
[email protected] referenced in function "protected: bool __thiscall Handshake::pr 
ocess_result(int)" ([email protected]@@[email protected]) 
mysqlclient.lib(handshake.obj) : error LNK2019: unresolved external symbol _Free 
[email protected] referenced in function "public: void __thiscall Security_buffer: 
:free(void)" ([email protected][email protected]@QAEXXZ) 
mysqlclient.lib(handshake.obj) : error LNK2019: unresolved external symbol _Acqu 
[email protected] referenced in function "public: __thiscall Handshake::H 
andshake(char const *,enum Handshake::side_t)" ([email protected]@[email protected][email protected]@ 
@Z) 
mysqlclient.lib(handshake.obj) : error LNK2019: unresolved external symbol __imp 
[email protected] referenced in function "public: virtual __thiscall Han 
dshake::~Handshake(void)" ([email protected]@[email protected]) 
mysqlclient.lib(handshake.obj) : error LNK2019: unresolved external symbol __imp 
[email protected] referenced in function "public: virtual __thiscall Han 
dshake::~Handshake(void)" ([email protected]@[email protected]) 
mysqlclient.lib(common.obj) : error LNK2019: unresolved external symbol _GetUser 
[email protected] referenced in function "public: __thiscall UPN::UPN(void)" ([email protected]@Q 
[email protected]) 
blib\arch\auto\DBD\mysql\mysql.dll : fatal error LNK1120: 7 unresolved externals 

NMAKE : fatal error U1077: 'C:\Perl\bin\perl.exe' : return code '0x1' 
Stop. 
    CAPTTOFU/DBD-mysql-4.028.tar.gz 
    nmake -- NOT OK 

답변

0

마침내 해결했습니다. 환경은 먼저 주목해야합니다 : Win8.1 + ActivePerl 5.16 + MySQL 5.5. ,

set path=%path%;D:\Program Files (x86)\MySQL\MySQL Server 5.5\bin 

2) 구성 MySQL 데이터베이스를 NULL로 살고 있고 사용자 이름 = 'ODBC'과 암호를 사용하여 새 사용자를 추가 :

1) 실행 창 명령 줄을 엽니 다.

3) CD로 :

D:\Program Files (x86)\MySQL\MySQL Server 5.5\lib 

와 '선택'등의 하위 디렉터리를 만들; 딸기 펄 설치

4)

D:\Program Files (x86)\MySQL\MySQL Server 5.5\lib\opt; 

5) 제거 및 딸기로 libmysql.a libmysql_.dll 복사;

6) 설정 경로 = % 경로 %; D : \의 Program Files (x86) \ MySQL은 \ MySQL 서버 5.5 \ lib 디렉토리 \ 옵트

동일한 명령 줄 콘솔에서

7) 실행 명령 :

perl -MCPAN -e "install DBD::mysql" 

이제 모든 것이 정상입니다.