Nierozpoznana metoda wybierania kategorii selektora w statycznej bibliotece iOS

Używam oprogramowania innych firm, aby pomóc w napisaniu aplikacji na iPada za pomocą Xcode 4.3.2. Oprogramowanie jest otwarte i zazwyczaj jest skonfigurowane, więc jego kod zostanie skompilowany wraz z kodem napisanym przez programistę dla aplikacji. Ponieważ korzystałem z oprogramowania w wielu miejscach, postanowiłem zbudować go jako statyczną bibliotekę dla symulatora iOS.

Udało mi się zbudować bibliotekę i przekonwertować jedną aplikację na link do tej biblioteki, zamiast kompilować oryginalny kod źródłowy. Jednak, gdy idę uruchomić aplikację na symulatorze, pojawia się błąd, który mówi:nierozpoznany selektor wysłany do instancji.

Sprawdziłem, że program z powodzeniem korzysta z części biblioteki statycznej. Istnieje jednak jeden fragment kodu, który próbuje wywołać metodę na obiekcie, oraz ten, w którym wystąpiła awaria. Wywoływana metoda nie jest w rzeczywistości zdefiniowana w interfejsie tego obiektu. Jest to raczej dodatkowy moduł, który definiuje kategorię dla tej klasy obiektu. Plik nagłówkowy dla tego modułu jest poprawnie dołączony, a kompilator powinien był w stanie znaleźć metodę kategorii i zastosować ją do obiektu, jednak w czasie wykonywania występuje wspomniany powyżej błąd.

Użyłem polecenia „nm”, aby sprawdzić, czy metoda kategorii istnieje w bibliotece statycznej. Oto przykład wyjścia:

<code>nm libStaticLibrary.a | grep categoryMethod
00000130 t -[SomeClass(Category) categoryMethod:]
0000354c s -[SomeClass(Category) categoryMethod:].eh
</code>

Jakie pomysły mają ludzie na temat poprawnego działania tej biblioteki z żądaną aplikacją?

questionAnswers(2)

yourAnswerToTheQuestion