내부 응용 프로그램 개발 전용으로 사용할 내부 라이브러리를 개발해야하는 이유를 이해하는 데 어려움이 있습니다. 조직 외부의 누군가가 작성한 소프트웨어를 사용하려면 헤더 파일과 .a 또는 .so 파일을 보내서 프로젝트에 링크 할 수 있습니다 (동일한 환경에서 컴파일되었다고 가정). .
그러나 헤더 및 구현 파일에 액세스 할 수 있고 소스 트리에 포함시키고 모두 함께 컴파일 할 수있을 때 내부 응용 프로그램에 연결되도록 내부 라이브러리를 개발 해야하는 이유는 무엇입니까?
다시 말해, 일부 소스 코드가 작성된 경우 이진 라이브러리로 컴파일하여 응용 프로그램에 연결하거나 프로젝트의 소스 파일에 포함시키고 정기적으로 컴파일해야하는지 어떻게 결정합니까?
각 프로젝트에 '포함'파일을 말할 때 각 파일을 복사하여 현재 개발중인 프로젝트의 소스 트리에 붙여 넣는 것은 아닙니다. 일반적인 방법으로 프로젝트 파일에 포함될 수있는 공통 소스 코드를 포함하는 디렉토리 / 라이브러리 (모든 프로젝트와 분리)를 개발하는 것을 의미합니다 (예 : #include).
추신 : 나는 여러 데스크탑 응용 프로그램을위한 c / c ++ 개발에 대해 이야기하고 있습니다.