2011-11-20 15 views
5

Pobrałem bibliotekę C++ o otwartym kodzie źródłowym. Problem polega na tym, że jest to plik obiektu biblioteki (.lib). Tak to jest dystrybuowane. Z drugiej strony próbuję użyć go jako statycznej biblioteki przy użyciu Android NDK i oczekuje pliku .a. Minęły lata, odkąd użyłem C++, więc być może ktoś mógłby to wyjaśnić. Nie jestem pewien, dlaczego rozpowszechniają się jako plik .lib vs. .a? I jak mogę utworzyć plik .a z pliku .lib?Biblioteka statyczna C++ - jak utworzyć plik .a z .lib?

+0

proszę dodać tagi, stosownie – sehe

+2

To open source, prawda? Dlaczego nie pobierzesz źródła i nie zbudujesz obiektu '.a'? –

+0

źródło jest dostępne. niezbyt dobrze znane z plikami make. – Androider

Odpowiedz

6

Spójrz na polecenia ar z binutils:

ar rcs mylib.a mylib.lib 
+0

Jestem na cygwin. Mam ar. ar c mylib.a mylib.lib nie podaje żadnej operacji. – Androider

+0

ah ... jeśli jesteś na Cygwin, muszę ostrzec: .lib może być "biblioteką importu" (http://en.wikipedia.org/wiki/Dynamic-link_library#Import_libraries). Jednak zaktualizowałem moje polecenie za pomocą poprawnych przełączników, sry za awarię pamięci – sehe

+0

tak, teraz to działa. – Androider

Powiązane problemy