우분투의 Emacs에서 라즈파이를 개발할 수있게했습니다.

2471 단어 RaspberryPiEmacs
라즈파이는 네트워크 환경과 셀프 컴파일 환경이 있으므로, git인가 뭔가로 파일 공유해, 키보드 연결해 make 하면 좋겠다고 생각하고 있었습니다. 이전에 개발팀의 동료에게 이야기를 들어 보면 크로스 컴파일하고 있다고 해서 모처럼이므로 저도 크로스 컴파일 + Emacs로 닫는 환경을 만들어 보았습니다.

라즈파이는 Raspberry Pi 3 Model B+, 호스트 환경은 Ubuntu VERSION="18.04.2 LTS (Bionic Beaver)"입니다.

크로스 컴파일 환경 만들기



이 기사를 그대로 실행하면 개발 환경을 만들 수 있습니다.

!x86_64의 Ubuntu에서 C / C ++ 소스 코드를 ARM / ARM64 용으로 크로스 컴파일하고 QEMU에서 실행하는 방법 요약

Ubuntu에서 apt install 한 번입니다.
sudo apt install g++-arm-linux-gnueabihf

기사대로 작업하고 hello_arm (ARM 용 바이너리 파일)을 만들었습니다.
호스트 환경에서 makeflie를 만들면 Emacs에서 M-x compile로 컴파일 할 수 있습니다.

라즈파이 설정



ssh로 넣어 새로운 사용자를 만듭니다.
터미널에서 ssh 명령으로 로그인할 수 있는지 확인합니다.

Emacs 설정



tramp로 넣도록 한다.



init.el에 라즈파이의 ip 주소와 사용자 이름, 시작 디렉토리를 지정하여 ssh 연결을하는 함수를 씁니다.
(defun raspi ()
  (interactive)
  (find-file "/ssh:[email protected]:/home/natu"))

이제 M-x raspi로 ssh 로그인할 수 있습니다.

dired로 파일을 전송합니다.



dired의 복사처를, 다른 열려 있는 dired의 디렉토리로 설정합니다. 이것도 init.el에 써 둡시다.
(setq dired-dwim-target t)



이제 ssh 연결된 로컬과 호스트를 dired로 열고 호스트 측에서 위에서 만든 hello_arm (ARM 용 실행 바이너리)을 선택하고 C를 누르면 파일이 라즈파이로 전송됩니다.

eshell로 파일 실행



이것을 모르는 사람이 많지만 tramp로 ssh하고 연결 대상 디렉토리를 연 상태에서 eshell 실행하면 연결 대상 쉘로 실행할 수 있습니다. 메커니즘은 잘 모르겠습니다.


eshell에서 라즈파이에서 실행 파일을 실행하고 있습니다.

마지막으로



Ubuntu의 Emacs에서 코딩, 컴파일, 파일 전송, 라즈파이에서 실행까지 할 수 있습니다. 했습니다.

좋은 웹페이지 즐겨찾기