Go4Expert

Go4Expert (http://www.go4expert.com/)
-   C (http://www.go4expert.com/forums/c/)
-   -   undefined refernece error when linking (http://www.go4expert.com/forums/undefined-refernece-error-linking-t15545/)

gcc 19Dec2008 09:57

undefined refernece error when linking
 
Dear all ,
I have one shared library in "/usr/lib/ast/mod/quad.so"
where the functions "X1" and "X2" are defined.
In header file "quad.h" it is declared.
I have created a "test.c" where X1 and X2 are called
I have used the following commads for compiling and linking

#gcc -c test.c
#gcc -o test.o -L. -Wl,-rpath,/usr/lib/ast/mod/quad.so
i am getting the error:
undefined reference to X1
undefined refernece yo X2

what all things i have to do to make a proper linking

xpi0t0s 19Dec2008 13:54

Re: undefined refernece error when linking
 
Change the commas to spaces.

gcc 19Dec2008 14:21

Re: undefined refernece error when linking
 
i tried with spaced but now unrecoginised command is coming.
test.c
-----------
#include <stdio.h>
#include <quad.h>
int main(void)
{
X1 ();
X2 ();
return 0;
}

quad.h
-----------
extern void X1 ();
void X2 ();

xpi0t0s 19Dec2008 15:57

Re: undefined refernece error when linking
 
What happens if you just try gcc test.c -o test /usr/lib/ast/mod/quad.so

gcc 19Dec2008 16:30

Re: undefined refernece error when linking
 
I used that and i got lot of undefined references errors are coming.
when i use this i got only one undefined reference error.

xpi0t0s 19Dec2008 16:39

Re: undefined refernece error when linking
 
No idea then, unless you fancy letting me know what errors you get.

gcc 19Dec2008 18:18

Re: undefined refernece error when linking
 
the errors coming are:
#gcc -o test test.o /usr/lib/ast/mod/quad.so
/usr/lib/asterisk/modules/quad.so: undefined reference to `csel_get_next'
/usr/lib/asterisk/modules/quad.so: undefined reference to `ast_cli_register_multiple'
/usr/lib/asterisk/modules/quad.so: undefined reference to `ast_tv'
/usr/lib/asterisk/modules/quad.so: undefined reference to `ast_pbx_start'
/usr/lib/asterisk/modules/quad.so: undefined reference to `cm_load'

like this lot of errors are coming.
if usee the option which I posted first i got

test.o: In function `main':
test.c:(.text+0x12): undefined reference to `X1'
test.c:(.text+0x26): undefined reference to `X2'
collect2: ld returned 1 exit status


All times are GMT +5.5. The time now is 02:56.