Sie sind nicht angemeldet.

Lieber Besucher, herzlich willkommen bei: GEOS-InfoBase-Forum. Falls dies Ihr erster Besuch auf dieser Seite ist, lesen Sie sich bitte die Hilfe durch. Dort wird Ihnen die Bedienung dieser Seite näher erläutert. Darüber hinaus sollten Sie sich registrieren, um alle Funktionen dieser Seite nutzen zu können. Benutzen Sie das Registrierungsformular, um sich zu registrieren oder informieren Sie sich ausführlich über den Registrierungsvorgang. Falls Sie sich bereits zu einem früheren Zeitpunkt registriert haben, können Sie sich hier anmelden.

1

Dienstag, 15. Juni 2021, 00:09

Multilaunch

Ich möchte eine Application multilaunchable machen.
Dazu nehme ich aus der gp-Datei zunächst den Eintrag single heraus.
Dann ersetze ich in der goc-Datei alle Methodenaufrufe z.B. @call objekt::MSG_IRGENDWAS durch @call GeodeGetOptrNS(objekt)::MSG_IRGENDWAS. So wird es in der FAQ beschrieben. Leider bleiben die Fehlermeldungen von pmake, die ich ohne GeodeGetOptrNS bekommen habe, dieselben. Was mache ich falsch?

Wilfried

2

Dienstag, 15. Juni 2021, 08:24

Hallo Wilfried,
das kommt jetzt auf die Fehlermeldung an. Poste mal, plus zugehörigen Code. Nach dem, was er mir anzeigt würde ich denken, dass die Resource mit den Objekten noch irgendwie "umdeklariert" werden muss, evt mit einem Flag wie "sharable" oder "read-only" (aus dem Kopf!). Ich würde an den UI-Code oder an die GP GP-Datei denken.

Gruß
Rainer
Es gibt 10 Arten von Menschen - die einen wissen was binär ist, die anderen nicht.

3

Dienstag, 15. Juni 2021, 17:23

Die Fehlermeldungen sehen exakt so aus wie in diesem Beitrag zur FQA:

Error Bitmap.GOC 73: Error handle relocation from shared/read-only to
unshared/writable segment INTERFACE
Error Bitmap.GOC 73: Error geode cannot be multi-launchable

It is becuase you don't have the "single" flag set in the "type" line
of your .gp file. The type line should look something like this:
type appl, process, single

You will generally want your application to be single launchable,
especially on smartphones and PDA devices. If you are writing an
application that you do want to make multi-launchable (that is,
more than one instance of the application can be launched
concurrently), then you will need to use GeodeGetOptrNS on any
static optrs in your source code. Here is an example of using
that:
@send GeodeGetOptrNS(@MyObject)::MSG_META_DUMMY();

4

Mittwoch, 16. Juni 2021, 17:46

Ich habe mal Hello2 versucht, multilaunchable zu machen. Zuerst den single Eintrag entfernt und kompiliert. Die angemahnten Methodenaufrufe dann wie oben beschrieben mit GeodeGetOptrNS(@object) ergänzt. Pmake hat daraufhin keine Fehlermeldung zurückgenommen.
GeoFile ist multilaunchable. Im Grunde wird dort nach dem obigen Schema vorgegangen (allerdings nicht bei allen Methodenaufrufen, Hängt wohl von der Art der Objekte ab).
Ein Rätsel...

5

Donnerstag, 17. Juni 2021, 07:57

Hast du zwischnendurch mal clean, mkmf, pmake depend aufgerufen?
Rainer
Es gibt 10 Arten von Menschen - die einen wissen was binär ist, die anderen nicht.

6

Donnerstag, 17. Juni 2021, 09:55

Aber Rainer!
Das war natürlich das Erste, was ich probiert habe:-).

7

Donnerstag, 17. Juni 2021, 21:55

Tschuldigung. ;-)
Es gibt 10 Arten von Menschen - die einen wissen was binär ist, die anderen nicht.

8

Donnerstag, 17. Juni 2021, 22:27

Hallo Wilfried,
schön von Dir mit GEOS-Fragen hier zu lesen :-)
Bitte beachte
LINKFLAGS += -r
im local.mk des GeoFile.
Viele Grüße,

Falk
blueway.Softworks

Dieser Beitrag wurde bereits 1 mal editiert, zuletzt von »frehwagen« (17. Juni 2021, 23:38)


9

Freitag, 18. Juni 2021, 10:42

Das war der fehlende Baustein :P

Danke Falk!

Thema bewerten