한 가지 방법은 다소 해킹의 첫 번째 항목으로, 각 앱의 빌드 단계에 스크립트 실행을 추가하고 일부 알려진 장소에 config.h 파일을 복사하는 것입니다 - /tmp/Config.h 및 포함 된 라이브러리에서 찾을 것입니다. 파일은 모든 빌드에서 복사되므로 항상 적합합니다.
EDIT1 :별로 좋지 않지만 라이브러리의 종속성 바로 아래에 실행 빌드 스크립트를 추가 할 수 있습니다. 하나만 추가하고 환경 변수를 표시하도록 설정된 체크 상자를 그대로 둡니다. 당신이 한 세트 볼 수 있습니다
file_list를을 =/볼륨/데이터/사용자/dhoerl/라이브러리/개발자/엑스 코드/DerivedData/MyProject를-fdzaatzqtmrnzubseakedvxmsgul/구축/중간체/MyStaticLibrary.build/디버그-iphoneos/MyStaticLibrary.build/객체/LinkFileList
당신이 볼 수있는 것은 다음의 몇 가지가 접두어로 현재 프로젝트 폴더 가지고있다 :
/볼륨/데이터/사용자/dhoerl/라이브러리/개발자/엑스 코드/DerivedData/MyProject-
을
접두어를 얻기 위해 스크립트를 작성한 다음 로컬 Config.h 파일 경로를 추가하면 이제는 Config.h 헤더에 대한 완전한 경로는 라이브러리의 알려진 위치에 복사 할 수 있습니다. 더 나은 해결책이있을 수 있으므로 xcode 포럼에 게시 할 예정입니다. Xcode 3에 있어야합니다. 중요한 것을 다시 얻으 려한다면이를 업데이트 할 것입니다.
EDIT2 : 이것 봐 : 1) 라이브러리를 클릭하면, 빌드 페이즈를 클릭하는 스크립트 실행 버튼
2 '+'오른쪽 아래를 눌러 구축 단계 추가)에 지금의 두 번째 항목을 드래그
# Get the Project Name (assumes upper/lower/numbers only in name)
PROJ=$(echo $BUILD_DIR | sed -En -e 's/(\/.*\/)([A-Za-z0-9]+)-([a-z]+\/Build\/Products)/\2/p')
# Use this variable to construct a full path
FULL_PATH="/Volumes/Data/Users/dhoerl/Downloads/nightmare/"$PROJ"/"$PROJ"/HelloWorldLayer.h"
echo FULL_PATH equals $FULL_PATH
# Make Sure MyStaticLibrary is correct
echo PROJ_DIR equals "$PROJECT_DIR/MyStaticLibrary"
cp -f "$FULL_PATH" "$PROJECT_DIR/MyStaticLibrary"
:)에 "/ 빈/ksh를"
4 셸을 변경)
3 (대상 종속성 아래) 목록은 적절한 파일/경로가이를 편집 한 후,이에 붙여 넣기
5)이 라이브러리는 원하는 곳에 라이브러리를 설치한다고 가정하지만 각 App 프로젝트는 동일한 상위 폴더 (모든 제한 사항이 아니라 이전에 내가 한 것)를 가져야합니다.
추신 : 나는 이런 종류의 일을 할 때 일반적으로 응용 프로그램의 실제 파일을 포함하지 않지만 라이브러리에서 인스턴스화되지 않은 클래스의 헤더를 만듭니다. 이 Foo를 호출 할 수 있습니다. 그래서 라이브러리에는 Foo.h가 있고, 위젯의 수, 특수 폴더의 위치, plists, 배열, 사전 등 정보를 반환하는 많은 메소드가 있습니다. 아이디어는 라이브러리가 클래스 메소드와이 인터페이스 (클래스 싱글, 아니면 그냥 클래스를 통해 필요가 무엇이든 얻을하는 방법을 알고있다 YMMV
는 PSS :.. 다른 사람이이 읽기, 그것은 데모 프로젝트를 만들 지불
나를 위해 작동하지 않습니다. ** 샘플 프로젝트를 ** [여기] (http://dfiles.eu/files/vj7egy9ig) ** 및 ** [여기] (http://www.sendspace.com/file/dfvs09) *에 업로드했습니다. *, 그래서 당신은 내 고통을 볼 수 있습니다. – SpaceDog
그것을보고 ... –
위대한! 감사!! – SpaceDog