Udostępnij za pośrednictwem


Błąd krytyczny C1047

Plik obiektu lub biblioteki "nazwa pliku" został utworzony za pomocą starszego kompilatora niż inne obiekty; ponownie skompiluj stare obiekty i biblioteki

Ten błąd może wystąpić, jeśli do skompilowania projektu zostanie użyta nowa wersja kompilatora, ale nie wykonaj czystego ponownego kompilowania istniejących plików obiektów ani bibliotek.

Uwagi

C1047 jest spowodowany tym, że pliki obiektów lub biblioteki utworzone przy użyciu lub /GL /LTCG w różnych wersjach zestawu narzędzi kompilatora C/C++ programu Visual Studio są połączone. Na przykład nie można połączyć biblioteki utworzonej /LTCG przy użyciu programu Visual Studio 2019 w wersji 16.7 z aplikacją skompilowaną przy użyciu programu Visual Studio 2019 w wersji 16.8. Zarówno główna, jak i pomocnicza liczba aktualizacji zestawu narzędzi używanego do kompilowania obiektów i bibliotek musi być dokładnie zgodna.

Aby rozwiązać problem C1047, ponownie skompiluj wszystkie pliki obiektów lub biblioteki przy użyciu tej samej wersji zestawu narzędzi.

Zobacz też

/GL (Optymalizacja całego programu)
/LTCG (Generowanie kodu w czasie połączenia)
Zgodność binarna języka C++ między wersjami programu Visual Studio