결국 수많은 구글링 끝에 cmake를 다시 정밀하게 수정해보고 빌드를 했지만 역시 그 부분에서 막혔다..
뭔가 이번에도 근본적으로 막힌 느낌이다...
하는 수 없이 강사님께 질문을 드려보니
sudo pip3 install virtualenv
이 부분이 문제였다..
정말 조금만 더 생각해보면 어디가 문제인지 알 수 있었을 텐데 후회되긴 했지만 일단 진행을 해보았다.
우선 오류가 났을때 오류 코드를 잘 읽어보면 그대로 진행해도 괜찮다는 것을 알 수 있었다.
나는 빨간줄로 에러가 뜬다고 그걸 제대로 잘 읽지도 않고 알아보려 하지 않고 그냥 넘긴 것이다.
꼼꼼함과 확실함이 부족했다 약간 편법으로 지름길을 통해 간 느낌이다...
그렇게 계속 진행하니 numpy오류도 없었고 정상적으로 파이썬 빌드 경로도 가상 환경으로 잘 나왔다.
하지만 문제였던 게 또 경로에 파일이 없었다.
# Install OpenCV
sudo make install
sudo ldconfig
cd /usr/local/lib/python3.6/site-packages/cv2/python-3.6 // 문제였던 부분
// 나는 저 경로가 존재 하지 않았다.
# Rename
mv cv2.cpython-36m-xxx-linux-gnu.so cv2.so
# Go to your virtual environments site-packages folder
cd ~/env/lib/python3.6/site-packages/
# Symlink the native library
ln -s /usr/local/lib/python3.6/site-packages/cv2/python-3.6/cv2.so cv2.so
[출처] 젯슨 나노에 waveshare 동키카 개발환경 만들기|작성자 ZETA7
절망감이 온다... make는 최소 2시간이다.. 하지만 뭔가 감이 왔다 이건 이 분이 오래전에 해서 생긴 버전 문제인 것 같다는
그래서 계속 파일들을 뒤져봤다. 구글링도 해봤었는데 우선 가상 환경을 풀어보고 찾아보니 있다?
알고 보니 우연히 내가 local을 빼고 들어간 거였는데 문제는 site-packages까지는 들어갔지만 중요한 cv2가 없었다.
알 수 없는 미궁에 빠지는 느낌이었다.
하지만 반드시 이번에는 내 힘으로 풀어보리라
물론 파일 검색으로 cv2.so를 했지만 뜨지 않았다.
근데 갑자기 의문이 들었다. 왜 검색으로 site-package를 찾을 때는 경로가 안 나왔는데 여기에는 있는 거지?
내가 지금 들어가 있는 경로는 뭐야... -> 아! 설마 usr은 검색이 안되었나
여기에 생각이 이르니까 내가 기술을 잘 못쓰고 있구나 싶었다.
찾아보니 터미널에 직접 입력하여 경로 내에 특정 문자로 시작되는 파일을 찾는 명령이 있었다.
======================================================================
1. 리눅스 파일명으로 검색하는 법.
사용법
find [찾을 위치] -name [파일명]
예) 최상위 폴더부터 하위로 'apache'로 시작하는 파일 찾기.
find / -name 'apache*'
예) usr 폴더부터 하위로 'apa'로 시작하는 파일 찾기.
find /usr/ -name 'apa*'
리눅스 파일 찾기, 파일속 문자열 찾기
1. 리눅스 파일명으로 검색하는법. 사용법 find [찾을위치] -name [파일명] 예) 최상위 폴더부터 하위로 'apache'로 시작하는 파일 찾기. find / -name 'apache*' 예) usr 폴더부터 하위로 'apa'로 시작하는 파..
overcode.tistory.com
======================================================================
있다! 찾았다 경로가 조금 다르지만 분명히 있다. 느낌으로 해결하면 안 되지만 느낌이 중요할 때도 있다 이건 정상적이다.
내가 레퍼런스 한 사이트와 다른 점은 2가지 첫째 'site'가 아닌 'dist'였고 둘째 xxx가 아닌 aarch64가 되었다.
dist-packages는 Ubuntu와 같은 파생에도 존재하는 Debian 전용 규칙이라고 한다. 추측하건대 시간이 지나면서
버전이 달라지며 바뀐 변화인 듯했다. 결과적으로 둘은 실행적인 면에서 차이가 없다는 게 내 결론이었다.
이렇게 진행을 하니
잘 진행되었다.
마지막에서 오류가 하나 더 있었는데 바로 core dumped였다.
jetson tx에서는 재부팅해서 해결되기에 이번에도 시도했으나 잘 되지 않았다...
이 문제는 의외로 금방 해결되었는데 구글링 결과 특정 코드를 넣으면 해결된다고 한다.
$ export OPENBLAS_CORETYPE=ARMV8
https://seoftware.tistory.com/112
[jetson nano] opencv illegal instructions (core dumped)
import cv2 로 젯슨나노에서 opencv를 잘 사용하고 있었는데, 어느날 갑자기 cv2 module이 없다는 에러가 떴습니다. opencv 를 재설치 했는데도, illegal instructions (core dumped) 라는 메세지와 함께 opencv..
seoftware.tistory.com
그리고 해결되었다! 만세!
다시 보면 별거 아니었지만 순수하게 기뻤다 좋다 ㅎㅎ
다음으로는 동키카 코드와 darknet을 진행해 봐야겠다.
'embedded > jetson nano' 카테고리의 다른 글
비상사태 (0) | 2021.09.03 |
---|---|
8. 프로젝트 변화 (0) | 2021.08.30 |
6. opencv 가상환경 설치 오류(문제) (0) | 2021.08.27 |
5. opencv 설치 (0) | 2021.08.26 |
4. waveshare notebook 성공 (0) | 2021.08.26 |