Hi, Ian. Thanks a lot for your help. Actually, I don't have neither 'libncx.so' nor 'libagt.so', just 'libncx.so.2.2' and 'libagt.so.2.2'. The only way to generate the executable was to include the absolute path to those files on gcc command line: gcc -Wall test2.c /usr/lib/libncx.so.2.2 /usr/lib/libagt.so.2.2 Best regards. --------------------------------------------- HELCIO WAGNER DA SILVA ----- Mensagem original ----- De: Ian Lance Taylor <iant@xxxxxxxxxx> Para: Helcio Wagner <hwsilva@xxxxxxxxxxxx> Cc: "gcc-help@xxxxxxxxxxx" <gcc-help@xxxxxxxxxxx> Enviadas: Sexta-feira, 22 de Junho de 2012 3:06 Assunto: Re: Can not link to shared libraries with LD_LIBRARY_PATH. Helcio Wagner <hwsilva@xxxxxxxxxxxx> writes: > Hi, Ian. > > That's the message received: > > helcio@jaguar: gcc -Wall test2.c > test2.c: Na função ‘main’: > /tmp/ccab0AHD.o: In function `main': > > test2.c:(.text+0xa): undefined reference to `dlq_createQue' > collect2: ld returned 1 exit status You didn't use a -l option to tell the linker to search the library where the symbol is defined. E.g., gcc -Wall test2.c -lncx Note that for this to work you must have libncx.so or libncx.a in /usr/lib. libncx.so.2.2 is used at runtime, not link time. Packages on Ubuntu are often split into runtime and development variants; make sure you have the development package installed. Ian > ----- Mensagem original ----- > De: Ian Lance Taylor <iant@xxxxxxxxxx> > Para: Helcio Wagner <hwsilva@xxxxxxxxxxxx> > Cc: "gcc-help@xxxxxxxxxxx" <gcc-help@xxxxxxxxxxx> > Enviadas: Sexta-feira, 22 de Junho de 2012 2:49 > Assunto: Re: Can not link to shared libraries with LD_LIBRARY_PATH. > > Helcio Wagner <hwsilva@xxxxxxxxxxxx> writes: > >> I am using gcc 4.6.3 on Ubuntu 12.04. >> >> First of all, I have no LD_LIBRARY_PATH environment variable set. Should I have it? >> >> Well, I've edited '.bashrc' file to define LD_LIBRARY_PATH and pointed it to '/usr/lib' and '/usr/local/lib' directories: >> >> export LD_LIBRARY_PATH=/usr/lib:/usr/local/lib > > It is not normally necessary to add these directories to > LD_LIBRARY_PATH. See "man ldconfig". > > >> My executable (named 'test') needs to be linked to two shared libraries to be generated: 'libncx.so.2.2' and 'libagt.so.2.2'. Both are located on '/usr/lib' directory. However, when I type 'gcc -Wall test2.c', there is a message relating undefined references. The executable was not generated. > > A problem at link time is most likely not due to LD_LIBRARY_PATH. > > When reporting an error message, please cut and paste the exact, > complete, error output. Otherwise we don't know what happened. > > Ian