기본 콘텐츠로 건너뛰기

Error: #<ArgumentError: invalid byte sequence in CP949> 해결법




작은 팁을 하나 공유합니다.

SketchUp의 Extension을 사용하려다가, 확장기능이 불러와지지 않는 현상이 발생했습니다. 'Error: #<ArgumentError: invalid byte sequence in CP949>' 오류가 발생하며 설치한 확장기능이 로딩되지 않는 현상입니다.



찾아보던 중, 스케치업이 Ruby라는 플랫폼을 사용해 확장기능을 불러온다는 것을 알았고, 한글 윈도에서 Ruby가 한글을 인식하지 못해 생기는 문제임을 알았습니다. 그래서 스케치업 플러그인 폴더의 'sketchup.rb' 파일을 수정함으로 문제를 해결할 수 있을 것으로 보였습니다. (groups.google.com/d/msg/rubykr/NMsPJ9ZjMN0/n1NPSOSmNhEJ)

해당 플러그인에 대한 문제는 해결되는 듯 보였으나.. 다른 기능들이 제대로 불러와지지 않는 문제가 발생하였습니다. 스케치업 환경설정의 확장기능 탭에선 확장기능들이 사용 가능하다고 뜨지만, 실제론 기능을 사용할 수 없는 문제였습니다. 다만 달라진 것이 있다면, 파일을 수정하기 전엔 새롭게 설치한 확장기능을 선택하였을 때 버전과 설명이 뜨지 않았지만, 파일을 수정한 후에는 제대로 된 버전과 설명이 뜬다는 점입니다.

확장기능을 지웠다 설치하기를 수번을 반복하다가.. 확장기능이 %Appdata% 경로에 저장됨을 알았고, 해당 경로에는 사용자명이 들어간다는 것을 확인했습니다. 아마도 현재 사용자명이 한글로 되어있어, 경로 인식에 문제가 생긴 것 같았습니다.

그래서 새로운 윈도 로그온 계정을 영문으로 생성하고, 확장기능을 다시 설치하였습니다. 그리고 스케치업 실행, 확장기능 확인. 그동안 발생했던 오류들이 모두 해결됨을 확인했습니다.

환경경로에 한글이 들어가서 생기는 문제들이 왕왕 있습니다. 이전엔 늘 기본 관리자 계정으로 윈도를 설치하여 인지하지 못했던 부분인데, 지금은 일반적으로 설치하여 문제가 발생한것 같습니다. ^^;

요약: (제목)과 같은 오류가 발생할 경우, 사용자 폴더명이 한글로 되어있지 않은가 확인해보고, 영문으로 된 사용자명을 사용하시면 됩니다.

사용자 폴더명은 최초 로그온시 설정한 사용자명으로 생성됩니다. 이는 나중에 사용자명을 변경하더라도 바뀌지 않고 고정됩니다. 아직 UTF-8 인코딩이 보편화 되거나, 어느 시스템에서나 문자의 깨짐 없이 문자열을 읽어들이지 못하므로.. 환경경로나 시스템과 관련된 문자열은 필히 '영문'으로 작성하시길 강력히 권하는 바입니다. ^^

댓글