TECH 으로 돌아가기
TECH HACKER NEWS 오늘 2분 읽기 32 READS

리눅스 커널이 드디어 $ORIGIN을 지원한다, 반쯤은

동적 링커에서 $ORIGIN은 실행 파일이 놓인 디렉터리를 가리키는 특수 토큰으로, RPATH/RUNPATH에 쓰면 라이브러리를 바이너리 기준 상대 경로로 찾게 해 '재배치 가능한(relocatable)' 바이너리를 만들 수 있습니다. 그런데 정작 ELF 인터프리터(ld.so) 경로만큼은 커널이 절대 경로로 박아 넣어 그대로 실행했기 때문에 $ORIGIN이 통하지 않았고, 이는 Nix나 이식성 있는 애플리케이션을 배포할 때 오래된 골칫거리였습니다. 로더 위치가 시스템마다 조금만 달라도 바이너리가 실행되지 않았죠. 이번 커널 패치는 인터프리터 경로를 실행 파일 위치 기준 상대 경로로 해석할 수 있게 열어주어, 로더까지 바이너리와 함께 어디로든 옮길 수 있게 합니다. 다만 제목이 '반쯤(sort of)'이라고 못 박은 이유가 있습니다. 진짜 $ORIGIN 문자열 확장을 그대로 지원하는 것이 아니라, 상대 경로 해석이라는 제한된 형태이기 때문입니다. 그럼에도 설치 위치에 독립적인 툴체인과 패키징, 컨테이너 없는 이식성을 고민해 온 개발자에게는 분명 의미 있는 진전입니다.

SOURCE · HACKER NEWS
원문 전체 보기 → https://fzakaria.com/2026/07/20/linux-kernel-will-support-or...
SHARE
처리 중...