카테고리

asm (27) bootloader_x86_grub (1) C (92) compile (11) config (76) CPP (13) CSS (1) debugging (7) gimp (1) Go (1) html (1) Java (1) JavaScript (1) kernel (19) LibreOffice (3) Linux system progamming (21) MFC (1) opencv (4) OpenGL (1) PHP (1) Python (4) qemu (29) shell (3) socket (7) troubleshooting (2) ubuntu18.04 (2) windows (1)

2019/01/01

그놈 빌더 사용

그놈 빌더.

https://wiki.gnome.org/Apps/Builder

GNOME 환경을 위해 설계된 통합 개발 환경
git 버전 제어 가능.
GNU 디버거 사용 응용 프로그램 디버깅.
GTK-DOC을 사용하여 인라인 문서보기 가능.

임베디드 환경 구축
플러그인 추가 sysroot로 지정, 내부 컴파일이 필요한 크로스 컴파일러 지원 추가.

1. 시스템 루트지정
Autotools, CMake 또는 Meson 인 빌드 시스템은 시스템의 표준 디렉토리에서 종속성을 제공함.
--sysroot 옵션을 사용해 한다.
이 옵션을 사용하면 구성 요소를 찾을때 다른 시스템 루트 디렉토리에 찾는다.

요즘 라이브러리는 pkg-config를 지원한다.
루트 디렉토리를 확인하고 있는지 검토해야 함.

그놈 빌더는 이러한 작업을 자동화 해 주는 "Sysroot" 모듈을 만들어다.

일단 프로젝트 구성 생성되면 런타임 섹션에서 sysroot를 사용할 수 있다.
빌드 버튼을 클릭하면 sysroot를 사용하여 응용 프로그램을 빌드 할 수 있음.


2. 크로스 컴파일 사용
그놈 빌더 3.29.2 개발 버전에서 Toolchain 개념 도입 함.

시스템 표준 위치에 설치된 크로스 컴파일 자동 확인 기능.
시스템에 잘 정의한 디렉토리의 Meson에 대한 크로스 컴파일 구문 분석 기능.
Meson 및 CMake 프로젝트 디렉토리 구문 분석 기능.
Yocto 루트 디렉토리 연결 정의 된 sysroot는 SDK와 함께 설치 툴체인 제공.

그놈 빌더는 QEMU에 동작 하는 응용프로그램을 지원하므로 GUI 환경에서 크로스 컴파일 된 GTK + 응용 프로그램을 직접 빌드하고 실행 할 수 있음.

1. ODROID XU3
2. 그놈 빌더 다운로드 및 설치
apt-get install flatpack
(flatpak install https://gitlab.gnome.org/GNOME/gnome-apps-nightly/raw/master/gnome-builder.flatpakref)
사용하고 있는 패키지 관리자를 통해 크로스 컴파일로 설치
sudo apt install gcc-arm-linux-gnueabihf

3. 루트 파일 시스템 복사(https://odroid.in/?directory=.%2Fubuntu_18.04lts%2F) ~/sysroot
오드로이드에서 제공하는 이미지를 사용해 /home/user/sysroot 복사

4. 그놈 빌더를 시작($ flatpak run org.gnome.Builder) 하고 Preferences -> SDKs 버튼 클릭 sysroot 추가하고 sysrootfs 구성에 따라 팝업을 채워준다.
패키지 컨피그 경로: pkg-config 파일 설정이다.

5. 그놈 빌더 시작 화면, git 소스코드 다운로드
복제 클릭
git 다운로드 사이트 경로 지정 gitlab.collabora.com/tintou/gnome-builder-sample-app.git
복제 클릭 하면 지정한 저장소로 소스 코드를 다운로드 한다.

6. 크로스 컴파일 설정 및 루트 파일시스템 경로 지정
Preferences -> SDKs 버튼 클릭 -> 툴체인 추가에서 크로스 컴파일러 지정

7. headerbar의 omnibar를 클릭 clean 한 다음 build 실행 버튼을 사용해 컴파일 한 후 테스트 할 수 있음.

댓글 없음:

댓글 쓰기