Problemy z analizatorem statycznym z narzędziami wiersza poleceń
Zautomatyzowaliśmy budowanie naszego obecnego projektu za pomocą narzędzi TeamCity / Command Line. Aby mieć pewność, że złapiemy jak najwięcej potencjalnych problemów, ustawiliśmy projekt, aby używał analizatora statycznego dla każdej kompilacji. Analizator oznaczył kilka klas innych firm, więc wykluczyliśmy wątpliwe klasy oznaczając je:
-w -Xanalyzer -analyzer-disable-checker
Wszystko działa zgodnie z oczekiwaniami podczas kompilacji w Xcode (testowane z 4.6.3 i 5.0.1).
Jednak po skompilowaniu na serwerze TeamCity otrzymujemy następujący błąd dla każdego wykluczonego pliku innej firmy:
__PIC__ level differs in PCH file vs. current fileerror: __PIC__ level differs in PCH file vs. current file2 errors generated.
Błąd zniknie, jeśli usuniemy znaczniki -Xanalyzer -analyzer-disable-checker (ale oczywiście w tym przypadku otrzymamy ostrzeżenia analizatora).
Ten sam błąd występuje, gdy kompilujemy za pomocą AppCode, co sprawia, że myślę, że jest to w jakiś sposób związane z narzędziami wiersza poleceń, zarówno AppCode, jak i serwerem TeamCity, które wykorzystują je do kompilacji kompilacji.
Serwer TeamCity używa narzędzi wiersza poleceń Xcode 4 i próbowałem AppCode z Xcode 4 i 5.
Podczas próby z AppCode przy użyciu narzędzi wiersza poleceń Xcode 5 błąd różni się nieznacznie (jeszcze raz, po jednym dla każdej wykluczonej klasy):
error reading 'pic'
no analyzer checkers are associated with '-mrelocation-model'
Tak więc pytanie: czy ktoś ma jakiś pomysł, jak pozbyć się tego błędu podczas tłumienia ostrzeżeń analizatora dla określonych klas podczas korzystania z narzędzi wiersza poleceń (jeśli narzędzia wiersza poleceń rzeczywiście są w błędzie)?