Für WINCE kompilieren

Für Fragen von Einsteigern und Programmieranfängern...
Antworten
lazarus_chris
Beiträge: 12
Registriert: Fr 13. Nov 2009, 18:35

Für WINCE kompilieren

Beitrag von lazarus_chris »

Hallo!

Ich bin Frischling im Lazarusbereich und möchte eine kleine Applikation für WIN CE erstellen!

Ich habe "lazarus-0.9.28.2-fpc-2.2.4-win32.exe" und danach "Lazarus-0.9.28.2-fpc-2.2.4-cross-arm-wince-win32.exe" installiert!


Von Microsft den "Microsoft Windows CE 5.0 Emulator" heruntergeladen und installiert.

Dann habe ich Lazarus aufgerufen ein neues Projekt erstellt (Projekt -> Neues Projekt -> Anwendung) gespeichert und gemäß folgender Anleitung Lazarus und den Compiler eingerichtet:
http://www.vhpd.de/allgemein/tutorial-m ... rammieren#

Das waren die folgenden Schritte:

-> Einstellungen -> Einstellungen -> Compilerdateiname muss auf die !fpc\2.2.4\bin\i386-win32\ppcrossarm.exe" geändert.
-> Projekt -> Compilereinstellungen (Reiter Pfade) habe ich bei LCL-Schnittstelle "wince(beta)" ausgewählt
-> Projekt -> Compilereinstellungen (Reiter Quelltext) habe ich bei Zielbetriebsystem "WinCE" ausgewählt
-> Projekt -> Compilereinstellungen (Reiter Quelltext) habe ich bei Ziel-CPU "arm" ausgewählt

Nur Schritt 2 der Anleitung konnte ich nich machen darin hieß es:
"Die Datei “wincemenures.or” muss von “lazarus/lcl/interfaces/wince” nach “lazarus/lcl/units/arm-wince” kopiert werden." DIE DATEI GIBT ES NICHT IM LAZARUS ORDNER!

Dann habe ich noch Werkzeuge -> Lazarus kompilieren u. einrichten aufgerufen und dort LCL-kompilieren ausgewählt und dann kompiliert!

Danach war auch der Fehler bei den Compilereinstellungen weg, das der TEst bemängelt hat das der Unit-Search-PFad nicht gefunden wird!

So dann habe ich dieses Defaultformular ohne irgendetwas zu ändern kompiliert.

Der Compiler meldet "projekt (projekt1) erfolgreich gebaut ;-)
Der Debugger gibt die Meldung aus Failed to laof file: D:\projekt1.exe: not in executable formart. File format not recognized

Die projekt1.exe habe ich dann auf den EMulator kopiert und dort versucht auszuführen dort bekomme ich folgende Meldung:
"project1" is not a vaild Windowd CE application."


Was mache ich falsch bzw. was muss ich noch machen, das zunächst nur einmal das Formular auf dem WInCE angezeigt wird??

Hoffe Ihr könnt mir helfen

Danke und Grüße

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

Re: Für WINCE kompilieren

Beitrag von theo »

Ich verstehe davon überhaupt nix, aber hast du mal gegoogelt?

http://forum.lazarus.freepascal.org/ind ... pic=6136.0
http://www.lazarus.freepascal.org/index ... pic=4382.0

Also hier sind zwei Varianten:
1. Dein Gerät hat gar keine Arm Architektur
2. aygshell.dll oder sowas fehlt.

Wie gesagt, ich hab das noch nie gemacht.

Poelser
Beiträge: 55
Registriert: Do 6. Nov 2008, 14:16
OS, Lazarus, FPC: Windows Vista (L 1.0.6 FPC 2.6.0)
CPU-Target: Intel 32 Bit/Arm

Re: Für WINCE kompilieren

Beitrag von Poelser »

lazarus_chris hat geschrieben:Der Compiler meldet "projekt (projekt1) erfolgreich gebaut ;-)
Der Debugger gibt die Meldung aus Failed to laof file: D:\projekt1.exe: not in executable formart. File format not recognized

Sieht aus, als wenn du compiliert und gestartet hast (z.B. F9). Dann ist diese Meldung richtig, denn du wolltest das Executable ja für ein anderes Zielsystem haben.
lazarus_chris hat geschrieben:Die projekt1.exe habe ich dann auf den EMulator kopiert und dort versucht auszuführen dort bekomme ich folgende Meldung:
"project1" is not a vaild Windowd CE application."

Das sieht jetzt aber so aus, dass du die Einstellungen für das Zielsystem nicht korrekt gemacht hast. Ich habe mir eine Datei gemacht, die ich bei den Compilereinstellungen lade, wenn ich für WinCE compiliere:

Code: Alles auswählen

<?xml version="1.0"?>
<CONFIG>
  <CompilerOptions>
    <Version Value="8"/>
    <PathDelim Value="\"/>
    <SearchPaths>
      <LCLWidgetType Value="wince"/>
      <Libraries Value="$(ProjOutDir)\"/>
    </SearchPaths>
    <Parsing>
      <SyntaxOptions>
        <CStyleOperator Value="False"/>
      </SyntaxOptions>
    </Parsing>
    <CodeGeneration>
      <TargetCPU Value="arm"/>
      <TargetOS Value="WinCE"/>
      <SmartLinkUnit Value="True"/>
      <Optimizations>
        <VariablesInRegisters Value="True"/>
        <OptimizationLevel Value="3"/>
      </Optimizations>
    </CodeGeneration>
    <Linking>
      <Debugging>
        <UseLineInfoUnit Value="False"/>
        <StripSymbols Value="True"/>
      </Debugging>
      <Options>
        <Win32>
          <GraphicApplication Value="True"/>
        </Win32>
      </Options>
    </Linking>
    <Other>
      <CompilerPath Value="$(CompPath)"/>
    </Other>
  </CompilerOptions>
</CONFIG>

Damit habe ich alle Einstellungen auf einen Schlag gemacht. Analog dazu hab' ich eine Datei für das Umschalten auf Win32.

CU, der Poelser

lazarus_chris
Beiträge: 12
Registriert: Fr 13. Nov 2009, 18:35

Re: Für WINCE kompilieren

Beitrag von lazarus_chris »

hi!

dankeschön
ich habe es nun nach langem versuchen zum laufen gebracht und zwar habe ich ein wince emulator und ein windows mobile emulator auf zweiterem läuft es!

grüße und danke

Poelser
Beiträge: 55
Registriert: Do 6. Nov 2008, 14:16
OS, Lazarus, FPC: Windows Vista (L 1.0.6 FPC 2.6.0)
CPU-Target: Intel 32 Bit/Arm

Re: Für WINCE kompilieren

Beitrag von Poelser »

lazarus_chris hat geschrieben:ich habe es nun nach langem versuchen zum laufen gebracht und zwar habe ich ein wince emulator und ein windows mobile emulator auf zweiterem läuft es!

Oh, wince Emulator? Dann ist wohl das CE darauf zu alt. In irgendeinem Wiki gibt's 'ne Liste der von Lazarus unterstützen Versionen. Diese scheint dann nicht dazu zu gehören:-(

CU, der Poelser

doc_holiday
Beiträge: 2
Registriert: Mo 23. Nov 2009, 17:42

Re: Für WINCE kompilieren

Beitrag von doc_holiday »

Hallo Zusammen!

Ich habe WinCE so installiert, wie von lazarus_chris beschrieben. Nun möchte ich auch gerne die Compiler-Einstellungsdatei von Poelser einbinden. Kann mir jemand sagen, wie ich das mache?

Und dann habe ich noch eine Frage zu dem Windows CE Emulator. Auf der HP von MS steht als Voraussetzung XP SP 2. Jetzt meine ich, mir hat vor einiger Zeit mal jemand erzählt, dass der Emulator nicht unter XP SP3 läuft und bei einer Installation von des Emulators dann Windows überhaupt keinen Pieps mehr macht und eine komplette Neuinstallation von Windows erforderlich wird. Habt Ihr hier Erfahrungen?

Vielen Dank im Voraus.

Wolfgang
"

Poelser
Beiträge: 55
Registriert: Do 6. Nov 2008, 14:16
OS, Lazarus, FPC: Windows Vista (L 1.0.6 FPC 2.6.0)
CPU-Target: Intel 32 Bit/Arm

Re: Für WINCE kompilieren

Beitrag von Poelser »

doc_holiday hat geschrieben:Ich habe WinCE so installiert, wie von lazarus_chris beschrieben. Nun möchte ich auch gerne die Compiler-Einstellungsdatei von Poelser einbinden. Kann mir jemand sagen, wie ich das mache?

Projekt->Compilereinstellungen->Button Laden/Speichern (bei meiner Lazarus-Version hat der Button 3 Punkte [...])
doc_holiday hat geschrieben:Jetzt meine ich, mir hat vor einiger Zeit mal jemand erzählt, dass der Emulator nicht unter XP SP3 läuft und bei einer Installation von des Emulators dann Windows überhaupt keinen Pieps mehr macht und eine komplette Neuinstallation von Windows erforderlich wird. Habt Ihr hier Erfahrungen?

Blödfug das ganze 8). Natürlich läuft das, hat gerade ein Kollege aus unserem Support installiert. Dieser jemand hatte bestimmt noch irgendwas anderes verbaselt :wink:

CU, der Poelser

doc_holiday
Beiträge: 2
Registriert: Mo 23. Nov 2009, 17:42

Re: Für WINCE kompilieren

Beitrag von doc_holiday »

danke, werde es am WE ausprobieren ;-)

Antworten