Linux¶¯Ì¬¿â(.so)ËÑË÷·¾¶
ÔÚLinux ÖУ¬¶¯Ì¬¿âµÄËÑË÷·¾¶³ýÁËĬÈϵÄËÑË÷·¾¶Í⣬»¹¿Éͨ¹ýÈýÖÖ·½·¨À´Ö¸¶¨£º·½·¨Ò»£ºÔÚÅäÖÃÎļþ/etc/ld.so.confÖÐÖ¸¶¨¶¯Ì¬¿âËÑË÷·¾¶£»·½·¨¶þ£ºÍ¨¹ý»·¾³±äÁ¿LD_LIBRARY_PATHÖ¸¶¨¶¯Ì¬¿âËÑË÷·¾¶£»·½·¨Èý£ºÔÚ±àÒëÄ¿±ê´úÂëʱָ¶¨¸Ã³ÌÐòµÄ¶¯Ì¬¿âËÑË÷·¾¶¡£
ÖÚËùÖÜÖª£¬Linux¶¯Ì¬¿âµÄĬÈÏËÑË÷·¾¶ÊÇ/libºÍ/usr/lib¡£¶¯Ì¬¿â±»´´½¨ºó£¬Ò»°ã¶¼¸´ÖƵ½ÕâÁ½¸öĿ¼ÖС£µ±³ÌÐòÖ´ÐÐʱÐèҪij¶¯Ì¬¿â£¬²¢ÇҸö¯ ̬¿â»¹Î´¼ÓÔØµ½ÄÚ´æÖУ¬Ôòϵͳ»á×Ô¶¯µ½ÕâÁ½¸öĬÈÏËÑË÷·¾¶ÖÐÈ¥²éÕÒÏàÓ¦µÄ¶¯Ì¬¿âÎļþ£¬È»ºó¼ÓÔØ¸ÃÎļþµ½ÄÚ´æÖУ¬ÕâÑù³ÌÐò¾Í¿ÉÒÔʹÓøö¯Ì¬¿âÖеĺ¯Êý£¬ÒÔ¼°¸Ã¶¯Ì¬¿âµÄÆäËü×ÊÔ´ÁË¡£ÔÚLinux ÖУ¬¶¯Ì¬¿âµÄËÑË÷·¾¶³ýÁËĬÈϵÄËÑË÷·¾¶Í⣬»¹¿ÉÒÔͨ¹ýÒÔÏÂÈýÖÖ·½·¨À´Ö¸¶¨¡£
·½·¨Ò»£ºÔÚÅäÖÃÎļþ/etc/ld.so.confÖÐÖ¸¶¨¶¯Ì¬¿âËÑË÷·¾¶¡£
¿ÉÒÔͨ¹ý±à¼ÅäÖÃÎļþ/etc/ld.so.confÀ´Ö¸¶¨¶¯Ì¬¿âµÄËÑË÷·¾¶£¬¸ÃÎļþÖÐÿÐÐΪһ¸ö¶¯Ì¬¿âËÑË÷·¾¶¡£Ã¿´Î±à¼Íê¸ÃÎļþºó£¬¶¼±ØÐëÔËÐÐÃüÁîldconfigʹÐ޸ĺóµÄÅäÖÃÉúЧ¡£ÎÒÃÇͨ¹ýÀý1À´ËµÃ÷¸Ã·½·¨¡£
Àý1£º
ÎÒÃÇͨ¹ýÒÔÏÂÃüÁîÓÃÔ´³ÌÐòpos_conf.c£¨¼û³ÌÐò1£©À´´´½¨¶¯Ì¬¿â libpos.so£¬Ïêϸ´´½¨¹ý³ÌÇë²Î¿¼ÎÄ[1]¡£
# gcc -c pos_conf.c
# gcc -shared -fPCI -o libpos.so pos_conf.o
#
#include <stdio.h>
void pos()
{
printf("/root/test/conf/lib\n");
}
³ÌÐò1: pos_conf.c
½Ó×Åͨ¹ýÒÔÏÂÃüÁî±àÒëmain.c£¨¼û³ÌÐò2£©Éú³ÉÄ¿±ê³ÌÐòpos¡£
# gcc -o pos main.c -L. -lpos
#
void pos();
int main()
{
pos();
&nb
Ïà¹ØÎĵµ£º
¡¡¡¡ ¶àÏ̳߳ÌÐòÉè¼ÆµÄ¸ÅÄîÔçÔÚÁùÊ®Äê´ú¾Í±»Ìá³ö£¬µ«Ö±µ½°ËÊ®Äê´úÖÐÆÚ£¬UnixϵͳÖвÅÒýÈë¶àÏ̻߳úÖÆ£¬Èç½ñ£¬ÓÉÓÚ×ÔÉíµÄÐí¶àÓŵ㣬¶àÏ̱߳à³ÌÒѾµÃµ½Á˹㷺µÄÓ¦Óᣱ¾ÎÄÎÒÃǽ«½éÉÜÔÚLinuxϱàд¶à½ø³ÌºÍ¶àÏ̳߳ÌÐòµÄһЩ³õ²½ÖªÊ¶¡£
------------------------------------------------------------------------ ......
Linux 2.6.19.x Äں˱àÒëÅäÖÃÑ¡Ïî¼ò½é
×÷Õߣº½ð²½¹ú
Code maturity level options
´úÂë³ÉÊì¶ÈÑ¡Ïî
Prompt for development and/or incomplete code/drivers ÏÔʾÉÐÔÚ¿ª·¢ÖлòÉÐδÍê³ÉµÄ´úÂëÓëÇý¶¯.³ý·ÇÄãÊDzâÊÔÈËÔ±»òÕß¿ª·¢Õß,·ñÔòÇëÎðÑ¡Ôñ
General setup
³£¹æÉèÖÃ
Local version - append to kernel release ÔÚÄÚº ......
ÔÚLinuxϽøÐÐCÓïÑÔ±à³Ì£¬±ØÈ»Òª²ÉÓÃGNU GCCÀ´±àÒëCÔ´´úÂëÉú³É¿ÉÖ´ÐгÌÐò¡£GccÖ¸ÁîµÄÒ»°ã¸ñʽΪ£º
Gcc [Ñ¡Ïî] Òª±àÒëµÄÎļþ [Ñ¡Ïî] [Ä¿±êÎļþ]¡£ÆäÖУ¬Ä¿±êÎļþ¿Éȱʡ£¬GccĬÈÏÉú³É¿ÉÖ´ÐеÄÎļþÃûΪ£º±àÒëÎļþ.out
¿´Ò»Ï¾µäÈëÃųÌÐò"Hello World£¡"
# vi hello.c £¬±à¼ÈçÏ£º
#inclu ......
²Ù×÷ϵͳµÄÒ»¸ö¾µäÎÊÌâÊÇ"Éú²úÕß-Ïû·ÑÕß"ÎÊÌâ, ÕâÉæ¼°Í¬²½ÐźÅÁ¿ºÍ»¥³âÐźÅÁ¿µÄÓ¦ÓÃ, ÔÚÕâÀï,ÎÒÓÃÏ̵߳Äͬ²½ºÍ»¥³âÀ´ÊµÏÖ.
/*
* author ÕÅÎÄ
* 2008/06/20
*/
#include <stdio.h>
#include <stdlib.h>
#include <unistd.h>
#include <pthread.h>
#include <semaphore.h> ......
ÍøÂçÎļþϵͳ£¨NFS£¬Network File System£©ÊÇÒ»ÖÖ½«Ô¶³ÌÖ÷»úÉϵķÖÇø£¨Ä¿Â¼£©¾ÍøÂç¹ÒÔØµ½±¾µØÏµÍ³µÄÒ»ÖÖ»úÖÆ£¬Í¨¹ý¶ÔÍøÂçÎļþϵͳµÄÖ§³Ö£¬Óû§¿ÉÒÔÔÚ±¾µØÏµÍ³ÉÏÏñ²Ù×÷±¾µØ·ÖÇøÒ»ÑùÀ´¶ÔÔ¶³ÌÖ÷»úµÄ¹²Ïí·ÖÇø£¨Ä¿Â¼£©½øÐвÙ×÷¡£
ÔÚǶÈëʽLinux µÄ¿ª·¢¹ý³ÌÖУ¬¿ª·¢ÕßÐèÒªÔÚLinux ·þÎñÆ÷ÉϽøÐÐËùÓеÄÈí¼þ¿ª·¢£¬½»²æ±àÒëºó£¬Í¨Ó ......