Daniel Zech: kann mir jemand ein C++/CGI-Script kompilieren?

Hi zusammen.

Noch bis vor kurzem war ich auf der Suche nach einem CGI-Script für einen bestimmten Zweck. Jetzt habe ich das perfekte gefunden, nur habe ich leider nur den C++-Quellcode gefunden.

Deshalb suche ich jemanden, der mir das Teil zum gebrauchsfertigen Zustand für einen Unix-Webserver kompiliert.

Wäre toll, wenn mir jemand diesen Gefallen tun könnte!

Bye,
Daniel Zech.

  1. Noch bis vor kurzem war ich auf der Suche nach einem CGI-Script für einen bestimmten Zweck. Jetzt habe ich das perfekte gefunden, nur habe ich leider nur den C++-Quellcode gefunden.
    Deshalb suche ich jemanden, der mir das Teil zum gebrauchsfertigen Zustand für einen Unix-Webserver kompiliert.
    Wäre toll, wenn mir jemand diesen Gefallen tun könnte!

    Wenn Du eine Hoffnung haben willst, daß Dir jemand helfen kann, dann gib doch mal an, für welche Version von welchem UNIX Du die Übersetzung haben willst. (Der Webserver spielt dabei keine Rolle, aber Binärcode von C++-Programmen sieht auf jeder UNIX-Kiste anders aus, manchmal sogar abhängig von der Betriebssystemversion.)

    Ist bei Deinem C++-Programm vielleicht eine bestimmte Version an C++-Compiler angegeben, die zur Übersetzung mindestens erforderlich ist?

    1. Ist bei Deinem C++-Programm vielleicht eine bestimmte Version an C++-Compiler angegeben, die zur Übersetzung mindestens erforderlich ist?

      Huch, das war zugegeben wirklich dumm von mir. Laut Autor braucht man zur Kompilierung auf einem Unix-System folgendes:

      "gcc 2.7.1 or later and libg++ 2.7.1 or later"

      Das System selbst sollte sein:

      "Unix (Free BSD, Open BSD, Linux, Solaris, Irix & other) with Apache Web Server"

      Da ich mich mit Unix leider so gut wie gar nicht auskenne, hoffe ich, daß diese Angabe reicht.

      Bitte weiterhin um Hilfe.

      Danke nochmals,
      Daniel Zech

      1. »

        "gcc 2.7.1 or later and libg++ 2.7.1 or later"

        Das System selbst sollte sein:

        "Unix (Free BSD, Open BSD, Linux, Solaris, Irix & other) with Apache Web Server"

        Hi Daniel,

        Du kannst es mir mal schicken, ich hab Linux, da sollte es eigentlich funktionieren.Aber Debuggen tue ich es bestimmt nicht, wenn es nicht geht *g*.
        Ich bin mir aber nicht so sicher, dass es auch wirklich auf dem Server läuft wenn es unter linux kompiliert wird, aber einen Versuch wäre es wert.

        Gruss MArko

        1. Du kannst es mir mal schicken, ich hab Linux, da sollte es eigentlich funktionieren.Aber Debuggen tue ich es bestimmt nicht, wenn es nicht geht *g*.
          Ich bin mir aber nicht so sicher, dass es auch wirklich auf dem Server läuft wenn es unter linux kompiliert wird, aber einen Versuch wäre es wert.

          Ich glaube, das rumprobieren kannst Du dir sparen.

          Ich bezweifle mal ganz stark, dass ein Programm, welches für Linux/Intel compiliert wurde, unter SGI/IRIX, bzw. SUN/Solaris läuft.

          Schließlich muss ja der Prozessor das Programm abarbeiten, weshalb die Exe eigentlich nur auf diesem Prozessor laufen wird (evtl. gibt es aber einen Emulator).

          Maxboy

          1. Schließlich muss ja der Prozessor das Programm abarbeiten, weshalb die Exe eigentlich nur auf diesem Prozessor laufen wird (evtl. gibt es aber einen Emulator).

            Er kann doch beim Compilieren ein anderes Target als die Maschine auf der
            er compiliert angeben. Also: Auf welcher Maschine soll das Programm laufen?

            CYa
            GONZO

            1. Also Danke erstmal, daß mir überhaupt geholfen wird! Find' ich super von Euch!

              Er kann doch beim Compilieren ein anderes Target als die Maschine auf der
              er compiliert angeben. Also: Auf welcher Maschine soll das Programm laufen?

              Oh je, und das alles, wo ich doch echt keine Ahnung von Unix und so habe... Also ich weiß nicht, was für ein Rechner der Webserver ist. Gibt es da vielleicht eine Art Standard-Typ, den die meisten haben? Vielleicht sollte man den mal probieren?

              Bitte weiterhin um Hilfe!

              1. Oh je, und das alles, wo ich doch echt keine Ahnung von Unix und so habe... Also ich weiß nicht, was für ein Rechner der Webserver ist. Gibt es da vielleicht eine Art Standard-Typ, den die meisten haben? Vielleicht sollte man den mal probieren?

                Es gibt da so einige Webserver. Verbreitet sind vor allem Intel (WinNT, Linux), SUN (SunOS, Solaris) und SGI (IRIX).

                Hinzu kommt noch BSD, welches es für sehr viele Prozessoren gibt.

                Man müsste also sehr lange probieren.

                Schaue einmal bei Deinem Provider auf die Homepage. Dort müsste eigentlich stehen, welche Technik er nutzt.

                Wenn Du dort nichts findest, poste einfach den Namen des Providers. Vielleicht weiss ja hier jemand, welche Technik er benutzt.

                Maxboy

                1. Oh je, und das alles, wo ich doch echt keine Ahnung von Unix und so habe... Also ich weiß nicht, was für ein Rechner der Webserver ist. Gibt es da vielleicht eine Art Standard-Typ, den die meisten haben? Vielleicht sollte man den mal probieren?

                  Nein, es gibt nur lauter verschiedene Hardwarehersteller mit lauter verschiedenen Betriebssystemen. Bei compilierten Programmen ist das leider wirklich wichtig.
                  (Deshalb ist das plattformunabhängige Perl, wo genau dieses Problem nicht existiert, ja so beliebt für CGI-Anwendungen ...)

                  Aber in allen mir bekannten UNIXen gibt es einen einheitlichen Befehl, um diese Plattformangaben abzufragen: "uname".
                  Wenn Du telnet-Zugang zum Webserver hast (ftp hast Du ja mindestens, sonst könntest Du das kompilierte Skript nicht mal hochladen), kannst Du Dir mal mit "uname -?" anzeigen lassen, was das "uname"-Kommando bei Dir für Parameter kennt.
                  Ich würde mal raten, daß "uname -a" relativ sinnvolle Informationen liefert - probier das doch mal via telnet aus.
                  Jedenfalls wäre das Ergebnis wohl gut genug, daß jemand unter Linux mit Angabe der Zielplattform in der Tat Dein Skript compilieren könnte - die Angabe für den GNU-C++-Compiler war ausreichend.

                  1. Ich würde mal raten, daß "uname -a" relativ sinnvolle Informationen liefert - probier das doch mal via telnet aus.

                    Gut, das werde ich machen, Ergebnis kommt dann hier. Allerdings gibt es da noch eine weitere (ja, noch eine!) Schwierigkeit. Das Script soll auf einem anderen Server laufen, als der, auf dem die Dateioperation ausgeführt werden soll. Jetzt frage ich mich, ob das überhaupt möglih ist, oder ob da nicht bestimmte Sicherheitsverletzungen auftreten.

                    Und wenn es möglich ist, für welchen der Servertypen muß das Script kompiliert sein?

                    1. Allerdings gibt es da noch eine weitere (ja, noch eine!) Schwierigkeit. Das Script soll auf einem anderen Server laufen, als der, auf dem die Dateioperation ausgeführt werden soll.

                      Jetzt hast Du mich endgültig verloren. Was ist "die Dateioperation"?
                      Meinst Du: Das Skript soll über einen Webserver auf dem Rechner A aufgerufen werden, aber eine Datei auf dem Rechner B verändern? Theoretisch geht das, wenn das Skript auf A ein anderes Programm / Skript / Irgendwas auf B aufruft /(remote shell oder was auch immer) - nicht daß ich das im allgemeinen Falle für besonders sinnvoll halten würde. Aber es könnte sein, daß Du beispielsweise einen Datenbankserver hast und auf diesem keinen Webserver installieren darfst, aber über einen solchen auf die Daten zugreifen willst - dann würde man so etwas auch mit zwei getrennten Kisten machen können.

                      Jetzt frage ich mich, ob das überhaupt möglich ist, oder ob da nicht bestimmte Sicherheitsverletzungen auftreten.

                      Dazu kann ich erst etwas Endgültiges sagen, wenn ich den Punkt oben verstanden habe. "Möglich" ist fast alles, wenn die richtigen Leute die richtigen Berechtigungen besitzen. Ob das in Deiner Konfiguration der Fall ist, wird man sehen.
                      Das Skript auf A müßte wissen, wie B heißt, über welche Benutzerkennung mit welchem Passwort es sich auf B anmelden darf, welches Programm es auf B ausführen soll usw. - aber "gehen" tut es.

                      Und wenn es möglich ist, für welchen der Servertypen muß das Script kompiliert sein?

                      Für den, auf dem es laufen soll - deshalb hast Du mich ja verwirrt. Denn Deine Aussagen klingen plötzlich so, als ob Du von zwei Teil-Skripten auf verschiedenen Rechnern schreibst.