Kommt nur murks raus
-
Da stimmt etwas mit deinem Verzeichnis nicht. Wieso liegen sysinfo.h und sysinfo.cpp in unterschiedlichen Verzeichnissen?...
sysinfo.cpp:9:14: Anmerkung: Kandidat ist:
../sysinfo.h:52:8: Anmerkung: void SYSInfo::read_dev(std::vector<face>&)
-
out schrieb:
Da stimmt etwas mit deinem Verzeichnis nicht. Wieso liegen sysinfo.h und sysinfo.cpp in unterschiedlichen Verzeichnissen?...
sysinfo.cpp:9:14: Anmerkung: Kandidat ist:
../sysinfo.h:52:8: Anmerkung: void SYSInfo::read_dev(std::vector<face>&)Das ist doch wurst solange ich das richtig inculde oben? liegt halt ein Ordner vorher.
Nur ist jetzt irgendwo irgendwas nicht richtig verlinkt -.-:
libexsystem.so: undefined reference to `operator<<(std::basic_ostream<char, std::char_traits<char> >&, face const&)' libexsystem.so: undefined reference to `operator>>(std::basic_istream<char, std::char_traits<char> >&, face&)' libexsystem.so: undefined reference to `skip_line(std::basic_istream<char, std::char_traits<char> >&)' collect2: ld gab 1 als Ende-Status zurück
-
Enno schrieb:
out schrieb:
Da stimmt etwas mit deinem Verzeichnis nicht. Wieso liegen sysinfo.h und sysinfo.cpp in unterschiedlichen Verzeichnissen?...
sysinfo.cpp:9:14: Anmerkung: Kandidat ist:
../sysinfo.h:52:8: Anmerkung: void SYSInfo::read_dev(std::vector<face>&)Das ist doch wurst solange ich das richtig inculde oben? liegt halt ein Ordner vorher.
Auf jeden Fall gibt es die Funktion
SYSInfo::read_dev(std::vector<face>&)nicht. Meine Funktion hat keinen Parameter. Du hast entweder falsch kopiert oder die Verzeichnisse stimmen nicht.Enno schrieb:
Nur ist jetzt irgendwo irgendwas nicht richtig verlinkt -.-:
libexsystem.so: undefined reference to `operator<<(std::basic_ostream<char, std::char_traits<char> >&, face const&)' libexsystem.so: undefined reference to `operator>>(std::basic_istream<char, std::char_traits<char> >&, face&)' libexsystem.so: undefined reference to `skip_line(std::basic_istream<char, std::char_traits<char> >&)' collect2: ld gab 1 als Ende-Status zurückKeine Ahnung. :p
-
out schrieb:
Keine Ahnung. :p
Na komm, gib Dir mal ein bisschen Mühe.
-
out schrieb:
Enno schrieb:
out schrieb:
Da stimmt etwas mit deinem Verzeichnis nicht. Wieso liegen sysinfo.h und sysinfo.cpp in unterschiedlichen Verzeichnissen?...
sysinfo.cpp:9:14: Anmerkung: Kandidat ist:
../sysinfo.h:52:8: Anmerkung: void SYSInfo::read_dev(std::vector<face>&)Das ist doch wurst solange ich das richtig inculde oben? liegt halt ein Ordner vorher.
Auf jeden Fall gibt es die Funktion
SYSInfo::read_dev(std::vector<face>&)nicht. Meine Funktion hat keinen Parameter. Du hast entweder falsch kopiert oder die Verzeichnisse stimmen nicht.Enno schrieb:
Nur ist jetzt irgendwo irgendwas nicht richtig verlinkt -.-:
libexsystem.so: undefined reference to `operator<<(std::basic_ostream<char, std::char_traits<char> >&, face const&)' libexsystem.so: undefined reference to `operator>>(std::basic_istream<char, std::char_traits<char> >&, face&)' libexsystem.so: undefined reference to `skip_line(std::basic_istream<char, std::char_traits<char> >&)' collect2: ld gab 1 als Ende-Status zurückKeine Ahnung. :p
Tja ... ich kopiere nicht! Das mit dem Parameter ist mir auch aufgefallen! Ich lerne durch abschreiben mehr da ich Fehler mache! Wichtig!
Naja w/e jetzt NUR noch das linking Problem lösen und es dürfte laufen! ^^ :p
-
Enno schrieb:
Ich lerne durch abschreiben mehr da ich Fehler mache! Wichtig!
Genau, der Lernfortschritt ist ja auch unübersehbar ...
-
Belli schrieb:
Enno schrieb:
Ich lerne durch abschreiben mehr da ich Fehler mache! Wichtig!
Genau, der Lernfortschritt ist ja auch unübersehbar ...
jaja Hass mich ruhig
-
Enno schrieb:
Tja ... ich kopiere nicht! Das mit dem Parameter ist mir auch aufgefallen! Ich lerne durch abschreiben mehr da ich Fehler mache! Wichtig!
Naja w/e jetzt NUR noch das linking Problem lösen und es dürfte laufen! ^^ :pAchso ist das:D Der Linkerfehler kommt, wenn etwas Deklariert aber nicht Definiert ist. Musst du mal schauen.
-
Enno schrieb:
jaja Hass mich ruhig
Warum sollte ich? Ich amüsier mich hier köstlich.
-
Belli schrieb:
Enno schrieb:
jaja Hass mich ruhig
Warum sollte ich? Ich amüsier mich hier köstlich.
@Belli
Dann ist ja gut!
Du weißt wahrscheinlich genau was es ist und es ist bestimmt etwas mega dummes!Ich hab auch gar kein Plan warum. -.- Hab alle Dateien in einen Ordner gemacht hab alles eben noch mal Kopiert von dir out aber hilft nichts.
-
Wie kompilierst du denn das Zeug. Hast du eine IDE?
-
Enno schrieb:
@Belli
Dann ist ja gut!
Du weißt wahrscheinlich genau was es istNee, seit ich gemerkt habe, dass Dir hier kaum zu helfen ist, weil Dir die einfachsten Grundlagen fehlen, verfolge ich nur noch die verzweifelten Versuche eines Einzelnen, Dich irgendwie dahin zu bringen, wo Du hin willst, ohne mir Code, Problemstellungen oder so was anzusehen.
-
Hab Debian und Kompile dat ganze in der Konsole mit make.
Hab halt meine CMakelisten. Schreib halt im Editor.
Nichts mit IDE.
-
Enno schrieb:
Hab Debian und Kompile dat ganze in der Konsole mit make.
Hab halt meine CMakelisten. Schreib halt im Editor.
Nichts mit IDE.Das wundert mich aber auch nicht, dass es da irgendwo hackt. Leider habe ich weder von Linux noch von make eine Ahnung. Aber wieso machst du dir das Leben unnötig schwer? Wieso nicht einfach eine akzeptable IDE wie Code::Blocks?
-
Belli schrieb:
Nee, seit ich gemerkt habe, dass Dir hier kaum zu helfen ist, weil Dir die einfachsten Grundlagen fehlen
Grundlagen fehlen mir hast du recht. Das ich ziemlich schlecht bin weiß ich auch. Trotzdem hab ich hier schon viel gelernt. Auch wenn du mir das nicht glaubst.
-
out schrieb:
Das wundert mich aber auch nicht, dass es da irgendwo hackt. Leider habe ich weder von Linux noch von make eine Ahnung. Aber wieso machst du dir das Leben unnötig schwer? Wieso nicht einfach eine akzeptable IDE wie Code::Blocks?
Vorher gab es keine Probleme und ich soll das erstmal so lernen. Ich könnte eine nehmen aber 100% hätte ich dort den gleichen Fehler.
-
Falls es dich interessiert ... du braucht die io.h io.cpp nicht!
Einfach die aufrufe nicht in die Klasse.habs so und es läuft:
#include <iostream> #include <fstream> #include <iterator> #include <string> #include <utility> #include <vector> #include <limits> struct face{ std::string name; unsigned bytes_received; unsigned packets_received; unsigned errs_received; unsigned drop_received; unsigned fifo_received; unsigned frame_received; unsigned compressed_received; unsigned multicast_received; unsigned bytes_transmitted; unsigned packets_transmitted; unsigned errs_transmitted; unsigned drop_transmitted; unsigned fifo_transmitted; unsigned colls_transmitted; unsigned carrier_transmitted; unsigned compressed_transmitted; }; std::istream& skip_line(std::istream& in); std::istream& operator>>(std::istream& in, face& f); std::ostream& operator<<(std::ostream& out, const face& f); class SYSInfo { public: void read_dev(); void table(); unsigned getPacket(); std::vector< std::pair<std::string,unsigned> > packets_received_all(); private: std::vector<face> dev; }; #endi#include "sysinfo.h" #include <iostream> #include <fstream> #include <iterator> #include <string> #include <utility> #include <vector> #include <limits> std::istream& skip_line(std::istream& in){ return in.ignore(std::numeric_limits<std::streamsize>::max(),'\n'); } std::istream& operator>>(std::istream& in, face& f){ return in >> f.name >> f.bytes_received >> f.packets_received >> f.errs_received >> f.drop_received >> f.fifo_received >> f.frame_received >> f.compressed_received >> f. multicast_received >> f.bytes_transmitted >> f.packets_transmitted >> f.errs_transmitted >> f.drop_transmitted >> f.fifo_transmitted >> f.colls_transmitted >> f.carrier_transmitted >> f.compressed_transmitted; } std::ostream& operator<<(std::ostream& out, const face& f){ return out << f.name << "Bytes: " << f.bytes_received << " Packets: " << f.packets_received << " Errs: " << f.errs_received << " Drop: " << f.drop_received << " Fifo: " << f.fifo_received << " Frame: " << f.frame_received << " Compressed: " << f.compressed_received << " Multicast: " << f. multicast_received << " Bytes: " << f.bytes_transmitted << " Packets: " << f.packets_transmitted << " Errs: " << f.errs_transmitted << " Drop: " << f.drop_transmitted << " Fifo: " << f.fifo_transmitted << " Coll: " << f.colls_transmitted << " Carrier: " << f.carrier_transmitted << " Compressed: " << f.compressed_transmitted; } void SYSInfo::read_dev(){ std::ifstream file("/proc/net/dev"); file >> skip_line; // Überspringe erste Zeile. file >> skip_line; // Überspringe zweite Zeile. for(face f; file>>f; dev.push_back(f)); } void SYSInfo::table(){ for(std::vector<face>::iterator it=dev.begin(); it!=dev.end(); ++it) std::cout << '\n' << *it << '\n'; } unsigned SYSInfo::getPacket(){ return dev[2].packets_received; } std::vector< std::pair<std::string,unsigned> > SYSInfo::packets_received_all(){ std::vector< std::pair<std::string,unsigned> > packets_received; for(std::vector<face>::iterator it=dev.begin(); it!=dev.end(); ++it) packets_received.push_back( make_pair(it->name,it->packets_received) ); return packets_received; }