FPC 3.0.0rc1 Error while linking

Für alles, was in den übrigen Lazarusthemen keinen Platz, aber mit Lazarus zutun hat.
Antworten
Warf
Beiträge: 1908
Registriert: Di 23. Sep 2014, 17:46
OS, Lazarus, FPC: Win10 | Linux
CPU-Target: x86_64

FPC 3.0.0rc1 Error while linking

Beitrag von Warf »

Hey ho,
ich habe grade mir den rc 1 vom fpc 3.0.0 geladen (i386 macosx auf Macbook air mit OSX 10.10.5) und wenn ich jetzt versuche eine LCL Formular Anwendung zu Kompilieren bekomme ich einen Fehler beim linken:

Code: Alles auswählen

Nachrichten, Hinweise: 2
Note: Duplicate unit "lobjc" in "project1", orphaned ppu "/Users/frederic/tmp/lib/i386-darwin/lobjc.ppu"
Note: Duplicate unit "lobjc" in "LCL 1.5", ppu="/Developer/FreePascal/lazarus/lcl/units/i386-darwin/carbon/lobjc.ppu", source="/Developer/FreePascal/lazarus/lcl/interfaces/carbon/objc/lobjc.pas"
Hint: (11030) Start of reading config file /etc/fpc.cfg
Hint: (11031) End of reading config file /etc/fpc.cfg
Free Pascal Compiler version 3.0.0rc1 [2015/08/11] for i386
Copyright (c) 1993-2015 by Florian Klaempfl and others
(1002) Target OS: Darwin for i386
(3104) Compiling /Users/frederic/tmp/project1.lpr
(3104) Compiling unit1.pas
(9001) Assembling (pipe) /Users/frederic/tmp/lib/i386-darwin/unit1.s
(9001) Assembling (pipe) /Users/frederic/tmp/lib/i386-darwin/project1.s
(9022) Compiling resource /Users/frederic/tmp/lib/i386-darwin/project1.or
(9015) Linking /Users/frederic/tmp/project1
Undefined symbols for architecture i386:
  "_RTTI_$LOBJC_$$_POBJC_OBJECT", referenced from:
      _RTTI_$FOUNDATION_$$_TPROCNSARRAYCOMPARATOR0 in foundation.o
      _RTTI_$FOUNDATION_$$_TPROCNSARRAYCOMPARATOR1 in foundation.o
      _RTTI_$FOUNDATION_$$_TPROCNSMUTABLEARRAYCOMPARE2 in foundation.o
      _RTTI_$APPKIT_$$_TPROCNSVIEWCOMPARE0 in appkit.o
  "_RTTI_SYSTEM_JMP_BUF", referenced from:
      _RTTI_LOBJC_NXHANDLER in lobjc.o
  "_RTTI_SYSTEM_LONGINT", referenced from:
      _RTTI_LOBJC_OBJC_IVAR in lobjc.o
      _RTTI_LOBJC_OBJC_IVAR_LIST in lobjc.o
      _RTTI_LOBJC_OBJC_METHOD_LIST in lobjc.o
      _RTTI_LOBJC_OBJC_PROTOCOL_LIST in lobjc.o
      _RTTI_LOBJC_OBJC_EXCEPTION_FUNCTIONS_T in lobjc.o
      _RTTI_LOBJC_NXHANDLER in lobjc.o
  "_RTTI_SYSTEM_LONGWORD", referenced from:
      _RTTI_LOBJC_OBJC_CLASS in lobjc.o
      _RTTI_LOBJC_OBJC_CACHE in lobjc.o
      _RTTI_LOBJC_OBJC_SYMTAB in lobjc.o
      _RTTI_LOBJC_OBJC_MODULE in lobjc.o
  "_RTTI_SYSTEM_PCHAR", referenced from:
      _RTTI_LOBJC_OBJC_CLASS in lobjc.o
      _RTTI_LOBJC_OBJC_CATEGORY in lobjc.o
      _RTTI_LOBJC_OBJC_IVAR in lobjc.o
      _RTTI_LOBJC_OBJC_METHOD in lobjc.o
      _RTTI_LOBJC_OBJC_MODULE in lobjc.o
  "_RTTI_SYSTEM_POINTER", referenced from:
      _RTTI_LOBJC_OBJC_OBJECT in lobjc.o
      _RTTI_LOBJC_OBJC_METHOD in lobjc.o
      _RTTI_LOBJC_DEF75 in lobjc.o
      _RTTI_LOBJC_OBJC_SUPER in lobjc.o
      _RTTI_LOBJC_NXHANDLER in lobjc.o
  "_RTTI_SYSTEM_WORD", referenced from:
      _RTTI_LOBJC_OBJC_SYMTAB in lobjc.o
ld: symbol(s) not found for architecture i386
An error occurred while linking
/Users/frederic/tmp/project1.lpr(20,1) Error: (9013) Error while linking
/Users/frederic/tmp/project1.lpr(20,1) Fatal: (10026) There were 1 errors compiling module, stopping
Fatal: (1018) Compilation aborted
Error: /usr/local/bin/ppc386 returned an error exitcode
 


Weiß jemand woran das liegt/wie ich das beheben kann?

liegt das an den doppelten lobjc.ppu (siehe Hinweise in Zeile 2 und 3)?

PS: Ich wusste nicht in welches Unterforum das gehört daher habe ich es einfach mal in Programmieren->Sonstiges gepackt

mischi
Beiträge: 206
Registriert: Di 10. Nov 2009, 18:49
OS, Lazarus, FPC: macOS, 10.13, lazarus 1.8.x, fpc 3.0.x
CPU-Target: 32Bit/64bit

Re: FPC 3.0.0rc1 Error while linking

Beitrag von mischi »

Normalerweise sollte es nicht daran liegen, dass lobjc.ppu zweimal vorhanden ist. Du kannst ja die zwei mal miteinander vergleichen. Das ging, glaube ich mit ppudump oder etwas ähnlichem. Hast du probiert, die Versionen in tmp zu löschen oder Lazarus neu zu kompilieren?
MiSchi macht die fink-Pakete

Warf
Beiträge: 1908
Registriert: Di 23. Sep 2014, 17:46
OS, Lazarus, FPC: Win10 | Linux
CPU-Target: x86_64

Re: FPC 3.0.0rc1 Error while linking

Beitrag von Warf »

mischi hat geschrieben:Normalerweise sollte es nicht daran liegen, dass lobjc.ppu zweimal vorhanden ist. Du kannst ja die zwei mal miteinander vergleichen. Das ging, glaube ich mit ppudump oder etwas ähnlichem. Hast du probiert, die Versionen in tmp zu löschen oder Lazarus neu zu kompilieren?


ich habe den kompletten Ordner tmp gelöscht, da waren einfach veraltete ppu und Object files drin, die nicht aufgeräumt wurden

Antworten