기본 콘텐츠로 건너뛰기

추천 가젯

Tmux 환경에서 Vim 컴파일 시 발생하는 termio/termios 감지 오류 해결 방법

 리눅스 환경에서 소스코드를 직접 빌드하다 보면 의외의 환경 변수나 터미널 세션 설정 때문에 엉뚱한 빌드 에러를 마주할 때가 있습니다. 대표적인 예로 Tmux 세션 내부에서 Vim 소스를 컴파일할 때 발생하는 termio/termios 감지 오류 가 있습니다. 이번 글에서는 해당 에러가 발생하는 원인과, 단순한 clean 으로는 해결되지 않는 이유 및 올바른 해결 방법을 정리합니다. 1. 문제 원인 Vim의 소스 코드 빌드 과정( configure )은 시스템이 System V 계열인지 Linux 계열인지 판별하기 위해 termio.h 와 termios.h 헤더 파일 및 터미널 인터페이스를 검사(Probe)합니다. 하지만 Tmux 내부(세션 안)에서 컴파일을 진행할 경우 , Tmux가 제공하는 PTY(Pseudo-Terminal) 환경과 TERM=screen 등의 특수한 환경 변수 영향으로 인해 Autoconf가 터미널 인터페이스를 검출하는 과정에서 오동작을 일으킵니다. 그 결과, 실제 시스템 조건과 무관하게 설정 에러를 발생시키게 됩니다. 2. 왜 make clean 으로는 해결되지 않을까? 일반적인 개발 과정에서는 빌드가 꼬였을 때 make clean 을 실행하곤 합니다. 하지만 make clean 은 컴파일된 오브젝트 파일이나 바이너리( .o 파일 등)만 삭제할 뿐, Autotools가 시스템 환경을 탐색한 결과로 남긴 캐시( config.cache 또는 내부 매크로 변수)나 설정 파일들은 그대로 유지 합니다. 일반적인 상황에서는 시스템의 하드웨어/OS 정보가 바뀌지 않기 때문에 이 잔여물이 문제가 되지 않습니다. 그러나 Tmux나 Screen 같은 터미널 멀티플렉서 환경에서 탐색된 왜곡된 정보가 캐시에 박혀버리면, 나중에 Tmux 외부(일반 터미널)로 나와서 빌드를 시도해도 이전의 오염된 캐시 때문에 계속해서 오류가 발생하게 됩니다. 3. 해결 방법 이 문제를 해결하기 위해서는 반드시 Tmux 외부 환경 에서 기존의 오염된 설정 파일을 ...

USB 4 스펙이 공표되었다. (탐즈발)

USB 표준을 제정하는 USB Promoter Group은 2019년 중반에 USB 4 아키텍처로 옮겨갈 것이라 공표했다. 

새로운 빠른 인터페이스는 Thunderbolt3가 지원하며, USB 3.2 대역폭의 두배인 무려, 40Gbps 대역폭을 지원한다. 


대충 발번역하기로, USB 표준 제정에 공헌하는 인텔이 Thunderbolt3 표준을 USB 4로 넣기로 결정한 것으로 보인다. (내말)

인텔은 로열티를 받지 않기로 하였기 때문에, 많은 칩제조사들이 비용을 지불하지 않아도 될 것이다. (진작에 그러지, 2017년에 이미 로열티는 포기한듯.
물론 USB3 표준에 들어가는것에 대한 로열티를 포기한 것은 아니니 조금의 의미는 있음... )

USB4는 인증 된 USB Type-C 케이블을 사용하고 2레인 인터페이스에서 최대 40Gbps의 처리량을 보인다고 한다. 





이미 Type-C 케이블로 다 처리하고 있는 상황이고,  슬롯 옆에 이미지로 구분하고 있는 상황인데다가 썬더볼트처럼, 파워도 전송하고 있는 상황이니, 그냥 앗싸리, 넣는걸로 결정한듯함. 소비자들이 점점 혼동할 테니 의미있는 변화인듯 하다. 그런데 pci express 신호는 포함이 아닐 것 같은데 표준이 완전히 제정되고 나서 확인해보면 될것 같다. 

저 2레인의 인터페이스라는건, Type-A로도 20Gbps의 성능이 나올 것으로 보인다. 일단 현재 있는 프로토콜로는 이 정도 속도가 안나올 것으로 보이는데, pci express 위키문서를 봐도, 128b/130 인코딩 보다 더 큰 넘은 안보인다.  

그냥 클럭을 두배로 올리는 것 같은데... 여유가 있을지는 모르겠고, 
1.5m 이하에서만 사용되는 근거리 인터페이스가 될 것 같다.  

저렇게 발표해놓고, 그냥 4-lane을 쓰거나 할 수 도 있을 것 같은데, 핀수가 많으니까, 

음??? 


USB 3.2를 준수하는 물건도 안나오는 판에... 너무 빨리 진행되고 있는 것은 아닌가 싶기도 하다.  10Gbps x 2 도 표준 나오기 전에 만들은 물건들은 본것 같은데... 

음 어떻게 되려나... 

댓글