Inconsistency detected by ld.so

Für Fragen zur Programmiersprache auf welcher Lazarus aufbaut
Antworten
niederrheiner
Beiträge: 87
Registriert: Sa 19. Jan 2008, 17:21
OS, Lazarus, FPC: Winux (L 0.9.xy FPC 2.2.z)
CPU-Target: xxBit
Wohnort: Rheinberg

Inconsistency detected by ld.so

Beitrag von niederrheiner »

Hallo an Alle,

ich habe aus dem Buch "Freepascal 2" die Beispiele von Seite 58/59 nachvollzogen und bin dabei auf den Fehler

Code: Alles auswählen

Inconsistency detected by ld.so: dl-fini.c: 195: _dl_fini: Assertion `ns != 0 || i == nloaded' failed!
gestoßen.

Die Beispiele sehen wie folgt aus:

Code: Alles auswählen

library subs;
 
function SubStr(CString :PChar; FromPos, ToPos : LongInt): PChar;
var
  Length	:Integer;
 
begin
  Length := StrLen(CString);
  SubStr := CString + Length;
  if (FromPos > 0) and (ToPos >= FromPos) then begin
    if Length >= FromPos then
      SubStr := CString + FromPos -1;
    if Length > ToPos then
      CString[ToPos] := #0;
  end;
end;
 
exports
  SubStr;
und

Code: Alles auswählen

program test_subs;
 
function SubStr(const CString: PChar; FromPos, ToPos :LongInt): PChar; CDecl; External 'subs';
var
  s		:PChar;
  FP, TP	:Integer;
 
begin
  s	:= 'Test';
  FP	:= 2;
  TP	:= 3;
  WriteLn(SubStr(s, FP, TP));
end.
Kompiliert wurden die beiden Programme mit

Code: Alles auswählen

fpc subs
und

Code: Alles auswählen

fpc test_subs
Die Datei libsubs.so habe ich nach /usr/lib kopiert.

Der Aufruf

Code: Alles auswählen

./test_subs
erzeugte die obige Fehlermeldung.

Was habe ich falsch gemacht / Übersehen?

MfG
Günter

Benutzeravatar
theo
Beiträge: 10859
Registriert: Mo 11. Sep 2006, 19:01

Re: Inconsistency detected by ld.so

Beitrag von theo »

Kann sein dass du eine "kaputte" glibc hast.
Es gab schon mal was dazu auf der FP Mailing Liste:
http://www.hu.freepascal.org/lists/fpc- ... 17199.html" onclick="window.open(this.href);return false;
http://www.hu.freepascal.org/lists/fpc- ... 17223.html" onclick="window.open(this.href);return false;

niederrheiner
Beiträge: 87
Registriert: Sa 19. Jan 2008, 17:21
OS, Lazarus, FPC: Winux (L 0.9.xy FPC 2.2.z)
CPU-Target: xxBit
Wohnort: Rheinberg

Re: Inconsistency detected by ld.so

Beitrag von niederrheiner »

Hallo theo,
danke für Deine Antwort.

Ich habe hier Ubuntu 10.04 laufen. Wie stelle ich denn jetzt fest, ob meine glibc "kaputt" ist? Habe kein anderes System zum Testen.
theo hat geschrieben:Kann sein dass du eine "kaputte" glibc hast.
Es gab schon mal was dazu auf der FP Mailing Liste:
http://www.hu.freepascal.org/lists/fpc- ... 17199.html" onclick="window.open(this.href);return false;
http://www.hu.freepascal.org/lists/fpc- ... 17223.html" onclick="window.open(this.href);return false;

Benutzeravatar
theo
Beiträge: 10859
Registriert: Mo 11. Sep 2006, 19:01

Re: Inconsistency detected by ld.so

Beitrag von theo »

Naja, im zweiten Link steht doch, dass die Version 2.6 bzw 2.6.1 betroffen sein könnte.
Schau halt nach was du hast.
z.B. mit
/lib/libc.so.6 | head -1
oder (für rpm's)
rpm -q glibc

Antworten