linux gcc ÃüÁî
1£¬-c ±àÒëÄ¿±ê´úÂë
gcc -o hello.o -c hello.c //-o Ö»ÊÇÖ¸¶¨Éú³ÉÄ¿±êÎļþÃû
»ò
gcc -c hello.c
¶¼Éú³Éhello.oÎļþ£¬²»¿ÉÒÔÖ´ÐС£
gcc -o hello hello.o
ÓÃÄ¿±êÎļþÉú³Éhello¿ÉÖ´ÐÐÎļþ¡£
gcc -o hello hello.c
ÓÃÔ´ÎļþÖ±½ÓÉú³Éhello¿ÉÖ´ÐгÌÐò¡£
2£¬
-fpic»ò-fPIC ²úÉúλÖÃÎ޹صÄÄ¿±ê´úÂ룬¿ÉÓÃÓÚ¹¹Ôì¹²Ïíº¯Êý¿â¡£
¡¡¡¡# gcc -fPIC -c message.c
¡¡¡¡“PIC”ÃüÁîÐбê¼Ç¸æËß GCC
²úÉúµÄ´úÂë²»Òª°üº¬¶Ôº¯ÊýºÍ±äÁ¿¾ßÌåÄÚ´æλÖõÄÒýÓã¬ÕâÊÇÒòΪÏÖÔÚ»¹ÎÞ·¨ÖªµÀ
ʹÓøÃÏûÏ¢´úÂëµÄÓ¦ÓóÌÐò»á½«ËüÁ¬½Óµ½ÄÄÒ»¶ÎÄÚ´æµØÖ·¿Õ¼ä¡£ÕâÑù±àÒëÊä³öµÄÎÄ
¼þ message.o ¿ÉÒÔ±»ÓÃÓÚ½¨Á¢
¹²Ïíº¯Êý¿â¡£
¡¡¡¡# gcc -shared -o libmessage.so message.o
¡¡¡¡½«ÉÏÃæµÄmian.cʹÓù²Ïí¿âº¯Êýligmessage.so±àÒ룺
¡¡¡¡# gcc -o goodbye -lmessage -L. message.o
3£¬gccµÄ³£ÓÃÁ¬½ÓÑ¡ÏîÓÐÏÂÁм¸¸ö£º
¡¡¡¡-Ldir ½«dirĿ¼¼Óµ½ËÑÑ°-lÑ¡ÏîÖ¸¶¨µÄº¯Êý¿âÎļþµÄĿ¼ÁбíÖÐÈ¥£¬²¢ÓÅÏÈÓÚgccȱʡµÄËÑË÷Ŀ¼¡£ÔÚÓжà¸ö-L
Ñ¡ÏîµÄÇé¿öÏ£¬°´ÃüÁîÐÐÉÏ-LÑ¡ÏîµÄÇ°ºó˳ÐòËÑË÷¡£dir¿ÉʹÓÃÏà¶Ô·¾¶¡£Èç-L../libµÈ¡£
¡¡¡¡-lname ÔÚÁ¬½ÓʱʹÓú¯Êý¿âlibname.a£¬Á¬½Ó³ÌÐòÔÚ-LdirÑ¡ÏîÖ¸¶¨µÄĿ¼ÏºÍ/lib£¬/usr/libĿ¼ÏÂÑ°ÕҸÿâÎļþ¡£ÔÚûÓÐʹÓÃ-staticÑ¡Ïîʱ£¬Èç¹û·¢ÏÖ¹²Ïíº¯Êý¿âlibname.so£¬ÔòʹÓÃlibname.so½øÐж¯Ì¬Á¬½Ó¡£
¡¡¡¡-static ½ûÖ¹Óë¹²Ïíº¯Êý¿âÁ¬½Ó¡£
¡¡¡¡-shared ¾¡Á¿Óë¹²Ïíº¯Êý¿âÁ¬½Ó¡£
4£¬±àÒëÑ¡Ïî˳Ðò
$ gcc test.o -L. -lhello -o test
×¢Òâ: $gcc -L. -lhello test.o -o test »á³ö´í£¡¡£
ÔÒòÊÇ: -lÊÇÁ´½ÓÆ÷Ñ¡Ï±ØÐëÒª·Åµ½±»±àÒëÎļþµÄºóÃæ¡£ ËùÒÔÉÏÃæµÄÃüÁîÖÐ-lhelloÒ»¶¨Òª·Åµ½ test.oµÄºóÃæ¡£
Ïà¹ØÎĵµ£º
ÓÐʱsystem.mapÎļþ¿ÉÒÔ°ïÖúÎÒÃÇÀí½âÄں˱àÒ룬Ëü¼Ç¼ÁËËùÓдúÂëµÄÔËÐеØÖ·¡£
system.mapÄÚÈݸñʽΪ£ºÏßÐÔµØÖ· ÀàÐÍ ·ûºÅ
¾ßÌåÄÚÈÝÈçÏ£º
00100000 A phys_startup_32
c0100000 T startup_32
c0100000 A _text &nbs ......
Ò»¡¢Ê²Ã´ÊÇ modules£¿
¡¡¡¡modules µÄ×ÖÃæÒâ˼¾ÍÊÇÄ£¿é£¬ÔÚ´ËÖ¸µÄÊÇ kernel modules£»¼òµ¥À´Ëµ£¬ Ò»¸öÄ£¿éÌṩÁËÒ»¸ö¹¦ÄÜ£¬Èç isofs¡¢minix¡¢nfs¡¢lp µÈµÈ¡£´«Í³À´½²£¬Ä£¿é»¯ÓÐÁ½¸ö·½·¨½â¾ö£º Éè¼ÆÕß¿ÉÒ԰Ѹ÷ÏÄÜ·ÖÀëµ½µ¥¶ÀµÄ½Ð×öÏ̵߳Ĵ¦ÀíÖÐÈ¥£¬»òÕßÊǽ«ÄÚºËÒÔ°üº¬/ÅųýһЩ¹¦Äܵķ½Ê½ÖØбàÒë¡£Èç¹û°Ñ¹¦ÄÜ·ÖÀëµ½Ïß³ ......
LinuxÖеĽø³ÌͨÐÅ
1.¹ÜµÀ
º¯ÊýÔÐÍ£ºint pipe(int filedes[2]);
º¯Êý·µ»ØÖµ£º ÕýÈ··µ»Ø0£»´íÎó·µ»Ø-1
ÆäÖеÄÎļþÃèÊö·ûfiledes[0]ÊÇÓÃÀ´¶ÁÈ¡Êý¾ÝµÄ£¬filedes[1]ÊÇÓÃÀ´Ð´Êý¾ÝµÄ¡£
Àý×Ó1£º
#include<stdio.h>
#include<stdlib.h>
#include<u ......
o: ±àÒëµÄÄ¿±êÎļþ
-X/S3fm'SH]X0
a:
¾²Ì¬¿â£¬Æäʵ¾ÍÊÇ°ÑÈô¸ÉoÎļþ´òÁ˸ö°ü
k
z3noUV
pR0
so: ¶¯Ì¬Á´½Ó¿â£¨¹²Ïí¿â£©Öйúµç×Ó¶¥¼¶¿ª·¢Íø----×îרҵµÄµç
×ÓÂÛ̳¡¢×îרҵµÄµç×Ó¹¤³Ìʦ²©¿ÍL&??,z4i&G&G&S
V
r0^mk zF5o"xC1c0
lo:
ʹÓÃlibtool±àÒë³öµÄÄ¿±êÎļþ£¬Æäʵ¾ÍÊÇÔÚo ......