Linux & Ubuntu (5) 썸네일형 리스트형 환경변수 설정 개요 회사에서 환경변수 설정할 일이 있었다. 생각해보니 최근엔 환경변수를 설정하는 것 보다 코드로 처리하곤 했다. 윈도우로 개발할 때도 wsl환경에서 하다 보니 환경 변수에는 신경을 그다지 쓰지 않은 것 같다. 떠오른 김에 정리하자는 생각이 반, 언젠가는 나도 다시 이걸 보며 햇갈리는 부분을 정리하겠지 하는 마음이 반이다. 환경변수 사용자또는 시스쳄 단위로 설정할 수 있는 동적 값 세트이며 주로 프로그램이나 커맨드 라인 명령어를 실행할 때 경로, 설정등을 파악하기 위해 사용 환경변수 확인 env 명령어 또는 echo 명령어를 사용한다. 이 때, 많은 환경변수가 출력되기 때문에 grep을 통해 원하는 변수가 출력되도록 하는 것이 편하다. env | grep ENV_NAME echo 사용시: echo $EN.. ffmpeg: error while loading shared libraries: libopenh264.so.5 에러 발생시 해결법 ffmpeg: error while loading shared libraries: libopenh264.so.5: cannot open shared object file: No such file or directory 에러가 발생했고, libopenh264.so.5 파일을 찾을 수 없다는 오류이다. 해결법에서 가장 많이 보이는 방식은 conda update ffmpeg 명령어로 ffmpeg를 업데이트 하는 것이었다. 하지만 해결되지 않아서 재설치까지 했으나 마찬가지 였다. 원인을 찾다보니 python 3.8이 너무 새롭기 때문이라는 글을 보았다. 마침 이용해야 하는 것도 python 3.8에 ffmpeg 4.3.2 버전이니 상황이 굉장히 유사했다. 제시된 해결법은 libopenh264.so 파일을 복사해.. mecab 설치시 NameError: name 'Tagger' is not defined 에러 처리 NameError: name 'Tagger' is not defined 에러는 mecab 설치시 일반적으로 발생하는 에러이다. 에러 처리 방법은 여러가지 있지만 수동 설치가 가장 편하다. mecab-ko 설치 cd /tmp sudo wget https://bitbucket.org/eunjeon/mecab-ko/downloads/mecab-0.996-ko-0.9.2.tar.gz sudo tar xvf mecab-0.996-ko-0.9.2.tar.gz cd /tmp/mecab-0.996-ko-0.9.2 sudo ./configure sudo make check sudo make install mecab-dic 설치 cd /tmp wget https://bitbucket.org/eunjeon/mecab-ko-.. 우분투 환경에서 텍스트 파일의 일괄 변환 데이터 셋을 다운로드 받았는데 인코딩이 EUC-KR인 txt파일 이었다. 회사 컴퓨터는 우분투 쓰는데 파일을 열자마자 글자가 다 깨져 있어서 어찌나 당황했는지... 그나마 영어 부분은 깨지지 않아서 금방 인코딩 문제임을 깨달을 수 있었다. 인코딩 바꾸고자 일일이 처리하는 건 비효율 적이니 터미널 명령어를 이용해서 일괄 변경하기로 했다. find . -type f -execdir iconv -f euckr -t utf-8 {} -o {}.tmp \\; -execdir mv -f {}.tmp {} \\; 진행하다가 iconv: illegal input sequence at position 54169829 에러가 났다. 검색해보니 icov를 사용하여 문서 인코딩을 변환하는 과정에서 input문서를 한줄씩 읽으.. Ubuntu 환경에서 시리얼 포트 사용법 ubuntu 환경에서 USB포트에 하드웨어 보드를 연결하고 platformIO를 사용해 업로드하면 시리얼 포트를 찾을 수 없어 에러가 발생한다. 기본적으로 우분투 환경은 시리얼 포트 사용 권한이 허가되어 있지 않음. 따라서 시리얼 포트를 사용할 수 있는 그룹에 유저를 추가해야 함. 문제는 시리얼 포트를 사용 권한을 주려고 해도 ttyUSB0가 없거나 다른 원인으로 막히는 경우가 많음. 우선 룰을 추가해서 확인해보고, 문제가 생기는 부분을 remove해야 한다. PlatformIO에서 소개하는 시리얼 포트 개방법은 다음과 같다.(https://docs.platformio.org/en/latest/core/installation/udev-rules.html#platformio-udev-rules) 1. 시리.. 이전 1 다음