비주얼 스튜디오 2008에서 2015로 마이그레이션 중 아래와 같은 에러가 있었습니다. 'myproject.exe' 프로그램을 시작할 수 없습니다. 지정된 파일을 찾을 수 없습니다. 컴파일, 링크에러를 모두 잡고 프로젝트 실행시 발생한 에러입니다. 디버깅 - 명령에 있는 $(TargetPath)와 링커 - 일반 - 출력 파일에서 설정된 값이 달라서 발생을 했더군요. $(TargetPath) 는 *.exe 였다면 링커쪽에는 $(OutDir)$(ProjectName)_debug.exe 이런식으로 되어 있어서 발생한 에러였습니다. _debug를 지우고 파일명을 같게 해주면 잘 됩니다. 아마 신규로 Visual Studio로 프로젝트 만들어서하면 이런 에러가 없을 것 같은데, 마이그레이션 하면서 자동 수정 업그레이드 된 프로젝트 설정이 문제가 된 것 같네요.
CEGUI 샘플을 빌드 중 아래와 같은 에러가 발생했습니다. error C2001: 상수에 줄 바꿈 문자가 있습니다. error C2146: 구문 오류: ')'이(가) 'd_botBarLabel' 식별자 앞에 없습니다. error C2146: 구문 오류: '('이(가) 'd_botBarLabel' 식별자 앞에 없습니다. finalText += reinterpret_cast<const encoded_char*>("❚"); 이런식으로 특수문자가 들어간 3곳에서 발생했는데요, 처음에는 파일 고급 저장 옵션에서 기존에 유니코드(서명 없는 UTF-8)로 되어있던것을 유니코드(서명 있는 UTF-8)로 바꿔 컴파일 하니 빌드는 되지만 실행중에 저 특수문자가 ? 로 표시되더군요. 아무래도 iconv 같은 걸 사용해서 인코딩 처리를 해줘야 싶은 느낌입니다. //finalText += reinterpret_cast<const encoded_char*>("❚"); finalText += reinterpret_cast<const encoded_char*>("|"); 단순히 특수문자를 지우고 | 로 바꿔준 후 기존 파일 인코딩 형식에서도 에러 없이 빌드 후 실행에 성공했습니다. 아래 스샷과 같이 글자 마지막 부분에 추가되는 텍스트에 적용 된 것을 확인 가능합니다.
1>------ 빌드 생략: 프로젝트: xxx ------ 1> 2>------ 빌드 생략: 프로젝트: xxx ------ 2> 3>------ 빌드 생략: 프로젝트: xxx ------ 3> 4>------ 빌드 생략: 프로젝트: xxx ------ 4> 5>------ 빌드 생략: 프로젝트: xxx, 구성: Release Win32 ------ 5>이 솔루션 구성에 대해 빌드하도록 선택된 프로젝트가 없습니다. ========== 빌드: 성공 또는 최신 상태 0, 실패 0, 생략 5 ========== 64비트 서버에 비쥬얼 스튜디오도 설치했겠다, 서버 모듈을 빌드해줬습니다. 당연히 활성 솔루션 플랫폼을 x64로 선택후 빌드했는데 총 5개의 프로젝트 모두 빌드 생략이 되는거 아니겠어여? ㅜ.ㅜ 또 뭥미.... 프로젝트 설정을 보려고 해도 이렇게 에러를 뿜더군요. "작업을 완료할 수 없습니다. 지정되지 않은 오류입니다." ㅜ.ㅜ 구성관리자에서 x64 플랫폼에도 보면 빌드에 다 체크가 되어있습니다. 옵션에서 플랫폼을 보니 왠걸? x64가 있어야 할듯 한데 없네요. 구글링 들어갑니다. MSDN : Visual Studio 64비트 구성 요소 설치 에 보니 x64관련 구성 요소를 설치하려면 전체 설치를 수행하거나 사용자 지정 설치 중에 x64컴파일러 및 도구를 체크하라고 하네요. 일단 Visual Studio 2008 설치를 다시 실행했습니다. 근데 없네요... 했는데... 이런... ㅎㅎ; Visual C++ 밑에 트리에 숨어있었네욤. 보통 Visual Basic등 필요없는거 체크 없애고만 설치해서 저리 밑에 숨어 있을 줄이야 ㅎㅎ;; X64 컴파일러 및 도구 바로 체크해주고 설치 했습니다. 설치 후 옵션에서 확인하니 x64 플랫폼이 있습니다!! 당연히 서버 모듈도 빌드가 잘되구요~ ㅎㅎ; 클라 개발자가 서...
댓글
댓글 쓰기