<?xml version="1.0" encoding="UTF-8"?><rss xmlns:dc="http://purl.org/dc/elements/1.1/" xmlns:content="http://purl.org/rss/1.0/modules/content/" xmlns:atom="http://www.w3.org/2005/Atom" version="2.0"><channel><title><![CDATA[Compilerfehler - undefined reference to]]></title><description><![CDATA[<p>Hallo,</p>
<p>beim compilieren meines Programms erhalte ich für mich einen unerklärlichen Compilerfehler.</p>
<p>Hier erstmal ein Codeausschnitt:</p>
<p>Header</p>
<pre><code class="language-cpp">#include &quot;DataStreamHandler.h&quot;
#include &quot;MeasureHandler.h&quot;

#include &lt;boost/thread.hpp&gt;

namespace std {

class Worker {
public:
	Worker(DataStreamHandler&amp; dsh, unsigned channels);
	virtual ~Worker();
	void doWork();
	void init();
	void kill();

private:
	DataStreamHandler dsh;
	volatile bool stoprequested;
	bool dead;

	DataStorage *data;   

	MeasureHandler *mh;
	unsigned int channles;
	boost::thread thread;

};

}
</code></pre>
<p>Source:</p>
<pre><code class="language-cpp">Worker::Worker(DataStreamHandler&amp; dsh, unsigned channels) : stoprequested(false){
.
.
.
}
</code></pre>
<pre><code>**** Build of configuration Analyzer_Server for project Analyzer_Server ****

make all 
Building file: ../src/Analyzer_Server.cpp
Invoking: GCC C++ Compiler
g++ -I/usr/local/natinst/nidaqmxbase/include -I/usr/local/boost -O0 -g3 -Wall -c -fmessage-length=0 -MMD -MP -MF&quot;src/Analyzer_Server.d&quot; -MT&quot;src/Analyzer_Server.d&quot; -o  &quot;src/Analyzer_Server.o&quot; &quot;../src/Analyzer_Server.cpp&quot;
Finished building: ../src/Analyzer_Server.cpp

Building file: ../src/Model.cpp
Invoking: GCC C++ Compiler
g++ -I/usr/local/natinst/nidaqmxbase/include -I/usr/local/boost -O0 -g3 -Wall -c -fmessage-length=0 -MMD -MP -MF&quot;src/Model.d&quot; -MT&quot;src/Model.d&quot; -o  &quot;src/Model.o&quot; &quot;../src/Model.cpp&quot;
Finished building: ../src/Model.cpp

Building file: ../src/Worker.cpp
Invoking: GCC C++ Compiler
g++ -I/usr/local/natinst/nidaqmxbase/include -I/usr/local/boost -O0 -g3 -Wall -c -fmessage-length=0 -MMD -MP -MF&quot;src/Worker.d&quot; -MT&quot;src/Worker.d&quot; -o  &quot;src/Worker.o&quot; &quot;../src/Worker.cpp&quot;
Finished building: ../src/Worker.cpp

Building target: Analyzer_Server
Invoking: GCC C++ Linker
g++ -L/usr/local/boost/stage/lib -o  &quot;Analyzer_Server&quot;  ./src/Analyzer_Server.o ./src/CommunicationHandler.o ./src/Configuration.o ./src/DataBlock.o ./src/DataHandler.o ./src/DataStorage.o ./src/DataStreamHandler.o ./src/Header.o ./src/MeasureHandler.o ./src/Model.o ./src/ServerSocket.o ./src/Socket.o ./src/StringUtility.o ./src/Test.o ./src/Worker.o   -lboost_thread -lnidaqmxbase
/usr/bin/ld: warning: libstdc++.so.5, needed by /usr/local/lib/liblvrtdark.so.8.2, may conflict with libstdc++.so.6
./src/Worker.o: In function `Worker':
/home/viktor/workspace/Analyzer_Server/Analyzer_Server/../src/Worker.cpp:15: undefined reference to `std::DataStreamHandler::DataStreamHandler()'
/home/viktor/workspace/Analyzer_Server/Analyzer_Server/../src/Worker.cpp:15: undefined reference to `std::DataStreamHandler::DataStreamHandler()'
collect2: ld gab 1 als Ende-Status zurück
make: *** [Analyzer_Server] Fehler 1
</code></pre>
<p>Wird die Deklaration der Klassenattribute &quot;dsh&quot; in Zeile 17 auskommentiert, tritt der Fehler nicht mehr auf.</p>
<p>Jemand eine Idee wie der Fehler zu Stande kommt?</p>
<p>Gruß<br />
Viktor</p>
]]></description><link>https://www.c-plusplus.net/forum/topic/267300/compilerfehler-undefined-reference-to</link><generator>RSS for Node</generator><lastBuildDate>Wed, 02 Sep 2026 14:28:00 GMT</lastBuildDate><atom:link href="https://www.c-plusplus.net/forum/topic/267300.rss" rel="self" type="application/rss+xml"/><pubDate>Fri, 21 May 2010 18:21:44 GMT</pubDate><ttl>60</ttl><item><title><![CDATA[Reply to Compilerfehler - undefined reference to on Fri, 21 May 2010 18:21:44 GMT]]></title><description><![CDATA[<p>Hallo,</p>
<p>beim compilieren meines Programms erhalte ich für mich einen unerklärlichen Compilerfehler.</p>
<p>Hier erstmal ein Codeausschnitt:</p>
<p>Header</p>
<pre><code class="language-cpp">#include &quot;DataStreamHandler.h&quot;
#include &quot;MeasureHandler.h&quot;

#include &lt;boost/thread.hpp&gt;

namespace std {

class Worker {
public:
	Worker(DataStreamHandler&amp; dsh, unsigned channels);
	virtual ~Worker();
	void doWork();
	void init();
	void kill();

private:
	DataStreamHandler dsh;
	volatile bool stoprequested;
	bool dead;

	DataStorage *data;   

	MeasureHandler *mh;
	unsigned int channles;
	boost::thread thread;

};

}
</code></pre>
<p>Source:</p>
<pre><code class="language-cpp">Worker::Worker(DataStreamHandler&amp; dsh, unsigned channels) : stoprequested(false){
.
.
.
}
</code></pre>
<pre><code>**** Build of configuration Analyzer_Server for project Analyzer_Server ****

make all 
Building file: ../src/Analyzer_Server.cpp
Invoking: GCC C++ Compiler
g++ -I/usr/local/natinst/nidaqmxbase/include -I/usr/local/boost -O0 -g3 -Wall -c -fmessage-length=0 -MMD -MP -MF&quot;src/Analyzer_Server.d&quot; -MT&quot;src/Analyzer_Server.d&quot; -o  &quot;src/Analyzer_Server.o&quot; &quot;../src/Analyzer_Server.cpp&quot;
Finished building: ../src/Analyzer_Server.cpp

Building file: ../src/Model.cpp
Invoking: GCC C++ Compiler
g++ -I/usr/local/natinst/nidaqmxbase/include -I/usr/local/boost -O0 -g3 -Wall -c -fmessage-length=0 -MMD -MP -MF&quot;src/Model.d&quot; -MT&quot;src/Model.d&quot; -o  &quot;src/Model.o&quot; &quot;../src/Model.cpp&quot;
Finished building: ../src/Model.cpp

Building file: ../src/Worker.cpp
Invoking: GCC C++ Compiler
g++ -I/usr/local/natinst/nidaqmxbase/include -I/usr/local/boost -O0 -g3 -Wall -c -fmessage-length=0 -MMD -MP -MF&quot;src/Worker.d&quot; -MT&quot;src/Worker.d&quot; -o  &quot;src/Worker.o&quot; &quot;../src/Worker.cpp&quot;
Finished building: ../src/Worker.cpp

Building target: Analyzer_Server
Invoking: GCC C++ Linker
g++ -L/usr/local/boost/stage/lib -o  &quot;Analyzer_Server&quot;  ./src/Analyzer_Server.o ./src/CommunicationHandler.o ./src/Configuration.o ./src/DataBlock.o ./src/DataHandler.o ./src/DataStorage.o ./src/DataStreamHandler.o ./src/Header.o ./src/MeasureHandler.o ./src/Model.o ./src/ServerSocket.o ./src/Socket.o ./src/StringUtility.o ./src/Test.o ./src/Worker.o   -lboost_thread -lnidaqmxbase
/usr/bin/ld: warning: libstdc++.so.5, needed by /usr/local/lib/liblvrtdark.so.8.2, may conflict with libstdc++.so.6
./src/Worker.o: In function `Worker':
/home/viktor/workspace/Analyzer_Server/Analyzer_Server/../src/Worker.cpp:15: undefined reference to `std::DataStreamHandler::DataStreamHandler()'
/home/viktor/workspace/Analyzer_Server/Analyzer_Server/../src/Worker.cpp:15: undefined reference to `std::DataStreamHandler::DataStreamHandler()'
collect2: ld gab 1 als Ende-Status zurück
make: *** [Analyzer_Server] Fehler 1
</code></pre>
<p>Wird die Deklaration der Klassenattribute &quot;dsh&quot; in Zeile 17 auskommentiert, tritt der Fehler nicht mehr auf.</p>
<p>Jemand eine Idee wie der Fehler zu Stande kommt?</p>
<p>Gruß<br />
Viktor</p>
]]></description><link>https://www.c-plusplus.net/forum/post/1900906</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/1900906</guid><dc:creator><![CDATA[exagi]]></dc:creator><pubDate>Fri, 21 May 2010 18:21:44 GMT</pubDate></item><item><title><![CDATA[Reply to Compilerfehler - undefined reference to on Fri, 21 May 2010 18:30:04 GMT]]></title><description><![CDATA[<p>Es ist vom Standard nicht erlaubt, etwas im namespace std zu definieren. Wundert mich dass der Compiler dir da nicht ins Gesicht springt.</p>
<p>Was den <strong>Linker</strong>fehler angeht den du da hast: du hast für Datastreamhandler offenbar einen Default-Konstruktor deklariert, aber nicht definiert. Im Konstruktor von Worker wird das Member default-initialisiert, und der Linker findet auch in datastreamhandler.o den Konstruktor-Code nicht.</p>
]]></description><link>https://www.c-plusplus.net/forum/post/1900907</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/1900907</guid><dc:creator><![CDATA[pumuckl]]></dc:creator><pubDate>Fri, 21 May 2010 18:30:04 GMT</pubDate></item><item><title><![CDATA[Reply to Compilerfehler - undefined reference to on Sat, 22 May 2010 08:00:25 GMT]]></title><description><![CDATA[<p>pumuckl schrieb:</p>
<blockquote>
<p>Es ist vom Standard nicht erlaubt, etwas im namespace std zu definieren.</p>
</blockquote>
<p>wäre auch gruselig, wenn jeder im Namespace std herumprogrammiert.</p>
<p>pumuckl schrieb:</p>
<blockquote>
<p>Wundert mich dass der Compiler dir da nicht ins Gesicht springt.</p>
</blockquote>
<p>ähem, bist Du sicher das der Compiler weiß, das std ein besonderer Namespace ist?</p>
<p>Also exagi, schnell einen eigenen Namespace schaffen und den fehlenden Konstruktor proggen. Die Fehlermeldung ist eindeutig.</p>
<p>tschüß<br />
Troll.Soft</p>
]]></description><link>https://www.c-plusplus.net/forum/post/1901008</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/1901008</guid><dc:creator><![CDATA[Troll.Soft]]></dc:creator><pubDate>Sat, 22 May 2010 08:00:25 GMT</pubDate></item><item><title><![CDATA[Reply to Compilerfehler - undefined reference to on Sat, 22 May 2010 09:39:33 GMT]]></title><description><![CDATA[<p>Troll.Soft schrieb:</p>
<blockquote>
<p>ähem, bist Du sicher das der Compiler weiß, das std ein besonderer Namespace ist?</p>
</blockquote>
<p>Der Compiler sollt nicht erlauben was der Standard verbietet.</p>
]]></description><link>https://www.c-plusplus.net/forum/post/1901042</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/1901042</guid><dc:creator><![CDATA[pumuckl]]></dc:creator><pubDate>Sat, 22 May 2010 09:39:33 GMT</pubDate></item><item><title><![CDATA[Reply to Compilerfehler - undefined reference to on Sat, 22 May 2010 14:07:26 GMT]]></title><description><![CDATA[<p>pumuckl schrieb:</p>
<blockquote>
<p>Der Compiler sollt nicht erlauben was der Standard verbietet.</p>
</blockquote>
<p>Kennst du einen Compiler, der das erkennt? So eine Regel dürfte relativ mühsam für Implementierer sein, da sie selber sehr viele nicht zum Standard zugehörige Bezeichner in <code>std</code> haben (bei MSVC++ z.B. mit Unterstrich und Grossbuchstaben).</p>
<p>Templates-Spezialisierungen im Namensraum <code>std</code> sind übrigens erlaubt (z.B. für <code>swap()</code> ).</p>
]]></description><link>https://www.c-plusplus.net/forum/post/1901157</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/1901157</guid><dc:creator><![CDATA[Nexus]]></dc:creator><pubDate>Sat, 22 May 2010 14:07:26 GMT</pubDate></item><item><title><![CDATA[Reply to Compilerfehler - undefined reference to on Sat, 22 May 2010 15:30:13 GMT]]></title><description><![CDATA[<p>Nexus schrieb:</p>
<blockquote>
<p>Kennst du einen Compiler, der das erkennt?</p>
</blockquote>
<p>jetzt wo ichs ausprobiert hab - nein. Ich habs nie versucht und war fälschlicherweise davon ausgegangen dass Compiler da entsprechend unterscheiden könnten...</p>
]]></description><link>https://www.c-plusplus.net/forum/post/1901192</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/1901192</guid><dc:creator><![CDATA[pumuckl]]></dc:creator><pubDate>Sat, 22 May 2010 15:30:13 GMT</pubDate></item></channel></rss>