Hi,<br>I made the following modification in my Makefile posted in the previous mail( I looked at the Makefile generated by configure and picked the ideas from there) <br><br>libtool --tag=CC --mode=link $(CC) $(GST_INCLUDE_DIR) $(GLIB_INCLUDE_DIR) -o playbin playbin.c&nbsp; $(GST_LIB_DIR) $(GLIB_LIB_DIR) $(GST_GLIB_LIBS) -pthread<br>
<br>
and this is the command that runs at the prompt.<br><br><br>gcc -I/users/rajesh/gstreamer_build/GST/include/gstreamer-0.10/ -I/usr/include/libxml2/ -I/users/rajesh/gstreamer_build/GLIB/include/glib-2.0 -I/users/rajesh/gstreamer_build/GLIB/lib/glib-2.0/include -o playbin playbin.c&nbsp; -L/users/rajesh/gstreamer_build/GST/lib -L/users/rajesh/gstreamer_build/GLIB/lib/ /users/rajesh/gstreamer_build/GST/lib/<a href="http://libgstreamer-0.10.so" target="_blank">libgstreamer-0.10.so</a> -L/users/rajesh/gstreamer_build/GLIB/lib /users/rajesh/gstreamer_build/GLIB/lib/<a href="http://libgobject-2.0.so" target="_blank">libgobject-2.0.so</a> /users/rajesh/gstreamer_build/GLIB/lib/<a href="http://libgthread-2.0.so" target="_blank">libgthread-2.0.so</a> -lrt /users/rajesh/gstreamer_build/GLIB/lib/<a href="http://libgmodule-2.0.so" target="_blank">libgmodule-2.0.so</a> -ldl /users/rajesh/gstreamer_build/GLIB/lib/<a href="http://libglib-2.0.so" target="_blank">libglib-2.0.so</a> /usr/lib/libxml2.so -lpthread -lz -lm -pthread -Wl,--rpath -Wl,/users/rajesh/gstreamer_build/GST/lib -Wl,--rpath -Wl,/users/rajesh/gstreamer_build/GLIB/lib -Wl,--rpath -Wl,/users/rajesh/gstreamer_build/GST/lib -Wl,--rpath -Wl,/users/rajesh/gstreamer_build/GLIB/lib<br>

<br>That means make is some how resolving the library paths and setting
them to user defined locations rather than system specified paths.<br>I read somewhere that -Wl,--rpath results in hardcoding of the library locations and hence&nbsp; the implementation is not portable.<br><br><u>Can somebody please explain, what exactly happened when I included the libtool --tag=CC --mode=link ?<br>

<br></u>
<br>Now if I do <br>$ldd ./playbin <br>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; libgstreamer-0.10.so.0 =&gt; /users/rajesh/gstreamer_build/GST/lib/libgstreamer-0.10.so.0 (0x005a1000)<br>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; libgobject-2.0.so.0 =&gt; /users/rajesh/gstreamer_build/GLIB/lib/libgobject-2.0.so.0 (0x00e5b000)<br>

&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; libgthread-2.0.so.0 =&gt; /users/rajesh/gstreamer_build/GLIB/lib/libgthread-2.0.so.0 (0x00ead000)<br>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; librt.so.1 =&gt; /lib/tls/librt.so.1 (0x00111000)<br>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; libgmodule-2.0.so.0 =&gt; /users/rajesh/gstreamer_build/GLIB/lib/libgmodule-2.0.so.0 (0x00125000)<br>

&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; libdl.so.2 =&gt; /lib/libdl.so.2 (0x008c9000)<br>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; libglib-2.0.so.0 =&gt; /users/rajesh/gstreamer_build/GLIB/lib/libglib-2.0.so.0 (0x002a8000)<br>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; libxml2.so.2 =&gt; /usr/lib/libxml2.so.2 (0x07d22000)<br>

&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; libpthread.so.0 =&gt; /lib/tls/libpthread.so.0 (0x009ba000)<br>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; libz.so.1 =&gt; /usr/lib/libz.so.1 (0x008cf000)<br>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; libm.so.6 =&gt; /lib/tls/libm.so.6 (0x008a4000)<br>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; libc.so.6 =&gt; /lib/tls/libc.so.6 (0x00778000)<br>

&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; /lib/ld-linux.so.2 (0x0075b000)<br>All of them have the specified paths<br>Regards<br>Rajesh<br><br><br><br><div class="gmail_quote">On Tue, Dec 23, 2008 at 11:57 AM, Rajesh K <span dir="ltr">&lt;<a href="mailto:gstdoubts@gmail.com" target="_blank">gstdoubts@gmail.com</a>&gt;</span> wrote:<br>

<blockquote class="gmail_quote" style="border-left: 1px solid rgb(204, 204, 204); margin: 0pt 0pt 0pt 0.8ex; padding-left: 1ex;">Hi,<br>I have installed the glib and gstreamer-0.10.21 in <br>/users/rajesh/gstreamer_build/GLIB and /users/rajesh/gstreamer_build/GSt respectively<br>

I am trying to build the helloworld example in gstreamer-0.10.21/tests/examples/manual/<br>
I have written my own make file as follows.<br>where $HOME is /users/rajesh/<br>MAKEFILE<br>****************************************************************************************<br><br>CC = gcc<br>GLIB_INCLUDE_DIR =-I/users/rajesh/gstreamer_build/GLIB/include/glib-2.0&nbsp; -I/users/rajesh/gstreamer_build/GLIB/lib/glib-2.0/include<br>


GLIB_LIB_DIR = -L/users/rajesh/gstreamer_build/GLIB/lib/<br><br>GST_INCLUDE_DIR=-I$(HOME)/gstreamer_build/GST/include/gstreamer-0.10/ -I/usr/include/libxml2/<br>GST_LIB_DIR=-L$(HOME)/gstreamer_build/GST/lib<br><br>PKG_CONFIG_PATH=$(HOME)/gstreamer_build/GST/lib/pkgconfig/<br>


GST_GLIB_LIBS= -lgstreamer-0.10 -lgobject-2.0 -lgthread-2.0 -lrt -lgmodule-2.0 -ldl -lglib-2.0 -lxml2<br><br>all: clean playbin<br>playbin:<br>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; $(CC) $(GST_INCLUDE_DIR) $(GLIB_INCLUDE_DIR) -o playbin playbin.c&nbsp; $(GST_LIB_DIR) $(GLIB_LIB_DIR) $(GST_GLIB_LIBS) -pthread<br>


clean:<br>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; rm -rf playbin *.o<br>**********************************************************************************************************************<br>the executable playbin is built<br>The I set the LD_LIBRARY_PATH as follows<br>


$set LD_LIBRARY_PATH=($HOME/gstreamer_build/GST/include/gstreamer-0.10/:$HOME/gstreamer_build/GST/lib/:$LD_LIBRARY_PATH)<br>when I try to run playbin<br>It says it cannot find the shared library libgstreamer-0.10.21<br>ldd produces the following output<br>


$ldd ./playbin<br>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; libgstreamer-0.10.so.0 =&gt; not found<br>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; libgobject-2.0.so.0 =&gt; /usr/lib/libgobject-2.0.so.0 (0x00c65000)<br>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; libgthread-2.0.so.0 =&gt; /usr/lib/libgthread-2.0.so.0 (0x00688000)<br>


&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; librt.so.1 =&gt; /lib/tls/librt.so.1 (0x005bf000)<br>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; libgmodule-2.0.so.0 =&gt; /usr/lib/libgmodule-2.0.so.0 (0x00c60000)<br>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; libdl.so.2 =&gt; /lib/libdl.so.2 (0x008c9000)<br>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; libglib-2.0.so.0 =&gt; /usr/lib/libglib-2.0.so.0 (0x00af6000)<br>


&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; libxml2.so.2 =&gt; /usr/lib/libxml2.so.2 (0x07d22000)<br>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; libpthread.so.0 =&gt; /lib/tls/libpthread.so.0 (0x009ba000)<br>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; libc.so.6 =&gt; /lib/tls/libc.so.6 (0x00778000)<br>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; /lib/ld-linux.so.2 (0x0075b000)<br>


&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; libz.so.1 =&gt; /usr/lib/libz.so.1 (0x008cf000)<br>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; libm.so.6 =&gt; /lib/tls/libm.so.6 (0x008a4000)<br><br>I don&#39;t understand <br>1.why it is not able to detect libgstreamer-0.10.21<br>2.why the default library paths are being set for other libarires<br>


<br>Any clues on this?<br>Regards<br><font color="#888888">Rajesh<br><br><br><br><br>
</font></blockquote></div><br>