2013-03-23 1 views
1

자, 이제는 배경을 가지고 자신을 http://www.opensource.apple.com/source/curl/curl-68/ 사본을 다운로드했고, 컴파일하고 자신의 컴퓨터에 설치했습니다. 패키지의 형태로 단순 재배포 가능하므로 앱의 일부로 만드는 내 패키지의 요구 사항으로 사용할 수 있습니다. 제가 이것을하는 이유는 이것이 산 사자에서 발견 된 컬의 최신 버전이라는 것입니다.PackageMaker (OS X)를 사용하여 make 프로젝트를위한 설치 프로그램을 만듭니다.

이 문제를 해결하는 가장 좋은 방법은 무엇입니까?

배포 된 파일을 올바른 권한으로 올바른 위치에 배치하는 폴더 구조를 만들면됩니까?

또는

궁극적으로는 '설치하기'대상들이 '/ 설치는/usr/빈'를 사용을해야 대부분의 파일을 저장 것으로 보인다 때문에 스크립트를 만들 필요가 있는가 나는 아니에요 이 개념에 익숙한 리눅스 사용?

내가 PackageMaker의 개념을 처음 접했을 때주의해야 할 점은 분명히 언급해야 할 기능에 대해 분명히해야한다는 것입니다. 제가 생각하기에 또 하나의 작은 질문은 나 자신을 재현하지 않고 폴더 구조를 만들려는 목표를 만들 게으른 방법이 없다는 것입니다.

답변

0

당신은 아마 대상 시스템에 아무런 메이크업 유틸리티가 없을 수 있기 때문에 첫 번째 방법을 사용해야 할 것

를 편집 (지금까지의 내가 알고있는이 엑스 코드 명령 줄 유틸리티의 일부) 및 curl의 최신 버전을 클라이언트에 제공해서는 안되며, 문서에 요구 사항을 추가하기 만하면됩니다. 그리고 사용자는 원하는대로 (예를 들어 brew를 사용하여) 설치할 수 있습니다. 아니면 귀하의 솔루션을 정적 링크 수 있습니다 (하지만 난 당신이 컬을 사용하는 방법을 모르겠다).

편집 2 : 정적 연결의 경우 curl-config --static-libs을 시작하고 출력을 링커 플래그에 추가하십시오. otool -L <your_binary> 명령을 사용하여 종속성을 볼 수 있고 컬이없는 경우 - 정적으로 링크 된 것보다

+0

아니요, 실제로 유감스럽게 생각합니다. 설치를 할 때와 같은 의미 일 수 있습니다. /usr/bin/install -c .libs/libcurl.4.dylib /usr/local/lib/libcurl.4.dylib 다음과 같은 명령을 통해 파일을 설치하십시오. OS X에서 파일에 대한 어떤 종류의 색인을 손상시키지 않았습니까? –

+0

아니요. 오히려 프로세스를 설치하기 쉽고 brew와 ports가/opt를 사용하기 때문에 말하기 양조 또는 포트를 사용하여 공식 Apple 설치 소스 코드를 사용하고 싶습니다. 그래서 다른 라이브러리에 링크되도록 컴파일해야합니다. –

+0

I don 시스템의 라이브러리를 자신의 시스템으로 대체하는 것이 좋습니다. 다른 응용 프로그램은 해당 컬 버전에 따라 다를 수 있습니다. 그냥 다른 폴더에 넣고 시스템 대신 사용할 수 있습니까? – cody