또 한 학기 잘 마무리하고 다시 GNU Radio tutorials를 열심히 따라하고 있다.
아직도 Beginner Tutorials이긴 하지만 이번주에는 다 끝내야지.
설치 과정 이후에 별 문제 없다가 "Creating Your First Block" 섹션에서 다시 또 이슈가 생겼다.
Embedded Python block이라는 것을 사용해 보는 것인데, Python 코드로 내부 기능을 customizing해서 나만의 블록을 만드는 것인 듯?
위 "Embedded Python Block"의 설정을 누르면 아래와 같이 "Open in Editor"와 "Choose Editor" 옵션이 나온다.
이 버튼을 누르면 에디터 (TextEdit, Visual Studio Code 등일 듯) 가 열리며 Python 코딩을 하는 것으로 예상됨.
아무 것도 안 뜨네 ㅎ
GNU Radio는 특정 실행하는 중에 특정 이벤트에 대해 터미널에서 반응을 하곤 한다.
그래서 이번에도 터미널을 살펴 보니 "No default handler found for content type 'dyn.agq81k3p2su11upputf4gu55s'" 라는 오류 메시지가 저 두 버튼 누를 때마다 지속적으로 출력되고 있었다.
구글링으로 관련해서 아래 두 GitHub issues를 찾았는데, 일단 공통적으로 ~/.gnuradio/config.conf 파일을 수정해야 하는 것 같았다.
https://github.com/ryanvolz/radioconda/issues/86
https://github.com/gnuradio/gnuradio/issues/7115
구체적으로 해야 할 일은 아래 문구를 넣는 것.
editor = /PATH/TO/THE/DESIRED/EDITOR
그럼 일단 Finder를 통해 해당 폴더로 가보자.
참고로 macOS에서 ~의 경우 home directory인데, Users/사용자이름 폴더를 뜻한다.
그리고 폴더 앞에 "."이 붙어 있는 경우 숨겨진 폴더라 평소에는 보이지 않으며, [command] + [shift] + [.] 키를 눌러야 볼 수 있다.
그런 폴더 없네 ㅎ
이번에도 역시 바로 ChatGPT에게 고견을 여쭤봄.
(1) ~/.gnuradio/config.conf 직접 생성
위 여러 답변들을 토대로 일단 ~/.gnuradio/config.conf를 내가 직접 만들어 봐야겠다고 생각함.
"."으로 시작하는 숨겨진 폴더를 Finder에서 GUI로 직접 만들어지지는 않길래 터미널에서 아래와 같이 만들었다.
생성 완료!
이제 Visual Studio Code를 이용해서 config.conf 파일을 수정해 보기 위해 다음 명령어를 시도했다.
>> code /.gnuradio/config.conf
"code"라는 명령어를 알아듣지 못 하는 모양이다.
구글링해 보니 Visual Studio Code에서 평소 Python interpreter 선택이나 C언어 compile/run 할 때 사용한 [command] + [shift] + [p] 를 이용해 "Shell Command: Install 'code' command in PATH"를 해 줘야 macOS에서 알아듣는다고 한다.
잘 열려서 바로 위와 같이 config.conf도 수정해 줬다.
"code -w"를 작성한 이유는 (1) 이제 내 macOS가 "code" 명령어를 알아듣고 (2) -w를 통해 에디터를 새 창에서 띄우고, 종료될 때까지 에디터를 띄운 프로그램 (여기에서는 GNU Radio companion) 을 홀드시키고자 하는 것.
하지만 결국 실패 ㅎ
(2) ~/.config/gnuradio/grc.conf 수정
사실 일부러 ~/.gnuradio/config.conf를 만들면서도 계속 찝찝했다.
과연 GNU Radio companion이 이 파일을 읽기나 할까?
애초에 없어도 잘 돌아갔던 이유는 환경설정 파일이 혹시 GNU Radio 3.10에서부터 다른 파일로 바뀐 것은 아닐까?
그래서 다시 구글링을 해 보니 아래 Stack Overflow 글에서 사용자 환경설정에 관련된 파일이 무엇인지 확인하는 명령어가 있는 것을 확인했다.
>> gnuradio-config-info –userprefsdir
먼저 --userprefsdir은 사용자마다의 환경설정 값이 들어가 있는 파일의 위치를 알려 주는 것으로 보인다.
~/.config/gnuradio 폴더인 것으로 보인다."grc.conf" 발견!
TextEdit으로 열고 [grc] 부분을 추가해 보았다.
안타깝지만 실패 ㅎ
(3) ~/anaconda3/envs/gnuradio310_python312/etc/gnuradio/conf.d/grc.conf 수정
사용자마다의 환경설정 수정으로는 안 되나 보다.
애초에 grc.conf 상단에 "# This contains only GUI settings for GRC and is not meant for users to edit."라고 써 있긴 했음 ㅜ
그래서 이번에는 --prefsdir 옵션으로 출력받은 경로로 들어가 보았다.
여기에도 grc.conf가 있네?
상단에 "# This file contains system wide configuration data for GNU Radio." 라고 되어 있는데, 내가 수정해도 되려나..?
쫄리는 마음으로 백업 파일 하나 만들어 놓고 editor 라인을 추가하여 저장을 눌러보았다.
역시 파일이 잠겨져 있다. 수정 권한도 없는 것 같고.
권한 수정이 귀찮으니 원본 파일 이름을 바꾸고 같은 내용에다가 다시 editor 부분을 추가한 grc.conf 사본을 만들어 보았다.
아 또 실패 ㅠ(3a) editor = code 만?
여러 번 시도하다가 한 번 실수로 -w 옵션을 빼먹었다. 즉,
editor = code
만 넣어봤음.
"Open in Editor"를 누르니 드디어 Visual Studio Code가 열렸다!
"Choose Editor"는 아직 안 되긴 하지만..
Comments
Post a Comment