Make fail: niejawny błąd deklaracji


0

Próbuję skompilować aplikację (szczególnie TVHeadend), która używa gcc i otrzymuję ten błąd:

src/main.c: In function 'main':
src/main.c: error: implicit declaration of function 'COMP_zlib_cleanup'

Jak dekodować z tej wiadomości, gdzie muszę szukać naprawy?

Myślałem, że to z powodu zaginięcia zlib1g-dev , ale tam jest. I mogę skonfigurować program, aby unikał używania zlib i nadal nie działa.

Próbuję zbudować na maszynie wirtualnej z Debianem, który używa starej wersji gcc (v4.3.2) i nie mogę go uaktualnić; w najnowszym Ubuntu te same pliki są poprawnie kompilowane bez żadnego błędu lub ostrzeżenia. Czy przyczyną może być stara wersja gcc? A jeśli tak, to dlaczego?

Bardziej interesuje mnie ogólna odpowiedź na temat tego, jaki jest właściwy sposób na rozwiązanie i naprawienie ogólnych Deklaracja niejawna błędy.


Brzmi bardzo prawdopodobne, że kompilowany kod jest nowszy niż kompilator. Czy próbowałeś skompilować wersję aplikacji, która poprzedza kompilator?
— digitxp

Oczywiście, że tak, ale nie po raz pierwszy kompilowałem tę wersję i działała za każdym razem. Być może dodali nowe rzeczy lub mogą pojawić się błędy w źródle, dlatego pytam, gdzie mogę dalej zbadać, aby uniknąć błędów.
— virtualdj
Korzystając z naszej strony potwierdzasz, że przeczytałeś(-aś) i rozumiesz nasze zasady używania plików cookie i zasady ochrony prywatności.
Licensed under cc by-sa 3.0 with attribution required.