Anzeige:
Ergebnis 1 bis 3 von 3

Thema: Java und C++ mit gcj und gcc gegeneinander Linken

  1. #1
    Registrierter Benutzer
    Registriert seit
    05.06.2006
    Beiträge
    103

    Java und C++ mit gcj und gcc gegeneinander Linken

    Hallo.

    Eine Frage: Ich hab jetzt ein wenig mit gcj rumexperimentiert, und es gefällt mir recht gut. Da mir C++ weniger gefällt, ich aber leider Teile eines Progs schon in C++ habe die ich verwenden muss...
    Ist es möglich, mit der gcc c++-quellcode gegen .o-files zu linken, die mittels gcj geschrieben wurden? Also bzw... ich will halt im gleichen Programm sowohl Java-Quellcode als auch C++-Quellcode verwenden.

    Ich will /nicht/ Bytecode einfügen... Dafür gäbe es JNI oder sowas... Nein. Ich will schon richtigen normalen Code... Halt mittels GCJ compiliert... Und dass man eben C++-Programme dagegen linken kann...

    Geht das? Also ich habs probiert, aber ich weiß nicht so recht, was ich C++ sagen soll, damit es die Klassen benutzt... Wahrscheinlich ist die Namensvergabe anders, aber es wird doch bestimmt irgendwie gehen.

  2. #2
    Registrierter Benutzer Avatar von peschmae
    Registriert seit
    14.03.2002
    Ort
    Schweizland
    Beiträge
    4.549
    Einfach so geht das nicht. So einfach ist die Welt nicht.

    Im Normalfall funktioniert die Kommunikation Java <-> C/C++ ja ausschliesslich über JNI. Falls du dich darauf beschränkst, GCC/GCJ zu verwenden gibts auch das CNI - Cygnus Native Interface. Das ist für C++ - d.h. objektorientiert und angeblich einiges besser gelungen als JNI.

    Dokus dazu liefere ich dir jetzt gerade keine, hab das noch nie benutzt - nur den Namen gehört. Googeln kannst du ja selber genau so gut (und wenn die Doku die du findest scheisse ist bin ich nicht schuld...)

    Allerdings bezweifle ich dass das Ganze den Aufwand wert ist. Besser halt C++ weiternutzen - ausser du hasst das halt wirklich so unglaublich fest

    MfG Peschmä
    The greatest trick the Devil ever pulled was convincing the world he didn't exist. -- The Usual Suspects (1995)
    Hey, I feel their pain. It's irritating as hell when people act like they have rights. The great old one (2006)

  3. #3
    Registrierter Benutzer
    Registriert seit
    05.06.2006
    Beiträge
    103
    Zitat Zitat von peschmae Beitrag anzeigen
    Einfach so geht das nicht. So einfach ist die Welt nicht.
    Warum auch immer...

    Zitat Zitat von peschmae Beitrag anzeigen
    Falls du dich darauf beschränkst, GCC/GCJ zu verwenden gibts auch das CNI - Cygnus Native Interface. Das ist für C++ - d.h. objektorientiert und angeblich einiges besser gelungen als JNI.
    Ja. Mir reicht gcc,... Wenn ich Bytecode verwenden wollte, dann wuerde ich sicher kein C++ damit verbinden - das ist eine Unsitte, wie ich meine... Schlussendlich geht man bei Byetcode ja den Kompromiss ein, etwas weniger Performance zu haben, aber dafuer mehr Kompatibilitaet...

    Zitat Zitat von peschmae Beitrag anzeigen
    Dokus dazu liefere ich dir jetzt gerade keine, hab das noch nie benutzt - nur den Namen gehört. Googeln kannst du ja selber genau so gut
    Jup. Danke. CNJ scheint genau das zu sein, was ich gesucht habe. Hab auch gleich was gefunden, was vielversprechend aussieht, naemlich das hier... Da steht alles recht gut beschrieben drin, aber ich konnts bisher nicht testen... Ich hoff mal, dass es funktioniert.

    Zitat Zitat von peschmae Beitrag anzeigen
    Allerdings bezweifle ich dass das Ganze den Aufwand wert ist. Besser halt C++ weiternutzen - ausser du hasst das halt wirklich so unglaublich fest
    Naja... Sagen wirs mal so: Ich kann in Java einfach schneller Coden als in C++... Und die meisten Sachen sind nicht sooo Zeitkritisch, dass ich mords C++-Gschmarri verwenden muesste... Ich mag Java, es ist eine schoene Sprache, und ich finde sie ehrlichgesagt schoener als C++... C++ find ich etwas ... patzig ... an einigen Stellen, andererseits gibt es Sachen, die sind mit Java grauenvoll, und gehen imho mit C++ schneller...
    Zumeist progge ich in Java... Aber ich bin gerade dabei, mir C++ beizubringen - nur, dass ich mit Java schon seit drei Jahren jetzt hin und wieder Progge (von welcher Qualitaet mein Wissen darueber ist, sei mal dahingestellt), und mit C++ erst seit nem halben Jahr.
    Wenn es eine Moeglichkeit gibt, beides zu verbinden (und die gibt es ja scheinbar), und die nicht viel zu aufwaendig ist... Dann bin ich gerne bereit, mich kurz damit zu beschoeftigen, nur, damit ich kuenftig beides verwenden kann...

    MfG Schoppenhauer

Lesezeichen

Berechtigungen

  • Neue Themen erstellen: Nein
  • Themen beantworten: Nein
  • Anhänge hochladen: Nein
  • Beiträge bearbeiten: Nein
  •