http://darkblitz.tistory.com/category/%EC%82%BD%EC%A7%88%EC%9D%BC%EA%B8%B0?page=2

 

 

Energy minimization 부분을 살펴보다 관련 소스를 얻어 컴파일하려고 하니 아래와 같은 오류가 발생하였다.


 error LNK2019: unresolved external symbol utIsInterruptPending referenced in function...


utIsInterruptPending가 extern으로 선언되어 있으나 링크되지 않아서 생기는 문제였다.


utIsInterruptPending가 어디에 쓰는 함수인고 하니, Ctrl+C가 입력되었을 때, 이를 처리하는 함수라고 한다.


utIsInterruptPending는 undocumented MATLAB API로 libut.dll에 구현되어 있으며, libut.lib를 mex 컴파일시에 링크해주면 되겠다. libut.lib는 기본적으로 mex에서 링크하지 않고 있으므로 -l옵션을 이용하여 추가해 주어야한다. 다음과 같이 하면 되겠다.


mex blahblah.cpp -lut


출처: http://www.caam.rice.edu/~wy1/links/mex_ctrl_c_trick/

 

Posted by uniqueone
,