webquinty |
02-04-2009 05:36 AM |
Problem using shared library........
Hello,
I have developed a shared library, and it compile fine.
Quote:
cc src/libpcican.c -fPIC -shared -O2 -Wall -Wl,-soname,libpcican.so.0 -lc -I. -o libpcican.so.0.6
ln -sf libpcican.so.0.6 libpcican.so
|
And later, install it...
Quote:
cp libpcican.so.0.6 /usr/lib64/libpcican.so.0.6
ln -sf /usr/lib64/libpcican.so.0.6 /usr/lib64/libpcican.so.0
ln -sf /usr/lib64/libpcican.so.0 /usr/lib64/libpcican.so
cp libpcican.h /usr/include/libpcican.h
chmod 644 /usr/include/libpcican.h
/sbin/ldconfig
|
But my problem is when I want to use it. I have a easy program, and when I compile with -lpcican, compiler return me this message:
Quote:
gcc -c -m32 -pipe -c -g -O2 -Wall -W -D_REENTRANT -L/lib -L/usr/lib -L/usr/local/lib -I/usr/include -I. -Itc1_task -Itc2_task -Itc3_task -Itc4_task -o taskman.o taskman.c
gcc -c -m32 -pipe -c -g -O2 -Wall -W -D_REENTRANT -L/lib -L/usr/lib -L/usr/local/lib -I/usr/include -I. -Itc1_task -Itc2_task -Itc3_task -Itc4_task -o "tc1_task/tc1_task1.o" "tc1_task/tc1_task1.c"
gcc -c -m32 -pipe -c -g -O2 -Wall -W -D_REENTRANT -L/lib -L/usr/lib -L/usr/local/lib -I/usr/include -I. -Itc1_task -Itc2_task -Itc3_task -Itc4_task -o "tc1_task/tc1_task1_init.o" "tc1_task/tc1_task1_init.c"
gcc -c -m32 -pipe -c -g -O2 -Wall -W -D_REENTRANT -L/lib -L/usr/lib -L/usr/local/lib -I/usr/include -I. -Itc1_task -Itc2_task -Itc3_task -Itc4_task -o "tc1_task/tc1_task2.o" "tc1_task/tc1_task2.c"
gcc -c -m32 -pipe -c -g -O2 -Wall -W -D_REENTRANT -L/lib -L/usr/lib -L/usr/local/lib -I/usr/include -I. -Itc1_task -Itc2_task -Itc3_task -Itc4_task -o "tc1_task/tc1_task2_init.o" "tc1_task/tc1_task2_init.c"
gcc -c -m32 -pipe -c -g -O2 -Wall -W -D_REENTRANT -L/lib -L/usr/lib -L/usr/local/lib -I/usr/include -I. -Itc1_task -Itc2_task -Itc3_task -Itc4_task -o "tc1_task/tc1_task3.o" "tc1_task/tc1_task3.c"
gcc -c -m32 -pipe -c -g -O2 -Wall -W -D_REENTRANT -L/lib -L/usr/lib -L/usr/local/lib -I/usr/include -I. -Itc1_task -Itc2_task -Itc3_task -Itc4_task -o "tc1_task/tc1_task3_init.o" "tc1_task/tc1_task3_init.c"
g++ -m32 -g -O2 -Wall -L/lib -L/usr/lib -L/usr/local/lib -o cyclic_can-v1 taskman.o tc1_task/tc1_task1.o tc1_task/tc1_task1_init.o tc1_task/tc1_task2.o tc1_task/tc1_task2_init.o tc1_task/tc1_task3.o tc1_task/tc1_task3_init.o tc2_task/tc2_task1.o tc2_task/tc2_task2.o tc2_task/tc2_task3.o tc3_task/tc3_task1.o tc3_task/tc3_task2.o tc3_task/tc3_task3.o tc4_task/tc4_task1.o tc4_task/tc4_task2.o tc4_task/tc4_task3.o -lrt -ldl -lpthread -lpcican
/usr/lib64/gcc/x86_64-suse-linux/4.3/../../../../x86_64-suse-linux/bin/ld: skipping incompatible /usr/lib/libpcican.so when searching for -lpcican
/usr/lib64/gcc/x86_64-suse-linux/4.3/../../../../x86_64-suse-linux/bin/ld: skipping incompatible /usr/lib64/gcc/x86_64-suse-linux/4.3/../../../../lib/libpcican.so when searching for -lpcican
/usr/lib64/gcc/x86_64-suse-linux/4.3/../../../../x86_64-suse-linux/bin/ld: skipping incompatible /usr/lib/../lib/libpcican.so when searching for -lpcican
/usr/lib64/gcc/x86_64-suse-linux/4.3/../../../../x86_64-suse-linux/bin/ld: skipping incompatible /usr/lib64/gcc/x86_64-suse-linux/4.3/../../../libpcican.so when searching for -lpcican
/usr/lib64/gcc/x86_64-suse-linux/4.3/../../../../x86_64-suse-linux/bin/ld: skipping incompatible /usr/lib64/libpcican.so when searching for -lpcican
/usr/lib64/gcc/x86_64-suse-linux/4.3/../../../../x86_64-suse-linux/bin/ld: skipping incompatible /usr/lib/libpcican.so when searching for -lpcican
/usr/lib64/gcc/x86_64-suse-linux/4.3/../../../../x86_64-suse-linux/bin/ld: cannot find -lpcican
collect2: ld returned 1 exit status
make: *** [cyclic_can-v1] Error 1
|
any advice????
Thank you very much.
|