<DIV>Hi:</DIV>
<DIV>&nbsp;</DIV>
<DIV><FONT face=verdana>I am a newbie to the world of Boost.</FONT></DIV>
<DIV><FONT face=verdana></FONT>&nbsp;</DIV>
<DIV><FONT face=verdana>I have a problem in compiling a program.&nbsp; I do not know how to set the path to compile the attached code.</FONT></DIV>
<DIV><FONT face=verdana></FONT>&nbsp;</DIV>
<DIV><FONT face=verdana>My platform is Cygwin</FONT></DIV>
<DIV><FONT face=verdana>gcc version&nbsp;3.3.3</FONT></DIV>
<DIV><FONT face=verdana></FONT>&nbsp;</DIV>
<DIV><FONT face=verdana>The boost_1_32_0&nbsp;subdirectory resides in the Cygwin directory.</FONT></DIV>
<DIV><FONT face=verdana></FONT>&nbsp;</DIV>
<DIV>
<DIV><FONT face=verdana>I tried the following,</FONT></DIV>
<DIV><FONT face=verdana></FONT>&nbsp;</DIV>
<DIV><FONT face=verdana>g++ boost_1_32_0/boost/graph/sourcecode.cpp</FONT></DIV>
<DIV><FONT face=verdana></FONT>&nbsp;</DIV>
<DIV><FONT face=verdana>and it displays the message</FONT></DIV>
<DIV><FONT face=verdana>boost/config.hpp : No such file or directory</FONT></DIV>
<DIV><FONT face=verdana>boost/graph/graph_traits.hpp : No such file or directory<BR>boost/graph/adjacency_list.hpp : No such file or directory<BR>boost/graph/dijkstra_shortest_paths.hpp : No such file or directory</FONT></DIV>
<DIV><FONT face=verdana></FONT>&nbsp;</DIV>
<DIV><FONT face=verdana>followed by more error messages. Please refer to the attached code and help me out.</FONT></DIV>
<DIV><FONT face=Verdana></FONT>&nbsp;</DIV>
<DIV><FONT face=verdana>Thanks in advance.</FONT></DIV>
<DIV><FONT face=verdana></FONT>&nbsp;</DIV>
<DIV>
<DIV><FONT face=verdana>Sourcecode.cpp</FONT></DIV></DIV>
<DIV><FONT face=verdana>******************************************************************************</FONT></DIV>
<DIV><FONT face=verdana>#include &lt;boost/config.hpp&gt;<BR>#include &lt;iostream&gt;<BR>#include &lt;fstream&gt;<BR>#include &lt;string&gt;</FONT></DIV>
<DIV><FONT face=verdana>#include &lt;boost/graph/graph_traits.hpp&gt;<BR>#include &lt;boost/graph/adjacency_list.hpp&gt;<BR>#include &lt;boost/graph/dijkstra_shortest_paths.hpp&gt;</FONT></DIV>
<DIV><FONT face=verdana>using namespace boost;</FONT></DIV>
<DIV><FONT face=verdana>float maximum(float a[], float mx, int n){<BR>&nbsp; float max=mx;<BR>&nbsp; for(int i=0; i&lt;n; ++i){<BR>&nbsp;&nbsp;&nbsp; if(max &lt; a[i]){<BR>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; max=a[i];<BR>&nbsp;&nbsp;&nbsp; }<BR>&nbsp; }<BR>&nbsp; return max;<BR>}</FONT></DIV>
<DIV><FONT face=verdana>int main()<BR>{<BR>&nbsp; int num_nodes = 10000;&nbsp;&nbsp;&nbsp; <BR>&nbsp; int num_PPIs = 50000;&nbsp;&nbsp;&nbsp; <BR>&nbsp; char node[num_nodes][10], p1[num_PPIs][10], p2[num_PPIs][10];<BR>&nbsp; char name[num_nodes];<BR>&nbsp; float wt[num_PPIs], apl, dia, path[num_nodes];<BR>&nbsp; int i, j, l, l1, l2, mx_len=num_nodes, pl[mx_len];</FONT></DIV>
<DIV><FONT face=verdana>&nbsp; typedef adjacency_list &lt; listS, vecS, directedS,<BR>&nbsp;&nbsp;&nbsp; no_property, property &lt; edge_weight_t, float &gt; &gt; graph_t;<BR>&nbsp; typedef graph_traits &lt; graph_t &gt;::vertex_descriptor vertex_descriptor;<BR>&nbsp; typedef graph_traits &lt; graph_t &gt;::edge_descriptor edge_descriptor;<BR>&nbsp; typedef std::pair&lt;int, int&gt; Edge;</FONT></DIV>
<DIV><FONT face=verdana>&nbsp; std::ifstream INF1 ("./data/None.conversion");<BR>&nbsp; std::ifstream INF2 ("./data/None.before");<BR>&nbsp; if(!INF1){<BR>&nbsp;&nbsp;&nbsp; std::cerr &lt;&lt; "Cannot find INF1 file." &lt;&lt; std::endl;<BR>&nbsp;&nbsp;&nbsp; return EXIT_FAILURE;<BR>&nbsp; }<BR>&nbsp; if(!INF2){<BR>&nbsp;&nbsp;&nbsp; std::cerr &lt;&lt; "Cannot find INF2 file." &lt;&lt; std::endl;<BR>&nbsp;&nbsp;&nbsp; return EXIT_FAILURE;<BR>&nbsp; }<BR>&nbsp; //read data<BR>&nbsp; i=0;<BR>&nbsp; while(INF1 &gt;&gt; num_nodes &gt;&gt; node[i]){ <BR>&nbsp;&nbsp;&nbsp; ++i;<BR>&nbsp; }<BR>&nbsp; INF1.close();<BR>&nbsp; num_nodes=i;<BR>&nbsp; i=0;<BR>&nbsp; while(INF2 &gt;&gt; p1[i] &gt;&gt; p2[i] &gt;&gt; wt[i]){<BR>&nbsp;&nbsp;&nbsp; wt[i]=1.0;&nbsp;<BR>&nbsp;&nbsp;&nbsp; ++i;<BR>&nbsp; }<BR>&nbsp; INF2.close();<BR>&nbsp; num_PPIs=i;<BR>&nbsp; //<BR>&nbsp; Edge edge_array[num_PPIs];<BR>&nbsp; for(i=0; i&lt;num_PPIs; ++i){<BR>&nbsp;&nbsp;&nbsp; for(j=0; j&lt;num_nodes;
 ++j){<BR>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; if(stricmp(p1[i],node[j]) == 0){<BR>&nbsp;edge_array[i].first=j;<BR>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; }<BR>&nbsp;&nbsp;&nbsp; }<BR>&nbsp;&nbsp;&nbsp; for(j=0; j&lt;num_nodes; ++j){<BR>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; if(stricmp(p2[i],node[j]) == 0){<BR>&nbsp;edge_array[i].second=j;<BR>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; }<BR>&nbsp;&nbsp;&nbsp; }<BR>&nbsp; }<BR>&nbsp; //<BR>&nbsp; int num_arcs = sizeof(edge_array) / sizeof(Edge); <BR>&nbsp; std::cout &lt;&lt; "0&nbsp;&nbsp; None&nbsp;&nbsp; " &lt;&lt; num_PPIs &lt;&lt; "&nbsp;&nbsp; " &lt;&lt; num_nodes;<BR>&nbsp;&nbsp;&nbsp; graph_t g(edge_array, edge_array + num_arcs, wt, num_nodes);<BR>&nbsp;&nbsp;&nbsp; property_map&lt;graph_t, edge_weight_t&gt;::type weightmap = get(edge_weight, g);<BR>&nbsp;&nbsp;&nbsp; std::vector&lt;vertex_descriptor&gt; p(num_vertices(g));<BR>&nbsp;&nbsp;&nbsp; std::vector&lt;float&gt; d(num_vertices(g));<BR>&nbsp;&nbsp;&nbsp; //<BR>&nbsp;&nbsp;&nbsp;
 l1=0;<BR>&nbsp;&nbsp;&nbsp; l2=0;<BR>&nbsp;&nbsp;&nbsp; dia=0;<BR>&nbsp;&nbsp;&nbsp; for(j=1; j&lt;mx_len; ++j){<BR>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; pl[j]=0;<BR>&nbsp;&nbsp;&nbsp; }<BR>&nbsp;&nbsp;&nbsp; //<BR>&nbsp;&nbsp;&nbsp; for(int src=0; src&lt;num_nodes; ++src){<BR>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; vertex_descriptor s = vertex(src, g); <BR>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; dijkstra_shortest_paths(g, s, predecessor_map(&amp;p[0]).distance_map(&amp;d[0]));<BR>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; for(j=0; j&lt;num_nodes; ++j){<BR>&nbsp;if(j == p[j]){ //set self-looping node to zero distance<BR>&nbsp;&nbsp; d[j]=0;<BR>&nbsp;}<BR>&nbsp;if(d[j] &gt; 10000){ //set non-connecting node to zero distance<BR>&nbsp;&nbsp; d[j]=0;<BR>&nbsp;}<BR>&nbsp;path[j]=d[j];<BR>&nbsp;pl[int(d[j]+0.5)]=pl[int(d[j]+0.5)]+1;<BR>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; }<BR>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; dia=maximum(path,dia,num_nodes); <BR>&nbsp;&nbsp;&nbsp;
 }&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; <BR>&nbsp;&nbsp;&nbsp; for(l=1; l&lt;=int(dia); ++l){<BR>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; l1=l1+pl[l]*l;<BR>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; l2=l2+pl[l];<BR>&nbsp;&nbsp;&nbsp; }<BR>&nbsp;&nbsp;&nbsp; apl=float(l1)/float(l2);<BR>&nbsp;&nbsp;&nbsp; std::cout &lt;&lt; "&nbsp;&nbsp; " &lt;&lt; apl &lt;&lt; "&nbsp;&nbsp; " &lt;&lt; l1 &lt;&lt; "&nbsp;&nbsp; " &lt;&lt; l2 &lt;&lt; "&nbsp;&nbsp; " &lt;&lt; dia &lt;&lt; std::endl; <BR>&nbsp; return EXIT_SUCCESS;</FONT></DIV>
<DIV><FONT face=verdana>}</FONT></DIV>
<DIV><FONT face=verdana>**********************************************************************************</FONT></DIV>
<DIV><FONT face=verdana></FONT>&nbsp;</DIV>
<DIV><FONT face=verdana>Cheers</FONT></DIV>
<DIV><FONT face=verdana></FONT>&nbsp;</DIV>
<DIV><FONT face=verdana>Grek</FONT></DIV>
<DIV>&nbsp;</DIV>
<DIV>&nbsp;</DIV>
<DIV>&nbsp;</DIV></DIV><p>
		<hr size=1>Do you Yahoo!?<br> 
Yahoo! Search presents - <a href="http://us.rd.yahoo.com/evt=30648/*http://movies.yahoo.com/movies/feature/jibjabinaugural.html">Jib Jab's 'Second Term'</a>