[Pvfs2-cvs] commit by robl in pvfs2-1/doc: pvfs2-faq.tex

CVS commit program cvs at parl.clemson.edu
Thu Oct 26 14:31:05 EDT 2006


Update of /projects/cvsroot/pvfs2-1/doc
In directory parlweb1:/tmp/cvs-serv32257/doc

Modified Files:
	pvfs2-faq.tex 
Log Message:
add a section about how to fix undefined symbols and how to use pvfs2-config


Index: pvfs2-faq.tex
===================================================================
RCS file: /projects/cvsroot/pvfs2-1/doc/pvfs2-faq.tex,v
diff -u -w -p -u -r1.50 -r1.51
--- pvfs2-faq.tex	23 Oct 2006 19:06:55 -0000	1.50
+++ pvfs2-faq.tex	26 Oct 2006 18:31:04 -0000	1.51
@@ -628,6 +628,23 @@ inlined kernel routines.  PVFS2-1.3.2 or
 \texttt{--disable-kernel-aio}.  Passing this option to configure results in a pvfs2
 kernel module that uses only exported symbols.  
 
+\subsection{Everything built fine, but when I try to compile programs that use PVFS, I get undefined references}
+\label{sec:undefined_references}
+
+The \texttt{libpvfs2} library requires a few additional libraries.  Usually
+"-lpthread -lcrypto -lssl" are required.  Further, Myrinet and Infiniband have
+their own libraries.  If you do not link the required libraries, you will
+probably get errors such as \texttt{undefined reference to `BIO\_f\_base64'}.
+
+The easiest and most portable way to ensure that you link in all required
+libraries when you link \texttt{libpvfs2} is to use the \texttt{pvfs2-config}
+utility.  \texttt{pvfs2-config --libs} will give you the full set of linker
+flags needed.  Here's an example of how one might use this tool:
+\begin{verbatim}
+$ gcc -c $(pvfs2-config --cflags) example.c 
+$ gcc example.o -o example $(pvfs2-config --libs) 
+\end{verbatim}
+
 \subsection{Can we run the Apache webserver to serve files off a PVFS2 volume?}
 
 Sure you can! However, we recommend that you turn off the EnableSendfile option in



More information about the Pvfs2-cvs mailing list