2013-06-24 1 views
2

되지 않습니다 : MYPATH \ displayImage.mexw64는 유효한 Win32 응용 프로그램이 아닙니다.잘못된 MEX-파일 '<myfile> .mexw64'<myfile> .mexw64는 <a href="http://xanthippi.ceid.upatras.gr/people/evangelidis/matlab_opencv/data/" rel="nofollow">opencv sample matlab call</a>을 실행하는 동안, 나는 오류를</p> <p>잘못된 MEX-파일 'MYPATH의 의 displayImage.mexw64'얻고 올바른 Win32 응용 프로그램

컴파일하는 동안 오류가 없습니다. 또한 간단한 helloworld 샘플을 컴파일하고 실행하는 동안 오류가 없습니다.

왜 이런 이유가있을 수 있습니까? 파일 이름이 64라고해도 win32가 필요한 이유는 무엇입니까?

Matlab은 2013a이고 VS는 2012이며 둘 다 64 비트입니다.

UPDATE 내가 호출 된 DLL의 64 비트를해야한다는 2009 년의 this "solution"을 발견했다.

인가이

(1) 사실 요즘과

(2) 실제로 가능?

일부 라이브러리가 32 비트인지 확인하는 방법은 무엇입니까?

+0

링크 된 opencv 버전 라이브러리는 32 비트 또는 64 비트입니까? – Shai

+0

나는 그렇다고 생각한다. 'LIB' 변수를'opencv \ build \ x64 \ vc11 \ lib'로 설정했습니다. 확인하는 방법? –

+0

[dependancy walker] (http://www.dependencywalker.com/)를 사용 해보십시오. – Shai

답변

1

PATH%OPENCV_DIR%\build\x86\vc11\bin을 가리키며이 값은 LIB 설정보다 우선합니다.

이것은 런타임에 발생했습니다.

e.e. PATH 값을 고정하면 프로그램을 다시 컴파일하지 않고도 실행되기 시작했습니다.