windows server 2012 에서는 32bit 바이너리를 프로그램 실행 못하나요?
글쓴이: cococo / 작성시간: 수, 2019/05/01 - 9:01오후
VS2010( C++ ) + mysql.msi ( libmysql.dll ) 을 이용해서 프로그램을 작성하였습니다.
근데, 이게 32bit 버전으로 컴파일된 실행파일입니다.
구조는 디비에 주기적으로 접속해서 데이터 변경해 주고 감시하고... 그런 겁니다.
그런데, 이 프로그램을 고객사 가상서버 ( windows 2012 R2 가비아 ) 에서 돌리니까, 실행이 안되는군요.
사무실 개발 피씨 ( Win10 x64) 에서는 실행되는데, 가상서버에서는 실행이 안되는 겁니다. 에러창 띄우고 죽습니다.
최초에는 msvcr100.dll 메시지가 나와서
https://www.microsoft.com/en-us/download/confirmation.aspx?id=13523
에서 패키지 다운로드 받아서 실행(설치)했는데 안되고.
직접 msvcr100.dll 을 실행파일 디렉토리에 복사해서 써도 에러창 뜨고.
혹시나 싶어서 소스를 64bit 로 컴파일했더니, 이번엔 libmysql 이 컴파일이 안 됩니다. mysql 라이브러리가 32bit 용인가 봅니다.
windows server 2012 에서는 32bit 바이너리를 실행할 수 없는 건가요?
비슷한 경험 있으시면 고견 들려주시면 대단히 감사하겠습니다.
이상입니다. 감사합니다.
Forums:
어떤 에러창을 띄웠는지를 알려 주시면 앞으로 도움이
어떤 에러창을 띄웠는지를 알려 주시면 앞으로 도움이 됩니다. 단순히 "에러창이 떴다"는 것만으로는 알 수 있는 게 없습니다.
calc.exe처럼 별다른 의존성이 없는 다른 32비트 실행 파일들은 실행이 잘 되나요? 만약 실행이 여전히 안 된다면 WOW64가 비활성화되어 있거나 설치되지 않은 경우일 수도 있습니다.
https://community.exchange.se.com/t5/Knowledge-Base/Enabling-Disabling-the-WoW64-optional-feature-in-Windows-Server/ta-p/6404
댓글 달기