글

라벨이 CrossCompile인 게시물 표시

vscode task 좋구나..

{     "version": "1.0.0",     "tasks": [         {             "label": "Release Build",             "type": "shell",             "command": "./build.sh",             "args": [             ],             "group": {                 "kind": "build",                 "isDefault": true             },             "problemMatcher": "$gcc"         },     ] }  크로스컴파일 환경이 독특하다보니 build.sh 에 스크립트로 만들어놓고 쓰고 있는데, vscode 로 정착하면서 방법이 없을까 찾아보던중 임시나마 task 로 쓸수 있는 방법을 찾아냄. ctrl+shift+b 로 build.sh 호출하고 ctrl+` 로 닫아버리면 되니까 좋구나! 이제 에러 위치를 클릭으로 띄울수 있게만 할 수 있으면 더 편해질듯!

라즈베리파이용 Rust 컴파일

Situation Rust를 공부하면서 활용하는 방안을 생각하던 중, Rust가 C/C++을 대체하는 빠른 언어라는 점에서 라즈베리파이와 잘 어울린다는 글을 읽었습니다. 그래서 아무 생각없이 라즈베리파이에서 Actix를 컴파일 했더니...몇시간 걸리더군요 ㅡ.ㅡ 사실 너무 오래 걸려서 중간에 끊었습니다. 그리고 크로스컴파일을 하기로 했습니다. arm64에서 이미 한번 해봤기때문에 별로 어려울 건 없었습니다. Task Rust project 생성 컴파일 환경 세팅 크로스컴파일 실행파일 라즈베리파이로 전송 및 실행 뭔가 많은 부분이 생략된 것같지만, 진짜 기분탓입니다. 그냥 이렇게 하면 간단하게 끝납니다. Action Rust Project 생성 Hello Rust 프로젝트 하나 생성합니다. rust 설치는 여기서 다루지 않습니다. $ cargo new hellorust      Created binary (application) `hellorust` package $ cd hellorust/ 컴파일 환경 크로스컴파일러를 설치하고 러스트에 컴파일 타겟을 지정합니다. sudo apt install gcc-arm-linux-gnueabihf rustup target add armv7-unknown-linux-gnueabihf 크로스컴파일 설치한 크로스컴파일러의 링커를 설정해 줍니다. .cargo/config 파일을 생성하고 아래 내용을 붙여넣기합니다. [target.armv7-unknown-linux-gnueabihf] linker = "arm-linux-gnueabihf-gcc" 타겟을 지정해서 컴파일 합니다. $ cargo build --target=armv7-unknown-linux-gnueabihf    Compiling hellorust v0.1.0 (/mnt/d/work/hellorust)     Finished dev [unoptimized + debuginfo] target(s) in 4.59...

이 블로그의 인기 게시물

구글 시트에 여러 행 한번에 추가하기

WSL2 Ubuntu 20.04 및 네트워크 설정

우분투 terminator 에서 파일 경로 클릭시 vscode 에서 열기