Delphi-PRAXiS
Seite 1 von 2  1 2      

Delphi-PRAXiS (https://www.delphipraxis.net/forum.php)
-   Cross-Platform-Entwicklung (https://www.delphipraxis.net/91-cross-platform-entwicklung/)
-   -   Ararat Synapse und Nextgen Compiler (https://www.delphipraxis.net/177717-ararat-synapse-und-nextgen-compiler.html)

Peter666 22. Nov 2013 17:47

Ararat Synapse und Nextgen Compiler
 
Hi,

hat jemand das Projekt eigentlich jemals unter XE4 oder 5 kompilieren können? Da sind so viele Passagen die berechtigterweise Ansistring und AnsiChar verwenden und den Typ gibts ja für den iOS und Android Compiler ja nicht mehr.

Der Hintergrund ist, dass ich ein größeres auf UDP aufbauendes Projekt portieren möchte und das halt Synapse nutzt. Ich finde auch nirgends einen neueren Trunk.

Peter

Peter666 22. Nov 2013 18:50

AW: Ararat Synapse und Nextgen Compiler
 
Liste der Anhänge anzeigen (Anzahl: 1)
Ich mache mal den Anfang mit der ssposix.inc.

Da ist noch so viel was fehlt :(

CHackbart 25. Nov 2013 09:02

AW: Ararat Synapse und Nextgen Compiler
 
Hallo,

ich habe vor geraumer Zeit angefangen das Synapse zu portieren. Da Delphi leider die AnsiString und AnsiChar Unterstützung gestrichen hat muss man auf MarshalledAString zurückgreifen. Und der Helperklasse TMarshal. In den meisten Fällen ist das aber nicht notwendig, du musst bei der Übersetzung auch nicht zwingend alle Units angehen, da verliert man schnell mal die Lust. Fange mit dem an, was du brauchst und hangel dich dann weiter. Zugegeben auf den ersten Blick erschlagen dich die ganzen Ansistring und AnsiChar Sachen, aber un den meisten Fällen reicht es da ein Char und String draus zu machen. Die paar Routinen welche zwingend mit PAnsiChar arbeiten kann man sich ja mit nem Kommentar (in SynaUtils sind das einige) markieren und dann im Zweifel umschreiben.
Bei der Androidübersetzung fehlen ein paar Dinge, entweder weil es die nicht gibt - oder aber weil man es vergessen hat:
- Posix.SysSocket.SOCK_RDM (=4) fehlt
- AF_MAX ist auch nicht definiert. Das ist Systemabhängig und laut FPC wäre das 38?

Auch mag er __s6_addr8 nicht in SET_LOOPBACK_ADDR6, obwohl das in dem record eigentlich liegt. Da kann man aber s6_addr nehmen.

Bis jetzt hab ich nur ein paar Units übersetzt und da wird es auch Fehler geben, ich teile das Ergebnis aber gerne.

CHackbart 29. Dez 2013 18:53

AW: Ararat Synapse und Nextgen Compiler
 
Schön ist es nicht geworden, aber es geht:
http://delphi.cz/post/Synapse-Android-a-iOS-hack.aspx

Ich denke mal eine saubere Lösung impliziert ein komplettes umschreiben des Codes.

Bernhard Geyer 29. Dez 2013 20:39

AW: Ararat Synapse und Nextgen Compiler
 
Ich hoffe deinen Änderungen werden auch ins SVN-Repository aufgenommen.
Ansonsten besteht die Gefahr das es Bald 1000 inkompatible halbfertige Anpassungen gibt und das Ende von Synapse damit eingeläutet wird.

CHackbart 30. Dez 2013 18:42

AW: Ararat Synapse und Nextgen Compiler
 
Naja ich kann verstehen, wenn es nicht einfließt ;) Ich brauchte das ganze für ein größeres Projekt für Android und ehrlich gesagt hab ich den Kompromiss gewählt alle Ansistrings in Strings umzuwandeln und bei den neuralgischen Punkten das ganze in Ansi zu konvertieren. Das geht zwar recht gut, aber besonders schick finde ich die Lösung auch nicht und ehrlich gesagt würde mir eine komplette Umstrukturierung auf PByte oder PByteArray eher gefallen. Das kommt aber einem kompletten Neuschreiben des Projektes gleich und da Freepascal nicht diesen "Quatsch" mit dem Entfernen von PAnsiChar und einführen eines MarshaledAString begeht lohnt sich das wohl für den Autor nicht. Schaut man sich die system.pas genauer an, wundert man sich sowieso warum das überhaupt gemacht wird.

Mavarik 30. Dez 2013 18:56

AW: Ararat Synapse und Nextgen Compiler
 
Ararat?

Ich habe angefangen das PDF Tool von Synapse umzusetzen...
Bin aber noch nicht weit...

Hat sich da sonst schon jemand dran gegeben? Ist das das Selbe?

Mavarik

creed steiger 1. Jan 2014 19:11

AW: Ararat Synapse und Nextgen Compiler
 
Nein ;)

synopse <> synapse
http://synopse.info/fossil/wiki/Synopse+OpenSource
http://synapse.ararat.cz/doku.php

CHackbart 27. Mai 2016 19:49

AW: Ararat Synapse und Nextgen Compiler
 
Ich weiß der Thread ist hornalt, aber ich wollte nur kurz darüber Informieren das ich meine über die Jahre angepasste Version der Synapse TCP Bibliothek auf https://github.com/TetrisSQC/SynapseTCP veröffentlicht habe. Das Projekt geht mittlerweile recht gut auch auf mit dem Nextgen Compiler und ist auch stabil. Konkret bedeutet dass, das wir das in mehreren Projekten seit ein paar Jahren nutzen und keine größeren Macken aufgefallen sind. Soll aber nicht heißen, da gäbe es keine.

Christian

CHackbart 9. Okt 2016 13:19

AW: Ararat Synapse und Nextgen Compiler
 
Ich habe 2 kleine Probleme in dem Code behoben. SIGSEVS werden jetzt abgefangen und führen nicht mehr zum Beenden der Anwendung unter Posix Systemen. Außerdem gab es ein Problem bei HTTP, wenn Content-Length nicht angegeben wird.

Christian


Alle Zeitangaben in WEZ +1. Es ist jetzt 02:34 Uhr.
Seite 1 von 2  1 2      

Powered by vBulletin® Copyright ©2000 - 2024, Jelsoft Enterprises Ltd.
LinkBacks Enabled by vBSEO © 2011, Crawlability, Inc.
Delphi-PRAXiS (c) 2002 - 2023 by Daniel R. Wolf, 2024 by Thomas Breitkreuz