본문 바로가기

분류 전체보기14

리눅스 라이브러리 환경변수를 이용한 경로 설정 shared library를 참조하는 실행파일을 리눅스 시스템에서 실행시켰더니 내가 참조하려는 so 라이브러리를 로드하지 못했다는 터미널 에러메시지가 보였다. 실행파일인 app 이 특정 so 라이브러리를 참조하도록 환경변수로 path 설정이 누락되었다. 터미널을 이용하여 LD_LIBRARY_PATH 환경 변수로  참조하고자 하는 shared library 경로를 설정해준다. export LD_LIBRARY_PATH=$LD_LIBRARY_PATH:경로 export LD_LIBRARY_PATH=$LD_LIBRARY_PATH:/app/lib/ 해당 환경변수 설정은 시스템을 재 시작할때 마다 설정해주어야 하는 번거로움이 있다. 비로그인 쉘 ~/.bashrc 또는 로그인쉘 ~/.profile 에 설정하면 시스템.. 2024. 4. 25.
실행파일과 어플리케이션 개발 업무를 하면서 "실행 파일" 과 "애플리케이션" 은 종종 혼용되어 사용하고 있는데 그 차이가 궁금하여 정리해보았다. 1. 실행 파일 (Executable File) 실행 파일은 컴퓨터에서 실행할 수 있는 프로그램을 포함하는 파일이다. 이는 주로 특정한 작업을 수행하기 위해 컴파일된 기계 코드로 이루어져 있다. 실행 파일은 특정 운영 체제에서 실행될 수 있으며, 사용자가 해당 프로그램을 시작할 때 이 파일이 메모리에 로드되고 실행된다. 2. 어플리케이션 (Application) 애플리케이션은 사용자가 컴퓨터에서 실행하여 특정 작업을 수행하기 위해 설계된 소프트웨어이다. 애플리케이션은 실행 파일에 대한 더 큰 개념으로, 사용자 인터페이스(UI)를 포함하고 종종 다양한 기능을 제공한다. 예를 들어 웹 브.. 2024. 4. 19.
정적 라이브러리(static library)와 공유 라이브러리(shared library) 정적 라이브러리는 컴파일 시에 라이브러리의 코드가 실행 파일에 직접 포함된다. 이는 링크 과정에서 라이브러리의 object 파일이 실행 파일에 결합되는 것을 의미한다. (장점) 따라서 실행 파일이 생성될 때 라이브러리의 코드가 전부 포함되므로, 실행 시에는 해당 라이브러리가 필요하지 않다. 이것은 애플리케이션을 독립적으로 배포할 때 유용하며, 시스템 환경의 변화에 관계없이 안정적으로 실행된다. (단점) 단점은 모든 코드가 실행 파일에 포함되므로 실행 파일의 크기가 커질 수 있고, 메모리 사용량이 더 많아질 수 있다는 점이다. 반면에 공유 라이브러리는 여러 애플리케이션에서 공유할 수 있는 라이브러리로, 라이브러리의 코드가 메모리에 하나만 로드되고, 각 애플리케이션이 이를 공유한다. (장점) 실행 파일에는 .. 2024. 4. 19.
글로벌 경제지표 CPI, PCE, PPI 소비자물가지수, CPI (Consumer Price Index) 소비자가 구매할 때의 물가로 주로 상품과 서비스 가격을 의미한다. 소비자에 '의해(by consumers)' 직접적으로 지출되는 상품의 물가지수이다. 개인소비지출 물가지수, PCE (Personal Consumption Expenditures) PCE는 소비자에 '의해(by consumers)' 그리고 소비자를 '위해(on behalf of consumers)' 지출되는 상품의 물가지수이다. '의해'는 소비자의 지갑으로부터 지출된 것을 의미하며 '위해' 는 직접 소비자가 아닌 제3자가 소비자를 위해 지출한 것을 의미한다. 대표적인 사례로 고용주가 노동자를 위해 지출하는 건강보험을 생각할 수 있다. 고용주가 지출하는 건강보험은 PCE에는 포함.. 2023. 12. 17.