-
[ 플러터 개발 환경설정 ] 내 컴퓨터 이름 한글 사용자명으로 인한 Windows 개발 환경 설정 문제 해결법개발일지/flutter 2024. 9. 22. 17:19
안녕하세요 개발하는남자 개남입니다.
오늘은 개발하는남자의 핸즈온 플러터에서 개발환경설정 파트에서 언급하고 싶은 부분이 있어서 이렇게 준비하게 되었습니다. 개발자로 일하시는 분들중 앱 개발자분들 중에는 맥에서 개발을 하는 경우가 많습니다. 이유는 iOS 대응 때문입니다. 저 역시 맥에서만 개발을 하다보니 윈도우 환경에서의 발생될 수 있는 문제에 대해서 크게 인지를 하지 못했었습니다. 그래서 책에도 개발환경 설정에 대한 가이드만 있었고 이슈에 대한 내용은 추가하지 못했습니다. 하지만 윈도우로 개발환경 설정하는 분들중 많은 분들이 윈도우 PC를 사용하시면서 사용자 이름을 한글로 설정하시는 분들이 많다는 것을 느꼈습니다. 그런경우 개발공부를 호기롭게 시작했는데 시작하기도전에 개발환경 세팅하면서 진을 다 빼시는 분들에게 이 포스팅이 도움이 되었으면 좋겠습니다.
Q : PC에 한글을 사용한 경우 왜 개발에서 문제가 발생될까?
A : 여러 가지 IDE나 개발 sdk의 경우 대부분이 영문 기반으로 설계되어 있어서 비 ASCII 문제들이 경로에 있을 경우 해석하는 데에 문제가 발생되곤 합니다. 특히 Android SDK나 Gradle과 같은 Java 기반의 툴들은 비 ASCII 문자가 있는 경우 파일을 찾지 못하는 문제가 있습니다
해결방안
- PC 포멧 후 재 설치
- PC에 사용자이름을 영문으로 변경하여 처리하는 방법
- 개발환경의 위치를 한글이 포함되지 않는 경로로 새로 세팅하는 방법
이 포스팅에서는 해결방안 3번째 방식으로 문제를 풀어가보겠습니다.
개발 환경 설정 시 마주할 수 있는 오류를 해결하기 위한 절차
- Flutter SDK 설치 경로
- 안드로이드 스튜디오 설치시 sdk 위치
- vsCode 설치 위치
- Flutter doctor 명령 실행시 android sdk 찾을 수 없는 문제
- 안드로이드 애뮬레이터 문제
1. Flutter SDK 설치 경로
1. 플러터 SDK 다운로드 받기 [링크]
2. zip파일 압축 풀기
3. 압축푼 파일 C:\ 경로의 sdk 폴더를 생성하고 그곳에 위치 하도록 합니다.
4. flutter 명령실행파일의 경로를 환경변수에 등록합니다.
C:\\경로의 sdk 폴더 하위로 위치 시켰다면 다음과 같은 경로를 환경변수에 등록하면 됩니다.
경로 복사 : C:\\sdk\\flutter\\bin
5. terminal 을 열어 flutter —version 명령어를 실행합니다.
플러터 버전이 정상적으로 표시되는 것을 확인할 수 있습니다.
2. 안드로이드 스튜디오 설치
1. 안드로이드 스튜디오 설치 프로그램 다운로드 받습니다. [링크]
2. 안드로이드 슈튜디오 설치를 진행합니다.
별도의 설정없이 Next버튼으로 설치를 완료합니다.
3. 안드로이드 스튜디오 위저드 설정 창이 활성화가 자동으로 되며 Next버튼으로 설치를 이어서 진행합니다.
Android SDK 설치 위치를 설정하는 창에서 오류가 발생하게 됩니다.
이유는 Android에서 기본적으로 default SDK 설치 위치를
C:\Users\[컴퓨터 사용자이름]\AppData\Local\Android\Sdk
로 설정되어있기 때문입니다. 이때 컴퓨터의 설정한 사용자 이름을 한글로 지정한 경우 ASCII 문자오류로 인해 설치를 할 수 없다고 오류를 발생시키고 있는 것입니다.해결방법
android sdk 설치 경로를 C:\하위에 sdk 폴더를 플러터 sdk 설치했던 대로 위치를 변경해주면 됩니다.
3-1. Android SDK Location 경로 우측 폴더 아이콘 클릭
3-2. C:\의 sdk 폴더를 선택한 뒤 상단의 폴더 생성 아이콘 클릭합니다.
3-3. 폴더 생성창에 android 라는 이름을 입력하고 OK버튼을 눌러줍니다.
3-4. 생성된 android폴더가 C:\sdk\ 폴더 내부에 생성되었는지 확인하고 android 폴더를 선택하고 OK 버튼을 눌러줍니다.
3-5. 이전과 달리 새로운 경로에는 한글이 포함되어있지 않아 오류가 없어진 모습을 확인할 수 있습니다.
4. 라이선스 동의
5. 설치가 진행됩니다.
설치가 완료 되고 나면 안드로이드 스튜디오가 실행되며 안드로이드 스튜디오가 설치가 완료 된 것입니다.
3. vsCode 설치
1. vsCode 사이트에 접속하여 다운로드 파일을 받아줍니다. [링크]
2. 설치 프로그램 실행하여 약관동의 후 설치를 진행합니다.
3. 설치 경로에 한글이 포함되어있어서 우측 찾아보기 메뉴를 통해 경로를 변경해줍니다.
4. 다른 sdk 경로와 마찬가지로 C:\의 sdk 폴더를 선택해주고 확인 버튼눌러줍니다.
5. 다음과 같이 경로가 설정되었다면 다음버튼틀 통해 설치를 진행합니다.
6. 설치가 정상적으로 되는 것을 확인합니다.
4 . Flutter Doctor 이슈 대응
안드로이드 SDK를 찾을 수 없는 문제
flutter에서 android sdk를 통해 명령실행을 수행하게 되는데 기본적으로 flutter에서 android sdk 위치를 C:\\Users\\[컴퓨터 사용자 이름] 하위에서 sdk를 찾기 때문에 발생되는 문제로 우리는 한글 폴더가 포함되어있어서 android sdk의 설치 위치를 변경해줬기 때문에 flutter에서는 찾을 수 없는 현상입니다.
친절하게 android-sdk 경로를 새로 지정하는 방법에대해서 가이드를 해주고 있습니다.
flutter config —android-sdk 명령어를 사용하라고 flutter doctor가 알려주고 있습니다.
android sdk를 C:\\sdk\\android 위치로 설정한 사실을 기억하기 때문에 위 명령어를 다음과 같이 실행하면 문제가 해결이됩니다.
flutter config —android-sdk="C:\\sdk\\android"
실행 이후 다시 flutter doctor를 사용하면 android sdk 경로를 찾지 못한다는 경고 메세지는 없어진것을 확인 할 수 있습니다.
flutter doctor라고 입력하시면 다음과 같이 문제가 해결된 것을 확인 할 수 있습니다.
물론 다른 문제가 있다고 가이드 하고 있지만 그것은 오류가 아닌 경고로 해결하지 않아도 되지만 해결하는 방법은 간단합니다. 그 방법은 제 책[개발하는남자 핸즈온 플러터] 64페이지 ~ 67페이지 를 참조 하시면 문제를 쉽게 해결할 수 있습니다.
5 . Android 애뮬레이터 이슈
1. 안드로이드 애뮬레이터를 설치를 하기 위해 안드로이드 스튜디오를 실행합니다.
more Actions 메뉴 클릭
Virtual Device Manager 실행합니다.
2. Device Manager 창에서 좌측 상단 + 버튼을 통해 생성단계로 진행합니다.
원하는 디바이스를 선택해서 Next 진행합니다.
애뮬레이터 이름을 설정하거나 별도의 애뮬레이터의 설정을 진행하고 Finish 버튼을 눌러줍니다.
3. Device Manager 창에 방금전에 만들었던 애뮬레이터가 리스트에 추가된 것을 확인 할 수 있습니다.우측 Play 아이콘 버튼을 눌러 애뮬레이터를 실행해보겠습니다.
실행이 되려다 다음과 같은 알 수 없는 오류가 발생되고 있음을 확인 할 수 있습니다.
문제 요인
이번 역시 애뮬레이터 설치 경로에 한글이 포함되어있어서 발생된 문제 입니다. 그 이유를 살펴보겠습니다.
안드로이드 sdk 설치 위치는 변경했지만 애뮬레이터 설치 위치는 바꿔주지 않아서 디폴트 위치인 C:\\사용자\\[컴퓨터 사용자 이름] 하위로 .android 라는 폴더가 생성되어 있는 것을 확인 할 수 있습니다.
아래와 같이 .android 폴더 내부에 avd 폴더가 있으며 해당 폴더 내부에는 좀 전에 만들어줬던 애뮬레이터 이름으로 폴더가 생성되어있는 것을 확이 할 수 있습니다.
환경변수 설정
환경 변수를 추가 하기 위해서 환경변수 설정창을 실행합니다.
환경변수 창에서 하단 시스템 변수(S) 영역의 새로만들기 메뉴를 선택해 줍니다.
새 시스템 변수에 변수 이름과 변수 값을 입력합니다.
변수 이름 : ANDROID_HOME 이라고 입력합니다.
변수 값 : 새로 설정한 경로 C:\\sdk 입력
확인 버튼 후 다시 새로 만들기 버튼을 눌러 하나의 변수와 값을 입력합니다.
변수 이름 : ANDROID_SDK_HOME 이라고 입력합니다.
변수 값 : 새로 설정한 경로 C:\\sdk 입력
이제 다시 애뮬레이터 생성부터 실행과정을 새로 진행해주면 정상적으로 실행되는 것을 확인 할 수 있습니다.
이것으로 안드로이드에서 한글 경로가 포함되어있어서 발생될 수 있는 이슈들을 해결하는 방법에 대해서 알아보았습니다
'개발일지 > flutter' 카테고리의 다른 글
[개발하는남자의 핸즈온 플러터] 플러터 최신 버전 소스코드 android build.gradle migration 책의 잘못 표기된 내용 정정 및 소통 채널 공지 (5) 2024.08.25 [플러터 책] 개발하는남자의 핸즈온 플러터 출시되었습니다. , 책소개 , 이벤트 (1) 2024.07.24 [플러터 Bloc 마스터] 왜 Bloc을 사용하는가? (3) 2023.02.01 [플러터] 2022년 12월 현시점의 Getx는 어떤가... (2) 2022.12.02 [ Flutter / 플러터 ] SQFlite 문서 정리 및 예제로 마스터해보자. (2) 2022.10.13