목록Linux (12)
하드웨어 엄마, 소프트웨어 아빠 🛠️💻
이번에는 jenkins를 활용하여 빌드 자동화를 위한 스크립트를 만들기 위해 작성하던 중 아래와 같이 스크립트 동작 중 yes or no를 선택해야 하는 부분이 있다면 스크립트는 중간에 선택할 때까지 다음 과정을 기다린다. 하지만 빌드 자동화를 위해서는 다음과 같은 단계가 자동적으로 이루어져야한다. 그럼 이렇게 선택하는 부분이 나올 때 반응형으로 자동적으로 y를 선택하게 할 수 있는가가 중요하다. --------------------------------------- Terms and Conditions This is the Android Software Development Kit License Agreement 1. Introduction 1.1 The Android Software Developme..
개발을 하다 보면 알지 못하던 다양한 문제를 마주하게 된다. 어찌 보면 그 다양한 원인을 해결해 가는 것을 좋아하는 사람들이 개발자가 되는 것이 일반적이다. 이과생들의 특징이 답이 정해져 있는 문제를 풀어가는 과정을 즐기는 것이 아니겠는가? 윈도우 환경에서 코드를 작성하고 그것을 리눅스 환경에서 실행하려고 할 때 "^M: bad interpreter: No such file or directory"와 같은 문제가 발생한다. 윈도우에서 사용한 개행 문자가 리눅스에서는 인식되지 못해 발생하는 것이 원인이다. 그럼 이 문제는 어떻게 해결할 수 있을까? 다양한 방법이 있고, 리눅스 역시 ubuntu / fedora / CentOS 등 다양하기 때문에 모두 같은 방법으로 해결되지 않는다. 그럼 다양한 해결 방법에..
linux / android platform 환경에서 개발하다 보면 특정 파일들은 버전정보를 파일명에 포함하여 생성되는 경우들이 존재합니다. 그 이유는 해당 so 파일들의 버전 정보를 알기 위해 그와 같이 버전 정보를 파일명 뒤에 붙여줍니다. 그러나 linux / android platform에서 버전정보를 제외한 파일을 load해야하기 때문에 버전정보를 제거한 심볼을 생성하거나 파일명 변경이 필요합니다. 그래서 다음과 같이 여러 파일을 rename을 사용하여 변경이 필요하며 다음과 같이 여러 파일에 대한 rename이 필요한 경우가 존재합니다. 뒤에 1.0.5235라는 버전 정보가 포함된 상태로 라이브러리 파일들이 생성되었습니다. 내가 필요한 파일은 a.so인데 빌드 결과물에 버전 정보를 포함하여 생성..
top 명령어는 리눅스 시스템의 실시간 성능 모니터링을 위한 명령어입니다. CPU 사용량, 메모리 사용량, 디스크 사용량, 네트워크 사용량, 프로세스 상태 등을 확인할 수 있습니다. top 명령어의 기본 형식은 다음과 같습니다. top top 명령어를 실행하면 다음과 같은 화면이 나타납니다. top - 14:31:37 up 12:32, 1 user, load average: 0.00, 0.00, 0.00 Tasks: 25 total, 1 running, 24 sleeping, 0 stopped, 0 zombie Cpu(s): 0.0% us, 0.0% sy, 0.0% ni, 99.9% id, 0.1% wa, 0.0% hi, 0.0% si Mem: 2746364k total, 239092k used, 395..
오늘은 임베디드 환경에서 이슈를 검토하기 위해서 필요한 명령어 중 하나인 nice 명령어에 대해 알아보고자 합니다. 이슈를 검토하기 위해 간략하게 이슈 발생했을 경우 특정 내용을 grep으로 확인 후 확인된 내용을 바탕으로 log들을 생성하도록 하는 스크립트를 추가하여 실제로 이슈가 발생했을 때 로그를 덤프 할 수 있도록 추가되었습니다. 그러나 이러한 이슈 재현 단계에서 스크립트의 수행이 이슈 발생 프로세스보다 우선 순위가 낮다면 어떻게 될까요? 당연히 이슈 발생 후 시스템은 다운 혹은 경쟁 상태 (race condition)에 빠지면서 스크립트는 수행되지 않을 확률이 높습니다. 그래서 스크립트의 우선 순위를 높여 이슈가 발생되었을 때 수행될 수 있도록 하는 것이 중요합니다. nice 명령어는 프로세스의..
우분투를 설치하고 android-cts를 진행하기 위해 aapt 패키지를 설치하려고 시도하였지만 다음과 같은 메세지를 출력하며 설치가 진행되지 않는다. E: Unable to locate package aapt 이러한 경우 apt update를 진행해주거나 패키지를 가져와서 설치할 서버를 변경해주면 해결된다. 1. run an apt update # update sources.list sudo apt update # install aapt sudo apt-get install aapt 2. edit /etc/apt/sources.list 패키지 install시에 sources.list라는 패키지 리소스를 참고하는데 문제가 생긴 오류로 sources.list를 수정해주면 된다. # vi /etc/apt/s..
