Schachcomputer.info Community

Zurück   Schachcomputer.info Community > Schachcomputer / Chess Computer: > Die ganze Welt der Schachcomputer / World of chess computers


Antwort
 
Themen-Optionen Ansicht

  #1  
Alt 21.03.2017, 21:08
Benutzerbild von hmchess
hmchess hmchess ist offline
Mephisto MM 4 Turbo Kit
 
Registriert seit: 24.09.2007
Ort: Dortmund
Alter: 56
Land:
Beiträge: 166
Abgegebene Danke: 40
Erhielt 49 Danke für 21 Beiträge
Aktivitäten Langlebigkeit
0/20 17/20
Heute Beiträge
0/3 ssssss166
Engine für Android kompilieren mit MS Visual Studio Community?

Hallo zusammen,

etwas off-topic, aber vielleicht sind ja andere Programmierer hier, die einen Tipp für mich haben:

Ich würde meine eigene, in C programmierte, Winboard-Engine gerne für Android kompilieren, um sie auf dem Smartphone in Acid Ape einzubinden und dann in Kombination mit meinem Bluetooth DGT Brett zu verwenden.

Habe mir Microsoft Visual Studio Community Edition mit den Cross-Plattform Komponenten für Android Entwicklung heruntergeladen. Meine Sourcen lassen sich damit wie erwartet einwandfrei in ein Windows-Executable übersetzen, welches einwandfrei z.B. unter Arena läuft.

Aber jetzt kommt die Herausforderung:

Wie erstelle ich ein Executable für Android?

Ich habe es folgendermaßen versucht:

Neues Projekt -> Vorlagen -> Visual C++ -> Plattformübergreifend -> Android, und dann aus der Liste der Vorlagen "Anwendung mit nativer Aktivität (Android)" ausgewählt.

Dann dem Projekt meine Quelldateien hinzugefügt, unter Projekt -> Eigenschaften diverse Einstellungen vorgenommen, aber:

Als "Konfigurationstyp" kann ich nur "Dynamische Bibliothek (.so)" oder "Statische Bibliothek (.a)" auswählen. Keine Möglichkeit, ein Executable erstellen zu lassen. Bei Einstellung "Dynmische Bibliothek (.so)" läuft der Build-Prozess auch einwandfrei und komplett durch, aber eine dynmische Bibliothek hilft mir ja recht wenig....

Weiss jemand von Euch, wie ich im Visual Studio ein Executable für Android erstellen kann?

P.S.: Der Visual Studio Installer hat das Android NDK mit installiert, auch wenn ich es lange suchen musste (unter C:\ProgramData\Microsoft\AndroidNDK64\android-ndk-r13b), aber durch das NDK mit seinen diversen Verzeichnissen und Tools für unterschiedlichste Plattformen mit seltsamsten Namen muss man wohl auch erst einmal durchsteigen...

P.P.S.: Würde es evtl. mit Android Studio von Google einfacher gehen? Ich habe ja die Befürchtung, dass Google die Erstellung von native code executables nicht wünscht und daher im Android Studio gar nicht erst unterstützt?

Viele Grüße,

Heiko
Mit Zitat antworten
  #2  
Alt 23.03.2017, 01:59
Benutzerbild von hmchess
hmchess hmchess ist offline
Mephisto MM 4 Turbo Kit
 
Registriert seit: 24.09.2007
Ort: Dortmund
Alter: 56
Land:
Beiträge: 166
Abgegebene Danke: 40
Erhielt 49 Danke für 21 Beiträge
Aktivitäten Langlebigkeit
0/20 17/20
Heute Beiträge
0/3 ssssss166
AW: Engine für Android kompilieren mit MS Visual Studio Community?

Mit dem Microsoft Visual Studio habe ich es bisher nicht hinbekommen, aber dafür mit den guten alten Kommandozeilen Tools

Musste mich zwar erst ein wenig in das Android NDK einfuchsen und herausfinden, wie man dort Makefiles aufbaut und vor allem das Make aufruft (ndk-build), aber dann hat es schlußendlich funktioniert.

Ist aber erst einmal nur ein halber Sieg. Die Engine funktioniert jetzt in Aart Biks "Chess for Android" einwandfrei, aber leider nicht in Acid Ape. Keine Ahnung, woran das liegt, aber andere haben ja auch schon berichtet, dass sie nicht jede Engine in Acid Ape zum Laufen bekommen Wenn ich nicht selber dahinter komme, versuche ich evtl. einmal den Autor zu kontaktieren.

Viele Grüße,

Heiko
Mit Zitat antworten
  #3  
Alt 23.03.2017, 21:37
Benutzerbild von hmchess
hmchess hmchess ist offline
Mephisto MM 4 Turbo Kit
 
Registriert seit: 24.09.2007
Ort: Dortmund
Alter: 56
Land:
Beiträge: 166
Abgegebene Danke: 40
Erhielt 49 Danke für 21 Beiträge
Aktivitäten Langlebigkeit
0/20 17/20
Heute Beiträge
0/3 ssssss166
AW: Engine für Android kompilieren mit MS Visual Studio Community?

Et funzt

Der Grund, warum Acid Ape meine Engine nicht aktzeptieren wollte, war:

Meine Engine ist keine UCI-Engine, sondern eine Winboard-Engine. Sollte eigentlich kein Problem sein, da Acid Ape auch Winboard Engines unterstützt, aber was ich nicht ahnte war, dass seit meiner letzten Beschäftigung mit meiner Engine vor knapp 10 Jahren inzwischen das Winboard-Protokoll Version 2 veröffentlicht wurde. Und Acid Ape verlangt Kompatibilität zu Version 2... das ließ sich aber beheben, indem ich das Notwendigste in der Engine implementiert habe, und jetzt aktzeptiert Acid Ape auch meine Engine.

Das nächste Problem, das sich herausstellte, war, dass Acid Ape den Engines kein Eröffnungsbuch zur Verfügung stellt. Engines müssen also ihr eigenes Eröffnungsbuch mitbringen. Kann man schön testen mit der bei Acid Ape mitgelieferten Scorpio Engine, die bringt nämlich keines mit. Oder indem man z.B. Stockfish nachinstalliert. Die Engines fangen dann vom ersten Zug an zu rechnen. Macht natürlich so keinen Spaß.

Zum Glück habe ich ein eigenes Eröffnungsbuch für meine Engine, also noch schnell herausexperimentiert, wie ich dieses auf Android zum laufen bekomme, und fertig

Läuft

Viele Grüße,

Heiko
Mit Zitat antworten
Folgende 2 Benutzer sagen Danke zu hmchess für den nützlichen Beitrag:
paulwise3 (23.03.2017), Solwac (23.03.2017)
Antwort

Themen-Optionen
Ansicht

Forumregeln
Du bist nicht berechtigt, neue Themen zu erstellen.
Du bist nicht berechtigt, auf Beiträge zu antworten.
Du bist nicht berechtigt, Anhänge hochzuladen.
Du bist nicht berechtigt, deine Beiträge zu bearbeiten.

BB code ist An
Smileys sind An.
[IMG] Code ist An.
HTML-Code ist An.

Gehe zu

Ähnliche Themen
Thema Erstellt von Forum Antworten Letzter Beitrag
Frage: Ischach auf android kiteman † Technische Fragen und Probleme / Tuning 13 15.02.2016 08:26
Tipp: Android- und iOS-Stoppuhren für BT-Tests Robert Teststellungen und Elo Listen / Test positions and Elo lists 0 18.11.2013 14:24
Frage: DGT Brett + Android Mini PC ? Theo Die ganze Welt der Schachcomputer / World of chess computers 2 20.12.2012 14:29
Idee: mephisto bretter in verbindung mit android handy/touchpad mclane Technische Fragen und Probleme / Tuning 1 12.11.2011 12:16
Tipp: Tapatalk Forum App für Android blaubaer News & Infos - Forum + Wiki 3 16.06.2011 06:11


Alle Zeitangaben in WEZ +1. Es ist jetzt 13:18 Uhr.



Powered by vBulletin (Deutsch)
Copyright ©2000 - 2024, Jelsoft Enterprises Ltd.
©Schachcomputer.info