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
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 ();
I used that and i got lot of undefined references errors are coming. when i use this i got only one undefined reference error.
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