synapse beim arm processor

Alle Fragen zur Netzwerkkommunikation
hanibal
Beiträge: 369
Registriert: Sa 3. Mär 2007, 16:03
OS, Lazarus, FPC: Winux (L 0.9.xy FPC 2.2.z)
CPU-Target: xxBit
Wohnort: Bramsche (Emsland)

Re: synapse beim arm processor

Beitrag von hanibal »

ich habe mir jetzt eine cross compiler erstellt, welcher auch tut, nur das linken funzt nicht.
ausgabe:

Code: Alles auswählen

[martin@martin fpc_trunk]$ ./compiler/ppcrossarm -Tlinux -O- -FD/usr/bin -XParm-elf- /home/martin/Desktop/Programmieren/Chat\ Server/server.lpr
Free Pascal Compiler version 2.3.1 [2008/12/28] for arm
Copyright (c) 1993-2008 by Florian Klaempfl
Target OS: Linux for ARMEL
Compiling /home/martin/Desktop/Programmieren/Chat Server/server.lpr
Assembling server
Linking /home/martin/Desktop/Programmieren/Chat Server/server
/usr/bin/arm-elf-ld: skipping incompatible /usr/lib/crti.o when searching for /usr/lib/crti.o
/usr/bin/arm-elf-ld: cannot find /usr/lib/crti.o
server.lpr(85) Error: Error while linking
server.lpr(85) Fatal: There were 1 errors compiling module, stopping
Fatal: Compilation aborted
[martin@martin fpc_trunk]$
ich habe in der fpc.cfg umgestellt:

Code: Alles auswählen

# searchpath for units and other system dependent things
#-Fu/usr/lib/fpc/$fpcversion/units/$fpctarget
#-Fu/usr/lib/fpc/$fpcversion/units/$fpctarget/*
#-Fu/usr/lib/fpc/$fpcversion/units/$fpctarget/rtl
-Fu/home/martin/fpc_trunk/packages/
-Fu/home/martin/fpc_trunk/packages/units/$fpctarget/*
-Fu/home/martin/fpc_trunk/rtl/units/$fpctarget/
#-Fu~/fpc/packages/base/*/units/;~/fpc/fcl/units/;~/fpc/rtl/units/
#fu/home/martin/fpc_trunk/packages
 
#FU/home/martin/fpc_trunk/rtl/units/i386-linux
 
# searchpath for libraries
#-Fl/usr/lib/gcc/i686-pc-linux-gnu/4.3.2
-Fl/usr/lib/gcc/arm-elf/4.3.2
 
 
 
#-Fl/pp/lib
#-Fl/lib;/usr/lib

hanibal
Beiträge: 369
Registriert: Sa 3. Mär 2007, 16:03
OS, Lazarus, FPC: Winux (L 0.9.xy FPC 2.2.z)
CPU-Target: xxBit
Wohnort: Bramsche (Emsland)

Re: synapse beim arm processor

Beitrag von hanibal »

hallo, ich versuche gerae das mit crosscompiler zu compilieren, und dann aufem zielsystem zu linken, allerdings sagt derlinker mir gaaaaaaaaaaaanz of soetwas hintereinander, nur mit anderen dateien:

Code: Alles auswählen

ld: ERROR: Source object synautil.o has EABI version 0, but target server has EABI version 4
ld: failed to merge target specific data of file synautil.o
kann man ein programm mit einer anderen eabi version compilieren?

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

Re: synapse beim arm processor

Beitrag von theo »

http://www.mail-archive.com/fpc-devel@l ... 13388.html" onclick="window.open(this.href);return false;

hanibal
Beiträge: 369
Registriert: Sa 3. Mär 2007, 16:03
OS, Lazarus, FPC: Winux (L 0.9.xy FPC 2.2.z)
CPU-Target: xxBit
Wohnort: Bramsche (Emsland)

Re: synapse beim arm processor

Beitrag von hanibal »

hab ich schon gesehen, hilft mir aber auch nicht, den compiler den man da runterladen kann, kann ich nicht verwenden, wegen fpu

ich habe aber jetzt glaube ich ne möglcihkeit gefunden das prob zu lösen: der gleitkommateil ist in einer funktion "datetime". diese wird von meinem programm nicht verwendet. ich versuche einfach mal diese aus der datei rauszu löschen.

EDIT: kann diese zeile

Code: Alles auswählen

Next := GetTick + Trunc((Length / MaxB) * 1000);
eine gleitkomma sache sein? weil wenn ich mir den assembler angucke an der stelle wo jetzt der fehler kommt (synautil ist jetzt fpu frei :) ), komme ich zu dieser funktion:

Code: Alles auswählen

procedure TBlockSocket.LimitBandwidth(Length: Integer; MaxB: integer; var Next: LongWord);
var
  x: LongWord;
  y: LongWord;
  n: integer;
begin
  if FStopFlag then
    exit;
  if MaxB > 0 then
  begin
    y := GetTick;
    if Next > y then
    begin
      x := Next - y;
      if x > 0 then
      begin
        DoStatus(HR_Wait, IntToStr(x));
        sleep(x mod 250);
        for n := 1 to x div 250 do
          if FStopFlag then
            Break
          else
            sleep(250);
      end;
    end;
    Next := GetTick + Trunc((Length / MaxB) * 1000);
  end;
end;
welche ich leider nicht einfach löschen kann, weil sie benötigt wird :(

hanibal
Beiträge: 369
Registriert: Sa 3. Mär 2007, 16:03
OS, Lazarus, FPC: Winux (L 0.9.xy FPC 2.2.z)
CPU-Target: xxBit
Wohnort: Bramsche (Emsland)

Re: synapse beim arm processor

Beitrag von hanibal »

ich hab jetzt nicht mehr das prob mit der fpu :)

hab eifach alle auskommentiert, und geguckt was passiert, aufem pc leufts, aber aufer nslu2 mit debian gibts folgendes prob:

Code: Alles auswählen

server.lpr(85) Warning: Object cprt21.o not found, Linking may fail !
/usr/bin/ld: cannot find cprt21.o
server.lpr(85) Error: Error while linking
server.lpr(85) Fatal: There were 1 errors compiling module, stopping
Fatal: Compilation aborted
Error: /usr/local/bin/ppcarm returned an error exitcode (normal if you did not specify a source file to be compiled)
kann man die cprt21.o irgendwie per apt-get installieren?

mschnell
Beiträge: 3444
Registriert: Mo 11. Sep 2006, 10:24
OS, Lazarus, FPC: svn (Window32, Linux x64, Linux ARM (QNAP) (cross+nativ)
CPU-Target: X32 / X64 / ARMv5
Wohnort: Krefeld

Re: synapse beim arm processor

Beitrag von mschnell »

Übrigens:

Hast Du ein FPC - "Hello World" auf der NSLU am Laufen ?!?!?!?

Vorher würde ich nix komplizierteres angehen.

-Michael



P.S.: Ich habe gerade erste erfolgreiche Tests mit iscsi gemacht.

Auf dem iscsi-Target (=Server=NSLU) war das kein größeres Problem.

Der Linux PC kommte den zweiten Stick via iscsi im NSLU über TCP/IP sehen, formatieren und mounten. Leider funktioniert die yast iscsi Client Konfiguration auf meinen alten Suse nicht, sondern macht eine Fehlermeldung. Irgendwie habe ich aber einmal eine Verbindung geschafft.

Vermutlich muss ich auf eine aktuelle Distribution upgraden um es vernünftig konfiguriert zu bekommen (mit Partition-Label zum sauberen mounten etc... ).

hanibal
Beiträge: 369
Registriert: Sa 3. Mär 2007, 16:03
OS, Lazarus, FPC: Winux (L 0.9.xy FPC 2.2.z)
CPU-Target: xxBit
Wohnort: Bramsche (Emsland)

Re: synapse beim arm processor

Beitrag von hanibal »

ich habe gerade verucht, fpc aus sid zu installieren, aber das gibt es da nur für arm nicht für armel, kann ich die arm version mit force drüberbügeln, oder funktioniert di dann nicht?

und nein, die fpc version die ich momentan benutze kann nicht mal ein helloworld kompilieren. bzw. linken

kann das daran liegen, dass die für arm ist, und nicht für armel?

hanibal
Beiträge: 369
Registriert: Sa 3. Mär 2007, 16:03
OS, Lazarus, FPC: Winux (L 0.9.xy FPC 2.2.z)
CPU-Target: xxBit
Wohnort: Bramsche (Emsland)

Re: synapse beim arm processor

Beitrag von hanibal »

ich bin mir mitlerweile zimlich sicher das es an dem armel lag, die verwendete fpc version ist für arm.

ich habe jetzt eine fpc armel binary und die erstellt mir gerade die rtl usw. ohne zu meckern.

ich werde nacher berichten, wie es gelaufen ist, ud die fpc für armel meinem beitrag anhängen, falls nocheiner das prob hat.

mschnell
Beiträge: 3444
Registriert: Mo 11. Sep 2006, 10:24
OS, Lazarus, FPC: svn (Window32, Linux x64, Linux ARM (QNAP) (cross+nativ)
CPU-Target: X32 / X64 / ARMv5
Wohnort: Krefeld

Re: synapse beim arm processor

Beitrag von mschnell »

hanibal hat geschrieben:nein, die fpc version die ich momentan benutze kann nicht mal ein helloworld kompilieren. bzw. linken
kann das daran liegen, dass die für arm ist, und nicht für armel?
ARMEL ist doch ein Emulator ?!?!?!
Wieso sollte irgentetwas für ARMEL funktionieren und für ARM nicht ?
Verstehe ich nicht....
-Michael

hanibal
Beiträge: 369
Registriert: Sa 3. Mär 2007, 16:03
OS, Lazarus, FPC: Winux (L 0.9.xy FPC 2.2.z)
CPU-Target: xxBit
Wohnort: Bramsche (Emsland)

Re: synapse beim arm processor

Beitrag von hanibal »

verstehe ich auch nicht, aber es gibt debian ja auch für arm UND für armel.

aber bis jetzt scheints zu funktionieren, ist noch am compilieren, so gut isses aber noch nie gelaufen


da steht jetzt auch

Code: Alles auswählen

Free Pascal Compiler version 2.3.1 [2008/11/29] for arm
Copyright (c) 1993-2008 by Florian Klaempfl
Target OS: Linux for ARMEL

Benutzeravatar
af0815
Lazarusforum e. V.
Beiträge: 6827
Registriert: So 7. Jan 2007, 10:20
OS, Lazarus, FPC: FPC fixes Lazarus fixes per fpcupdeluxe (win,linux,raspi)
CPU-Target: 32Bit (64Bit)
Wohnort: Burgenland
Kontaktdaten:

Re: synapse beim arm processor

Beitrag von af0815 »

hanibal hat geschrieben:verstehe ich auch nicht, aber es gibt debian ja auch für arm UND für armel.
Soweit ich es bis jetzt verstanden habe, gibt es verschiedensten ARM Versionen. Deshalb auch die Unterscheidung ARM und ARMEL. Ich hänge mit ähnlichen Problemen beim Openmoko (armel, soft floating point und eabi).
Blöd kann man ruhig sein, nur zu Helfen muss man sich wissen (oder nachsehen in LazInfos/LazSnippets).

hanibal
Beiträge: 369
Registriert: Sa 3. Mär 2007, 16:03
OS, Lazarus, FPC: Winux (L 0.9.xy FPC 2.2.z)
CPU-Target: xxBit
Wohnort: Bramsche (Emsland)

Re: synapse beim arm processor

Beitrag von hanibal »

ich werde nacher, falls das alles funktioniert hat (is gerade am packages compilieren), eine kleine tutorial schreiben, wie ich das genau gemacht habe, mit dem compiler anbei.
ich hoffe das dier das beim openmoko weiterhelfen kann.

hanibal
Beiträge: 369
Registriert: Sa 3. Mär 2007, 16:03
OS, Lazarus, FPC: Winux (L 0.9.xy FPC 2.2.z)
CPU-Target: xxBit
Wohnort: Bramsche (Emsland)

Re: synapse beim arm processor

Beitrag von hanibal »

das kompilieren klappt jetz auch, nur funktioniert synapse nicht. als fehlermeldung nach dem bind kommt folgendes (in errodesc) :

Other Winsock error (38)

woran kann das liegen, funktioniert synapse überhaubt bei arm?

mschnell
Beiträge: 3444
Registriert: Mo 11. Sep 2006, 10:24
OS, Lazarus, FPC: svn (Window32, Linux x64, Linux ARM (QNAP) (cross+nativ)
CPU-Target: X32 / X64 / ARMv5
Wohnort: Krefeld

Re: synapse beim arm processor

Beitrag von mschnell »

Geht "Hallo World" ?

Kannst Du "von Hand" auf einen Stream zugreifen (Datei, Pipe, ...)

In Linux funktionieren IP-Sockets genau wie Dateien. Kannst Du "von Hand" mit über einen IP-Socket mit Telnet kommunizieren ?

-Michael

hanibal
Beiträge: 369
Registriert: Sa 3. Mär 2007, 16:03
OS, Lazarus, FPC: Winux (L 0.9.xy FPC 2.2.z)
CPU-Target: xxBit
Wohnort: Bramsche (Emsland)

Re: synapse beim arm processor

Beitrag von hanibal »

hello world geht, und nein, ich kann nicht per telnet komunizieren. ich kann mit einem portscanner noch nichtmal eine änderung erkennen, und habe schon getestet das prog als root auszuführen. und der port ist auch über 1000.

Antworten