9)LinuxÏÂC¿ª·¢¹¤¾ß½éÉÜ
9)LinuxÏÂC¿ª·¢¹¤¾ß½éÉÜ
LinuxµÄ·¢ÐаæÖаüº¬Á˺ܶàÈí¼þ¿ª·¢¹¤¾ß. ËüÃÇÖеĺܶàÊÇÓÃÓÚ C ºÍ C++Ó¦ÓóÌÐò¿ª·¢
µÄ. ±¾ÎĽéÉÜÁËÔÚ Linux ÏÂÄÜÓÃÓÚ C Ó¦ÓóÌÐò¿ª·¢ºÍµ÷ÊԵŤ¾ß. ±¾ÎĵÄÖ÷Ö¼ÊǽéÉÜÈç
ºÎÔÚ Linux ÏÂʹÓà C ±àÒëÆ÷ºÍÆäËû C ±à³Ì¹¤¾ß, ¶ø·Ç C ÓïÑÔ±à³ÌµÄ½Ì³Ì.
GNU C ±àÒëÆ÷
GNU C ±àÒëÆ÷(GCC)ÊÇÒ»¸öÈ«¹¦ÄÜµÄ ANSI C ¼æÈݱàÒëÆ÷. Èç¹ûÄãÊìϤÆäËû²Ù×÷ϵͳ»òÓ²
¼þƽ̨ÉϵÄÒ»ÖÖ C ±àÒëÆ÷, Ä㽫ÄÜºÜ¿ìµØÕÆÎÕ GCC. ±¾½Ú½«½éÉÜÈçºÎʹÓà GCC ºÍһЩ
GCC ±àÒëÆ÷×î³£ÓõÄÑ¡Ïî.
ʹÓà GCC
ͨ³£ºó¸úһЩѡÏîºÍÎļþÃûÀ´Ê¹Óà GCC ±àÒëÆ÷. gcc ÃüÁîµÄ»ù±¾Ó÷¨ÈçÏÂ:
gcc [options] [filenames]
ÃüÁîÐÐÑ¡ÏîÖ¸¶¨µÄ²Ù×÷½«ÔÚÃüÁîÐÐÉÏÿ¸ö¸ø³öµÄÎļþÉÏÖ´ÐÐ. ÏÂһС½Ú½«ÐðÊöһЩÄã»á×î
³£Óõ½µÄÑ¡Ïî.
GCC Ñ¡Ïî
GCC Óг¬¹ý100¸öµÄ±àÒëÑ¡Ïî¿ÉÓÃ. ÕâЩѡÏîÖеÄÐí¶àÄã¿ÉÄÜÓÀÔ¶¶¼²»»áÓõ½, µ«Ò»Ð©Ö÷
ÒªµÄÑ¡Ï»áƵ·±Óõ½. ºÜ¶àµÄ GCC Ñ¡Ïî°üÀ¨Ò»¸öÒÔÉϵÄ×Ö·û. Òò´ËÄã±ØÐëΪÿ¸öÑ¡Ïî
Ö¸¶¨¸÷×ÔµÄÁ¬×Ö·û, ²¢ÇÒ¾ÍÏó´ó¶àÊý Linux ÃüÁîÒ»ÑùÄã²»ÄÜÔÚÒ»¸öµ¥¶ÀµÄÁ¬×Ö·ûºó¸úÒ»
×éÑ¡Ïî. ÀýÈç, ÏÂÃæµÄÁ½¸öÃüÁîÊDz»Í¬µÄ:
gcc -p -g test.c
gcc -pg test.c
µÚÒ»ÌõÃüÁî¸æËß GCC ±àÒë test.c ʱΪ prof ÃüÁÁ¢ÆÊÎö(profile)ÐÅÏ¢²¢ÇҰѵ÷ÊÔÐÅ
Ï¢¼ÓÈëµ½¿ÉÖ´ÐеÄÎļþÀï. µÚ¶þÌõÃüÁîÖ»¸æËß GCC Ϊ gprof ÃüÁÁ¢ÆÊÎöÐÅÏ¢.
µ±Äã²»ÓÃÈκÎÑ¡Ïî±àÒëÒ»¸ö³ÌÐòʱ, GCC ½«»á½¨Á¢(¼Ù¶¨±àÒë³É¹¦)Ò»¸öÃûΪ a.out µÄ¿É
Ö´ÐÐÎļþ. ÀýÈç, ÏÂÃæµÄÃüÁÔÚµ±Ç°Ä¿Â¼Ï²úÉúÒ»¸ö½Ð a.out µÄÎļþ:
gcc test.c
ÄãÄÜÓà -o ±àÒëÑ¡ÏîÀ´Îª½«²úÉúµÄ¿ÉÖ´ÐÐÎļþÖ¸¶¨Ò»¸öÎļþÃûÀ´´úÌæ a.out. ÀýÈç, ½«Ò»
¸ö½Ð count.c µÄ C ³ÌÐò±àÒëΪÃû½Ð count µÄ¿ÉÖ´ÐÐÎļþ, Ä㽫ÊäÈëÏÂÃæµÄÃüÁî:
gcc -o count count.c
------------------------------------------------------------------------------
--
×¢Òâ: µ±ÄãʹÓà -o Ñ¡Ïîʱ, -o ºóÃæ±ØÐë¸úÒ»¸öÎļþÃû.
------------------------------------------------------------------------------
--
GCC ͬÑùÓÐÖ¸¶¨±àÒëÆ÷´¦Àí¶àÉٵıàÒëÑ¡Ïî. -c Ñ¡Ïî¸æËß GCC ½ö°ÑÔ´´úÂë±àÒëΪĿ±ê´ú
Âë¶øÌø¹ý»ã±àºÍÁ¬½ÓµÄ²½Öè. Õâ¸öÑ¡ÏîʹÓõķdz£Æµ·±ÒòΪËüʹµÃ±àÒë¶à¸ö C ³ÌÐòʱËÙ
¶È¸ü¿ì²¢ÇÒ¸üÒ×ÓÚ¹ÜÀí. ȱʡʱ GCC ½¨Á¢µÄÄ¿±ê´úÂëÎļþÓÐÒ»¸ö .o µÄÀ©Õ¹Ãû.
-S ±àÒëÑ¡Ïî¸æËß GCC ÔÚΪ C ´úÂë²úÉúÁË»ã±àÓïÑÔÎļþºóÍ£Ö¹±àÒ
Ïà¹ØÎĵµ£º
ÕâÆªÎÄÕÂÊÇʹÓÃSQLite C/C++½Ó¿ÚµÄÒ»¸ö¸ÅÒª½éÉܺÍÈëÃÅÖ¸ÄÏ¡£
ÓÉÓÚÔçÆÚµÄSQLiteÖ»Ö§³Ö5¸öC/C++½Ó¿Ú£¬Òò¶ø·Ç³£ÈÝÒ×ѧϰºÍʹÓ㬵«ÊÇËæ×ÅSQLite¹¦ÄܵÄÔöÇ¿£¬ÐµÄC/C++½Ó¿Ú²»¶ÏµÄÔö¼Ó½øÀ´£¬µ½ÏÖÔÚÓг¬¹ý150¸ö²»Í¬µÄAPI½Ó¿Ú¡£ÕâÍùÍùʹ³õѧÕßÍû¶øÈ´²½¡£ÐÒÔ˵ÄÊÇ£¬´ó¶àÊýSQLiteÖеÄC/C++½Ó¿ÚÊÇרÓõģ¬Òò¶øºÜÉÙ±»Ê¹Óõ½¡£¾¡¹ÜÓÐÕâ ......
su
suÃüÁîÊÇ×î»ù±¾µÄÃüÁîÖ®Ò»£¬³£ÓÃÓÚ²»Í¬Óû§¼äÇл»¡£ÀýÈ磬Èç¹ûµÇ¼Ϊ user1£¬ÒªÇл»Îªuser2£¬Ö»ÒªÓÃÈçÏÂÃüÁ
$su user2
È»ºóϵͳÌáʾÊäÈëuser2¿ÚÁÊäÈëÕýÈ·µÄ¿ÚÁîÖ®ºó¾Í¿ÉÒÔÇл»µ½user2¡£Íê³ÉÖ®ºó¾Í¿ÉÒÔÓÃexitÃüÁî·µ»Øµ½user1¡£
suÃüÁîµÄ³£¼ûÓ÷¨ÊDZä³É¸ùÓû§»ò³¬¼¶Óû§¡£Èç¹û·¢³ö²»´øÓû§ÃûµÄsuÃüÁî £¬Ôòϵ ......
ת×Ô:http://www.cublog.cn/u/12592/showart_163722.html
×î½ü¼¸Ìì¸ã wxWidgets£¬ÓÉÓÚҪͬʱ±àÒëÓ¦ÓóÌÐòµÄ Windows °æ±¾£¬ÓÖÀÁµÃÔÚÐéÄâ»úÀïÃæ±àÒë³ÌÐò£¬ÓÚÊÇÏëµ½Óý»²æ±àÒëµÄ·½Ê½ÔÚ Linux ÉϱàÒëºÃ Windows °æ±¾µÄ³ÌÐò£¬ÔÙÓà Wine »òÕßÐéÄâ»úÀ´Ö´ÐС£ÊÔÁËһϣ¬ÕâÖÖ·½·¨ºÜºÃÓ㬱ÈÔÚÐéÄâ»úÀïÃæ±àÒë³ÌÐò¿ìºÜ¶à¡£
ÎҵIJÙ×÷ ......
http://www.ibm.com/developerworks/cn/linux/l-ipc/part5/index1.html
¹²ÏíÄÚ´æ¿ÉÒÔ˵ÊÇ×îÓÐÓõĽø³Ì¼äͨÐÅ·½Ê½£¬Ò²ÊÇ×î¿ìµÄIPCÐÎʽ¡£Á½¸ö²»Í¬½ø³ÌA¡¢B¹²ÏíÄÚ´æµÄÒâ˼ÊÇ£¬Í¬Ò»¿éÎïÀíÄÚ´æ±»Ó³Éäµ½
½ø³ÌA¡¢B¸÷×ԵĽø³ÌµØÖ·¿Õ¼ä¡£½ø³ÌA¿ÉÒÔ¼´Ê±¿´µ½½ø³ÌB¶Ô¹²ÏíÄÚ´æÖÐÊý¾ÝµÄ¸üУ¬·´Ö®ÒàÈ»¡£ÓÉÓÚ¶à¸ö½ø³Ì¹²Ïíͬһ¿éÄÚ´æÇøÓò£ ......
ÔÚ±à³ÌµÄ¹ý³ÌÖУ¬ÎļþµÄ²Ù×÷ÊÇÒ»¸ö¾³£Óõ½µÄÎÊÌ⣬ÔÚC++BuilderÖУ¬¿ÉÒÔʹÓöàÖÖ·½·¨¶ÔÎļþ²Ù×÷£¬ÏÂÃæÎҾͰ´ÒÔϼ¸¸ö²¿·Ö¶Ô´Ë×÷Ïêϸ½éÉÜ£¬¾ÍÊÇ£º
1¡¢»ùÓÚCµÄÎļþ²Ù×÷£»
2¡¢»ùÓÚC++µÄÎļþ²Ù×÷£»
3¡¢»ùÓÚWINAPIµÄÎļþ²Ù×÷£»
4¡¢»ùÓÚBCB¿âµÄÎļþ²Ù×÷£»
5¡¢ÌØÊâÎļþµÄ²Ù×÷¡£
¡¡
Ò¼¡¢»ùÓÚCµÄÎļþ²Ù×÷
¡¡¡¡ÔÚA ......