레이블이 Flutter인 게시물을 표시합니다. 모든 게시물 표시
레이블이 Flutter인 게시물을 표시합니다. 모든 게시물 표시

20250611

우분투 리눅스에서 Dart, Flutter, Visual Studio Code (VS Code) 설치 및 환경 설정하는 방법

 우분투 리눅스에서 Dart, Flutter, Visual Studio Code (VS Code) 설치 및 환경 설정하는 방법

 -오래된 노트북에서, Android Studio 없이 설치 설정 하는 방법 [기록]

1. 시스템 필수 패키지 설치

    sudo apt update

    sudo apt install git curl unzip xz-utils zip libglu1-mesa -y


2. Flutter 설치

  Flutter SDK 다운로드

  아래 명령어는 Flutter SDK를 ~/flutter 디렉토리에 설치합니다.

    cd ~

    git clone https://github.com/flutter/flutter.git -b stable


  PATH 설정

    echo 'export PATH="$PATH:$HOME/flutter/bin"' >> ~/.bashrc

    source ~/.bashrc


  Flutter 설치 확인

    flutter doctor


3. Android 개발 환경 설치

   Android Studio 없이 Android SDK만 설치하고, Flutter 또는 VS Code에서 사용방법.


   Android SDK Command-line Tools 설치

      mkdir -p ~/Android/cmdline-tools

      cd ~/Android/cmdline-tools


      wget https://dl.google.com/android/repository/commandlinetools-linux-11076708_latest.zip


      unzip commandlinetools-linux-*.zip

      mv cmdline-tools latest


        환경변수 설정:

      nano ~/.bashrc


        아래 내용 추가

      # Android SDK 환경 변수

      export ANDROID_HOME=$HOME/Android

      export PATH=$ANDROID_HOME/cmdline-tools/latest/bin:$PATH

      export PATH=$ANDROID_HOME/platform-tools:$PATH

      export PATH=$ANDROID_HOME/emulator:$PATH


        적용하기: source ~/.bashrc



   대안방법 이었슴: Android SDK만 설치하고 VS Code로 개발

              Android Studio보다 훨씬 가볍고 빠름

              VS Code + Flutter + Dart 확장으로 충분히 개발 가능.



   기존 java 버젼 업데이트: 

       sudo apt update

       sudo apt install openjdk-17-jdk -y

   새로설치한 java로 선택 

         sudo update-alternatives --config java


   Java 17로 설정한 후 아래 명령을 실행- Flutter가 Android SDK를 인식

   sdkmanager --sdk_root=$ANDROID_HOME \

  "platform-tools" \

  "platforms;android-33" \

  "build-tools;33.0.2"


   sdkmanager 명령어로 SDK 설치

      sdkmanager --sdk_root=$ANDROID_HOME "platform-tools" "platforms;android-33" "build-tools;33.0.2"


   Android SDK 라이센스 동의

      flutter doctor --android-licenses

      그다음 y 눌러주면 됨.

   설치확인: flutter doctor


   Linux toolchain 설정 (선택사항)

    sudo apt install clang cmake ninja-build libgtk-3-dev -y



   결과:

       Flutter 설치 -  완료

       Android SDK 설정 - 완료 (버전 33.0.2)

       Android 라이선스-  동의 완료

       Android Studio -  설치 안 했지만 필요 없음 (VS Code 사용 가능)

       실기기 연결 -  가능 (2개 인식됨)

       Linux 앱 개발 도구 - 설치 안 됨 (선택 사항)


4. VS Code 설치 및 Flutter/Dart 확장 설치

    snapd 설치: sudo apt install snapd -y

    snapd 활성화: sudo systemctl enable --now snapd

  Visual Studio Code 설치

    sudo snap install code --classic


    Flutter & Dart 확장 설치

    Ctrl+Shift+X 누르고

    Flutter, Dart 검색 후 설치


     버젼 확인: code --version


     인식 안될경우: VS Code에서 dart flutter 확장들이 설치되어 있어야 Flutter에서 완전 인식

     인식 안될경우, 다시 설치 방법

    sudo snap remove code

    sudo snap install code --classic


5. Flutter Doctor로 최종 점검

    flutter doctor


Doctor summary (to see all details, run flutter doctor -v):

[✓] Flutter (Channel stable, 3.32.2, on Ubuntu 24.0..1 LTS

    6.8.0-60-generic, locale ko_KR.UTF-8)

[✓] Android toolchain - develop for Android devices (Android SDK 

    version 33.0.2)

[✓] Chrome - develop for the web

[✓] Linux toolchain - develop for Linux desktop

[!] Android Studio (not installed)

[✓] VS Code (version unknown)

    ✗ Unable to determine VS Code version.

[✓] Connected device (2 available)

[✓] Network resources


! Doctor found issues in 1 category.

20240119

퓨시아(Fuchsia OS), dahliaOS, 지르콘(Zircon)커널 에 대하여

퓨시아(Fuchsia), dahliaOS, 지르콘(Zircon) 에 대하여, 간단 정보를 기록합니다.

퓨시아(Fuchsia) OS는, 

- 대부분의 모든 플렛폼에서 작동하는 OS로, 구글이 개발중입니다.

- Flutter로 만듭니다. (UI,앱 부분을 Flutter로 만들어서, 모든 플렛폼에 적용하기 위함 같음)

  나머지 부분은, C/C++, Go, Rust, Python 언어로 개발된다고 합니다.

- Flutter는 구글이 개발한 크로스 플랫폼 모바일 앱 개발 프레임워크입니다. Flutter를 사용하면 한 번의 코드로 iOS, Android, Web, Desktop 등 다양한 플랫폼에 앱을 개발할 수 있습니다.

- 퓨시아 os는 웹에서도 작동할것입니다. 같은 지르콘(Zircon)커널을 이용하는, 리눅스 기반 os인 dahliaOS 를 통하여, 웹상에서 확인해 볼수 있습니다. 

- 구글은 2016년부터 Flutter를 퓨시아 OS의 개발에 사용하기 시작 했고, 현재는 퓨시아 OS의 주요 개발 환경으로 OS의 인터페이스와 앱을 개발하고 있습니다. 향후 퓨시아 OS의 모든 구성 요소를 Flutter로 개발할 계획이라고 밝힌 바 있습니다.

- Google의 크롬 OS, 안드로이드리눅스를 커널로 사용하는 것과 달리, 퓨시아(Fuchsia)os는 지르콘(Zircon)이라는 마이크로커널을 사용합니다.


DahliaOS는 

- 현재 웹에서 테스트 및 직접 설치 파일을 다운로드 할수 있습니다. 오래된 컴퓨터의 희망이 될 OS라 생각합니다(알파버젼임).

- 리눅스 커널퓨시아 OS의 장점을 결합한 현대적이고 안전하며 가볍고 반응이 빠른 운영 체제입니다. 2022년 1월에 처음 출시되었으며 현재 알파 개발 단계입니다. Mach 마이크로커널FreeBSD의 커널을 사용한 하이브리드 커널을 이용한, MacOS의 탄생과 비슷한 점이 있습니다.

- dahliaOS에서 다른  모든 운영 체제의 애플리케이션을 최대한 사용하게 만들고 있습니다. 여러 마켓 및 가상 머신 및 컨테이너 관리 애플리케이션인 Graft를 사용하여 다른 운영 체제에서 즐겨 사용하는 모든 애플리케이션을 설치할 수도 있습니다. App Store도 제공합니다.

- dahliaOS는 데스크톱, 노트북, 태블릿, 기타 장치에서 사용할 수 있습니다. 웹에서도 os를 사용해 볼수 있습니다.

- dahliaOS의 데스크톱 환경은 Pangolin입니다. Pangolin은 플러터로 작성된 현대적이고 사용자 친화적인 환경입니다.

- 가볍고 반응이 빠르다는 점에서 매력적입니다.


지르콘(Zircon)은 

- 구글이 개발한 마이크로커널입니다. 퓨시아 운영 체제의 기반으로 사용되며, 다양한 장치에서 사용할 수 있도록 설계되었습니다.

- 지르콘 커널은 안전성을 최우선으로 고려하여 설계되었고, 커널의 일부만 하드웨어와 직접 통신하고, 나머지 부분은 하드웨어에 대한 액세스를 커널에 위임해서, 커널의 일부가 손상되어도 운영 체제가 계속 작동할 수 있습니다.

- 지르콘 커널은 다양한 장치에서 사용할 수 있도록 확장성이 뛰어나고, 하드웨어에 대한 액세스를 커널에 위임하여 다양한 하드웨어 플랫폼을 지원할 수 있습니다.

- 커널의 일부만 하드웨어와 직접 통신하기 때문에 시스템 리소스를 효율적으로 사용할 수 있습니다.

- 프로세스 관리, 메모리 관리, 장치 관리