~/NiTE-Linux-x64-2.2/Sample/Bin/ 에 있는 예제들도 처음에는 "장치를 못찾는다"고 에러가 나다가
OpenNI2/Drivers 에 libfreenect2-openni2.so, libfreenect2-openni2.so.0 두파일을 복사하면 동작한다
NiTE 에 샘플 폴더에 있는 UserViewer.cpp 의 내용과 kinect2_tracker 코드 내용이 동일한데 장치를 못 찾는다고 나온다
libfreenect2-openni2.so 파일이 없는게 문제인듯 하다
/opt/ros/kinetic/lib/ 에 관련 so 파일을 복사했으나 에러는 동일했다
복사한 파일 4개
libNiTE2.so/ jni.so
libfreenect2-openni2.so / so.0
https://github.com/mcgi5sr2/kinect2_tracker 설명에 보면
/usr/lib 에 libOpenNI2.so 를 복사하라고 되어 있는데
이미 파일이 존재하고 있었다
/usr/lib 에 있는 파일은 libOpenNI2.so.0를 심볼릭 링크로 libOpenNI2.so로 만들었다
파일 크기는 261.2KB
인터넷에서 OpenNI2.2 를 다운받았다
~/Download/OpenNI-Linux-x64-2.2/Redist/
에 보면 libOpenNI2.so(476.5kB), libOpenNI2.jni.so(46.3kB)
가 있어서 이걸 /usr/lib 에 복사하면 kinect2_tracker 실행과정에 shared object 를 못찾는다고 에러가 난다
https://github.com/OpenKinect/libfreenect2/
여기에 나온 설치 순서중에 OpenNI2 를 설치하도록 되어 있다.
이건 동작은 하는데..
옵션이라고 씌여 있다..
이걸 빼고 설치해야 하나?
sudo apt-get install libopenni2-dev
해결책 :
/usr/lib/OpenNI2/Drivers/ 폴더에
libfreenect2-openni2.so / so.0 파일 두개를 복사하면 된다
ㅁㅁ
더 연구해볼 링크들
https://github.com/mcgi5sr2/kinect2_tracker
http://wiki.ros.org/openni_tracker
유경호책임님 위키 - 노트북 부팅시 ros launch 자동실행
https://github.com/james-yoo/G_ROBO/wiki