Ò׽ؽØÍ¼Èí¼þ¡¢µ¥Îļþ¡¢Ãâ°²×°¡¢´¿ÂÌÉ«¡¢½ö160KB

LinuxϱàÒ붯̬¿â£¬¾²Ì¬¿â£¬ÒÔ¼°µ÷ÓÃ

so_test.h£º
#include
#include
void test_a();
void test_b();
void test_c();
test_a.c£º
#include "so_test.h"
void test_a()
{
printf("this is in test_a...\n");
}
test_b.c£º
#include "so_test.h"
void test_b()
{
printf("this is in test_b...\n");
}
test_a.c£º
#include "so_test.h"
void test_c()
{
printf("this is in test_c...\n");
}
½«Õ⼸¸öÎļþ±àÒë³ÉÒ»¸ö¶¯Ì¬¿â£ºlibtest.so
$ gcc test_a.c test_b.c test_c.c -fPIC -shared -o libtest.so
test.c£º
#include "so_test.h"
int main()
{
test_a();
test_b();
test_c();
return 0;
}
l ½«test.cÓ붯̬¿âlibtest.soÁ´½ÓÉú³ÉÖ´ÐÐÎļþtest£º
$ gcc test.c -L. -ltest -o test
l ²âÊÔÊÇ·ñ¶¯Ì¬Á¬½Ó£¬Èç¹ûÁгölibtest.so£¬ÄÇôӦ¸ÃÊÇÁ¬½ÓÕý³£ÁË
$ ldd test
×îÖ÷ÒªµÄÊÇGCCÃüÁîÐеÄÒ»¸öÑ¡Ïî:
-shared
¸ÃÑ¡ÏîÖ¸¶¨Éú³É¶¯Ì¬Á¬½Ó¿â£¨ÈÃÁ¬½ÓÆ÷Éú³ÉTÀàÐ͵ĵ¼³ö·ûºÅ±í£¬ÓÐʱºòÒ²Éú³ÉÈõÁ¬½ÓWÀàÐ͵ĵ¼³ö·ûºÅ£©£¬²»ÓøñêÖ¾Íⲿ³ÌÐòÎÞ·¨Á¬½Ó¡£Ï൱ÓÚÒ»¸ö¿ÉÖ´ÐÐÎļþ
l
-fPIC£º±íʾ±àÒëΪλÖöÀÁ¢µÄ´úÂ룬²»ÓôËÑ¡ÏîµÄ»°±àÒëºóµÄ´úÂëÊÇλÖÃÏà¹ØµÄËùÒÔ¶¯Ì¬ÔØÈëʱÊÇͨ¹ý´úÂ뿽±´µÄ·½Ê½À´Âú×㲻ͬ½ø³ÌµÄÐèÒª£¬¶ø²»ÄÜ´ïµ½Õæ
Õý´úÂë¶Î¹²ÏíµÄÄ¿µÄ¡£
l -L.£º±íʾҪÁ¬½ÓµÄ¿âÔÚµ±Ç°Ä¿Â¼ÖÐ
l -ltest£º±àÒëÆ÷²éÕÒ¶¯Ì¬Á¬½Ó¿âʱÓÐÒþº¬µÄÃüÃû¹æÔò£¬¼´ÔÚ¸ø³öµÄÃû×ÖÇ°Ãæ¼ÓÉÏlib£¬ºóÃæ¼ÓÉÏ.soÀ´È·¶¨¿âµÄÃû³Æ
l LD_LIBRARY_PATH£ºÕâ¸ö»·¾³±äÁ¿Ö¸Ê¾¶¯Ì¬Á¬½ÓÆ÷¿ÉÒÔ×°ÔØ¶¯Ì¬¿âµÄ·¾¶¡£
×îºó. Êä³ö¿âµÄ·¾¶£¬»òÕß¿½±´µ½/libĿ¼ÏÂ
export LD_LIBRARY_PATH=.  // ÀÏÆÅ´óÈ˸æËß°³µÄ
Ö´ÐР ./test
¸ã¶¨
¾²Ì¬:
ÏȱàÒë³É.o
gcc -c test_a.c test_b.c test_c.c
È»ºóÓÃarÃüÁî
ar -r libtest.a test_a.o test_b.o test_c.o


Ïà¹ØÎĵµ£º

Ubuntu linuxϵͳϽ¨Á¢arm½»²æ±àÒëÆ÷

½â¾ö²½Ö裺ÒÔarm-linux-gcc-4.3.2.tgzΪÀý
1.       °Ñarm-linux-gcc-4.3.2.tgz¿½±´µ½ÄãÖ¸¶¨µÄĿ¼ÀȻºóÓÃtarÃüÁî½âѹµ½µ±Ç°Ä¿Â¼¡£³É¹¦ºó£¬»áÔÚ4.3.2/binÏÂÕÒµ½arm-linux-gcc¡£
ÀýÈ磺/opt/arm-linux-gcc-4.3.2.taz£¬ÒÔÏÂÃüÁºìɫΪϵͳÌáʾ·û£¬ºÚɫΪÓû§ÃüÁî
gylu@dell-desktop:~$ ......

µÚ1 ²¿·Ö£ºLinux »ù´¡

ÔÚ±¾½Ì³ÌÖУ¬ÎÒÃǽ«¸øÄú½éÉÜ bash£¨±ê×¼µÄ Linux shell£©£¬ÎªÄúչʾÈçºÎ³ä·ÖÀûÓÃÈç ls¡¢cp ºÍ mv ÕâÑùµÄ±ê×¼ Linux ÃüÁ²¢ÏòÄú½²½â Linux µÄȨÏÞºÍËùÓÐȨģÐÍÒÔ¼°¸ü·á¸»µÄÄÚÈÝ¡£ÔÚ±¾½Ì³Ì½áÊøÖ®¼Ê£¬Äú½«¾ßÓÐ Linux »ù´¡ÖªÊ¶·½ÃæµÄÔúʵ»ù´¡£¬ÉõÖÁ»¹¿ÉÒÔ×¼±¸¿ªÊ¼Ñ§Ï°Ò»Ð©»ù±¾µÄ Linux ϵͳ¹ÜÀíÈÎÎñ·½ÃæµÄ֪ʶ¡£
Ò»¡£¹ØÓÚ±¾½ ......

ÀûÓà linux µÄ 7za ±¸·ÝÎļþ£¬ÈçºÎÅųýÒ»¸öÎļþ¼Ð

ÓÉÓÚ£¬ÐèÒª¶¨Ê±±¸·ÝÊý¾Ý£¬ËùÒÔʹÓà 7zaÀ´´ò°ü¡£¡£¡£ Ä¿±êÎļþ¼Ð¾­³£º¬ÓдóÁ¿µÄÓû§ÉÏ´«Í¼Æ¬£¬ÕâЩͼƬÎÞÐè¸ßÃܶȶ¨ÆÚ±¸·Ý£¬ËùÒÔ£¬Ï£ÍûÔÚ´ò°üµÄʱºòÅųýËüÃÇ¡£¡£
   Ñо¿ÁËÒ»ÏÂ7zaµÄÃüÁîÐУ¬´óÖ¿ÉÒÔÕâÑùÍê³É£º
       7za a '-x!backup/fold/' test.zip backup
 &nb ......

linux ×öË«»úÈȱ¸

1.1 Ê×ÏÈÏÂÔØlibnet.tar.gz£¬heartbeat-2.0.4.tar.gz
1.2 °´Ë³ÐòÏÖ×°libnetÔÙ×°heartbeat
¶¼ÊÇÔ´Âë°ü£¬½âѹ¿ªºó·Ö±ðÖ´ÐУº
./configure ;make ;make install;
°²×°Íê±Ï¡£
1.3 Èí¼þµÄÅäÖÃ
HeartbeatÈí¼þµÄ°²×°Ä¿Â¼Îª/usr/local/etc/ha.d£¬ÆäÖеÄREADME.config¶ÔÅäÖÃÎļþ½øÐÐÁË˵Ã÷£¬¹²ÓÐÈý¸öÖ÷ÒªµÄÅäÖÃ
Îļþ£ºha.cf£¬ ......
© 2009 ej38.com All Rights Reserved. ¹ØÓÚE½¡ÍøÁªÏµÎÒÃÇ | Õ¾µãµØÍ¼ | ¸ÓICP±¸09004571ºÅ