xbox kinect를 사용하기 위해 openkinect의 웹 사이트에서 간단한 설치를하고 있습니다. 문제는 OSX 배포판이없고 homebrew가 설치를 담당 할 것이라고 가정합니다.OS X에서 RPATH를 변경하는 방법
설치 마지막 단계에서 설치에 무엇이 잘못되었는지 유용한 단서를 찾았습니다.
나는 사이트에서 들었다. "당신은 연결에 문제가있는 경우, 각 libfreenect LIB [다음 명령을 사용]의 RPATH을 변경해야"
for i in /opt/local/lib/libfreenect*.dylib; do sudo install_name_tool -id $i $i; done
sudo install_name_tool -change libfreenect.0.2.dylib /opt/local/lib/libfreenect.0.2.dylib /opt/local/lib/libfreenect_sync.dylib
sudo install_name_tool -change libfreenect.0.2.dylib /opt/local/lib/libfreenect.0.2.dylib /opt/local/lib/libfreenect_cv.dylib
sudo install_name_tool -change libfreenect_sync.0.2.dylib /opt/local/lib/libfreenect_sync.0.2.dylib /opt/local/lib/libfreenect_cv.dylib
for i in glview regview hiview glpclview tiltdemo record cppview cvdemo; do sudo install_name_tool -change libfreenect.0.2.dylib /opt/local/lib/libfreenect.0.2.dylib /opt/local/bin/$i; sudo install_name_tool -change libfreenect_sync.0.2.dylib /opt/local/lib/libfreenect_sync.0.2.dylib /opt/local/bin/$i; done
내 RPATH은 확실히 잘못 설정되어 있습니다. 그리고 CMake로 건축 할 때이 2 차 메시지는 명확하게 나의 의혹을 확인한다.
CMake Warning (dev):
Policy CMP0042 is not set: MACOSX_RPATH is enabled by default. Run "cmake
--help-policy CMP0042" for policy details. Use the cmake_policy command to
set the policy and suppress this warning.
MACOSX_RPATH is not specified for the following targets:
fakenect
freenect
freenect_sync
유일한 문제는 위의 명령이 작동하지 않는다는 것입니다. 그 이유 중 하나는 내 맥이 내 모든 파일을 /usr/local/lib/
에두고, /opt/local/lib/
을으로 만들지 않기 때문입니다. usr
에서 opt
까지 파일 중 일부를 복사하여 링크 오류 수를 줄였습니다. 그러나 여전히 몇 가지로 남았습니다. 다시 말하지만, 그들은 모두이 라이브러리를 사용하여이 문제를 쉽게 해결할 수있는 opt
에로드되지 않습니다.
위 코드의 첫 번째 블록을 올바르게 실행하는 방법에 대한 도움이 도움이 될 것입니다!
서브 노트 (비슷한 문제) :
- https://openkinect.org/wiki/Getting_Started#Manual_Build_under_OSX
- CMake warnings under OS X: MACOSX_RPATH is not specified for the following targets
- Can you please help me understand how Mach-O libraries work in Mac Os X?