본문 바로가기
SW 개발/Android

repo 실행 시 DeprecationWarning: imp module 대처법

by 모바일 SW 개발자 Kibua20 2020. 6. 19.
반응형

Android source를 다운로드 후 수정 사항의 commit을  repo로 remote reposity에 반영할 때 에러가 발생하였다.  Repo 명령어 (repo init, repo sync, repo start 등) 사용 시 Warning은 발생하더라  git init , clone, add, commit은 가능했지만,  결정적으로 repo upload 시 에러 발생하여 remote repository에 반영이 불가능하였다. 

 

<에러 로그>

/home/temp/.repo/repo/main.py:19: DeprecationWarning: the imp module is deprecated in favour of importlib; see the module's documentation for alternative uses

import imp

Upload project android/apps/ to remote branch 158e3688a9d2898b80db166f70d1af19091f1cd7:
branch work_branch_release ( 1 commit, Fri Jun 19 18:12:29 2020 +0900):

b'50a624bc TEST : DO NOT MERGE\n'

repo 명령어는 https://kibua20.tistory.com/25에서 설명한 것처럼 구글 git에서  repo 실행 파일을 다운로드해서 설치한다.  Android 소스는 최상위 폴더에 ./repo가 존재하고,  /.repo 안에서는  각종 Project의 git 정보, branch 정보와 함께  python script 가 설치된다.   실제 Wanring 메시지를 보면  main.py 에서 참조하는 imp 모듈로 python script 문제임을 짐작할 수 있다. 

(Repo 설명은 네이버 얼씨구님 블로그에도 설명이 잘되어 있다. )  

 

repo 구성 내용

다른 PC에서는 repo 가 문제없이 동작하기 때문에 현재 운영 중인 안드로이드 소스가 문제가 있을 가능성은 낮고, 새로 설치한 우분투의 패키지 버전 문제로 예상하여 정상 동작하는 PC의 repo와 python 버전을 비교하였다.  repo의 실행 파일은 위치는 $ which repo , repo 버전은 $ repo --version으로 확인이 가능하다.  비교 결과 문제 있는 PC에서는 repo 2.8 버전, repo launcher  v2.8,  git 2.25.1 버전으로 동일하지만, python 버전의 차이가 있었다. 

* repo 실행 위치 확인: which repo    (* repo 실행 파일 위치는 서버마다 다름)
* repo 버전 확인  repo --verison

repo version 확인 (repo  warning  PC)

회사에서는 Android 소스는 Q-OS 초기 버전이고,  PC에 설치한 repo는 Q-OS의 최신 tag(android-10.0.0_r36 )을  받은 것으로 구글에서 Q-OS의 버전을 올리면서 python의 디폴트 버전을 2.7 버전에서 3.8 버전으로 변경한 것으로 추정된다.  이를 해결하기 위해서  정상 동작하는 서버의 repo를  문제 있는 PC의 repo 위치(=/usr/bin)에 copy 하여 재설치를 하였다.   repo 동작을 확인 결과 문제없이 repo upload 가 가능하다.  안드로이드 소스에서 ./repo/repo/ 하위에  repo 실행파일을 같이 배포하고 있으니 이 버전을 사용하는 것이 가장 안전하다.

 

repo 버전확인 (정상동작)

 

<관련 글>

[모바일/Android] - Android 소스 최적화 (100GB에서 65GB로 줄이기)

[모바일/Android] - Android 11 (R-OS) Emulator에 설치하기

[모바일/Android] - Android 11 기능 소개

[모바일/Android] - Ubuntu 20.04 에서 Android 10 빌드하기

[모바일/Android] - Android Studio 4.0 사용하기

[모바일/Android] - Android 10 (Q-OS) 소스 다운로드

[개발환경] - 3. Ubuntu에서 개발 Tool 설치

반응형



댓글2