Logo AND Algorithmique Numérique Distribuée

Public GIT Repository
Get ready to RTFM fred about static linking
[simgrid.git] / doc / FAQ.doc
index d66e413..396581e 100644 (file)
@@ -930,8 +930,8 @@ links 1 and 2). It simply means that the routing on the graph is not
 trivial, and that data do not following the shortest path in number of
 hops on this graph. Another way to say it is that there is no implicit
 in these routing descriptions. The system will only use the routes you
-declare (such as <route src="A" dst="C"><route_element
-name="3"/></route>), without trying to build new routes by aggregating
+declare (such as &lt;route src="A" dst="C"&gt;&lt;route_element
+name="3"/&gt;&lt;/route&gt;), without trying to build new routes by aggregating
 the provided ones.
   
 You are also free to declare platform where the routing is not
@@ -1020,9 +1020,9 @@ An example of this trick is distributed in the file examples/msg/msg_test_surfxm
 
 \section faq_troubleshooting Troubleshooting
 
-\subsection faq_trouble_compil Compilation and installation problems
+\subsection faq_trouble_lib_compil SimGrid compilation and installation problems
 
-\subsubsection faq_trouble_config ./configure fails!
+\subsubsection faq_trouble_lib_config ./configure fails!
 
 We now only one reason for the configure to fail:
 
@@ -1062,7 +1062,7 @@ machine:
    that we can check it out. Make sure to read \ref faq_bugrepport
    before you do so.
 
-\subsection faq_trouble_errors Understanding error messages
+\subsection faq_trouble_compil User code compilation problems
 
 \subsubsection faq_trouble_err_logcat "gcc: _simgrid_this_log_category_does_not_exist__??? undeclared (first use in this function)"
 
@@ -1071,6 +1071,20 @@ any default category in this file. You should refer to \ref XBT_log
 for all the details, but you simply forgot to call one of
 XBT_LOG_NEW_DEFAULT_CATEGORY() or XBT_LOG_NEW_DEFAULT_SUBCATEGORY().
 
+\subsubsection faq_trouble_pthreadstatic "gcc: undefinded reference to pthread_key_create"
+
+This indicates that one of the library SimGrid depends on (libpthread
+here) was missing on the linking command line. Dependencies of
+libsimgrid are expressed directly in the dynamic library, so it's
+quite impossible that you see this message when doing dynamic linking. 
+
+If you compile your code statically (and if you use a pthread version
+of SimGrid -- see \ref faq_more_processes), you must absolutely
+specify <tt>-lpthread</tt> on the linker command line. As usual, this should
+come after <tt>-lsimgrid</tt> on this command line.
+
+\subsection faq_trouble_errors Runtime error messages
+
 \subsubsection faq_flexml_limit "surf_parse_lex: Assertion `next limit' failed."
 
 This is because your platform file is too big for the parser.