Output eines externen Programms "abfangen" und ggf. bearbeiten...
-
Nichts standardmäßiges also...

Ich benutze fast ausschließlich Gentoo (Linux) und portiere nur sehr wenige Sachen auf Windows. Gibt es da was unabhängiges? Und was hat es mit den pipes auf sich? *google gerade bemühe*//Edit:
Ich habe folgendes gefunden:
http://members.aon.at/hstraub/linux/socket++/docu/socket++_11.html
...und mir das Gentoo-Packet "Socket" emergt. Ich probier damit mal rum. Danke!//Edit 2:
Wenn ich dieses (notwendigerweise modifiziertes) Beispiel vom o.g. Link versuche zu kompilieren...
#include <iostream> #include <socket++/pipestream.h> using namespace std; int main () { char buf[128]; ipipestream p("/bin/date"); p.getline (buf, 127); cout << buf << endl; return 0; }... so erscheint folgender Fehler:
[sammy@Blueberry](~) $ g++ pipe.cpp -o pipe
/tmp/cc1ecDst.o: In functionmain': pipe.cpp:(.text+0x26): undefined reference toipipestream::ipipestream[in-charge](char const*)'
collect2: ld returned 1 exit statusKann mir das jemand erklären?

-
http://www.crystalclearsoftware.com/cgi-bin/boost_wiki/wiki.pl?BoostProcess
Vielleicht hilft das? ist aber nichts offizielles.
-
Artchi schrieb:
http://www.crystalclearsoftware.com/cgi-bin/boost_wiki/wiki.pl?BoostProcess
Vielleicht hilft das? ist aber nichts offizielles.
Das kann ich leider nicht ausprobieren, da der Download-Link nicht funktioniert...
Um auf die Pipes zurückzukommen, ich finde leider nichts weiteres was mich damit weiter bringt. Kann sich niemand vorstellen warum das Beispiel in meinem letzten Post nicht funktioniert?
-
Pigeon schrieb:
Kann sich niemand vorstellen warum das Beispiel in meinem letzten
Post nicht funktioniert?Doch kann ich.
Kurt
-
ZuK schrieb:
Pigeon schrieb:
Kann sich niemand vorstellen warum das Beispiel in meinem letzten
Post nicht funktioniert?Doch kann ich.
KurtDas freuet mich für dich und lasset mein Herz erquicken!
Nur würd ich die Lösung auch gern wissen. Verrätst dus mir? Sonst muss ich mir bei eBay ne Glaskugel bestellen...
*g*
-
Ah du willst das auch wissen. ( gefragt haste nicht ).
Würde sagen dass du die zugehörige library zu deinem programm dazulinken musst.
Kurt
-
ZuK schrieb:
Ah du willst das auch wissen. ( gefragt haste nicht ).
Würde sagen dass du die zugehörige library zu deinem programm dazulinken musst.
Kurtwie denn linken? reicht nicht #include <socket++/pipestream.h>
-
Nein reicht nicht. Die zugehörige library muss noch irgendwie ( kenn deine IDE nicht ) bei den linker-optionen ins Project.
Kurt
-
ZuK schrieb:
Nein reicht nicht. Die zugehörige library muss noch irgendwie ( kenn deine IDE nicht ) bei den linker-optionen ins Project.
Kurt:-| Meine IDE ist die Konsole... und kompiliere gcc. g++ pipe.cpp -o pipe!
-
Nehmen mir mal an die library ist eine statische lib heisst libsocket.a.
dann wärs etwag++ pipe.cpp -lsocket -o pipeeventuell ( wenn die library nicht im normalen library pfad installiert ist )
g++ pipe.cpp -L/usr/waoauchimmer/wiauchimmer -lsocket -o pipeKurt
-
ZuK schrieb:
Nehmen mir mal an die library ist eine statische lib heisst libsocket.a.
dann wärs etwag++ pipe.cpp -lsocket -o pipeeventuell ( wenn die library nicht im normalen library pfad installiert ist )
g++ pipe.cpp -L/usr/waoauchimmer/wiauchimmer -lsocket -o pipeKurt
geht mit -lsocket++ ausgezeichnet! Danke
