日韩性视频-久久久蜜桃-www中文字幕-在线中文字幕av-亚洲欧美一区二区三区四区-撸久久-香蕉视频一区-久久无码精品丰满人妻-国产高潮av-激情福利社-日韩av网址大全-国产精品久久999-日本五十路在线-性欧美在线-久久99精品波多结衣一区-男女午夜免费视频-黑人极品ⅴideos精品欧美棵-人人妻人人澡人人爽精品欧美一区-日韩一区在线看-欧美a级在线免费观看

歡迎訪問 生活随笔!

生活随笔

當前位置: 首頁 > 运维知识 > linux >内容正文

linux

linux下C/C++编译时系统搜索 include 和 链接库 文件路径的指定

發布時間:2025/3/19 linux 31 豆豆
生活随笔 收集整理的這篇文章主要介紹了 linux下C/C++编译时系统搜索 include 和 链接库 文件路径的指定 小編覺得挺不錯的,現在分享給大家,幫大家做個參考.

?

C/C++程序在linux下被編譯和連接時,GCC/G++會查找系統默認的include和link的路徑,以及自己在編譯命令中指定的路徑。自己指定的路徑就不說了,這里說明一下系統自動搜索的路徑。 【1】include頭文件路徑 除了默認的/usr/include, /usr/local/include等include路徑外,還可以通過設置環境變量來添加系統include的路徑: #?C export C_INCLUDE_PATH=XXXX:$C_INCLUDE_PATH # CPP export?CPLUS_INCLUDE_PATH=XXX:$CPLUS_INCLUDE_PATH 以上修改可以直接命令行輸入(一次性),可以在/etc/profile中完成(對所有用戶生效),也可以在用戶home目錄下的.bashrc或.bash_profile中添加(針對某個用戶生效),修改完后重新登錄即生效。 【2】link鏈接庫文件路徑 鏈接庫文件在連接(靜態庫和共享庫)和運行(僅限于使用共享庫的程序)時被使用,其搜索路徑是在系統中進行設置的(也可以在編譯命令中通過 -l ?-L 來指定,這里講的是使用系統默認搜索路徑)。 一般 Linux 系統把 /lib??/usr/lib ?/usr/local/lib?作為默認的庫搜索路徑,所以使用這幾個目錄中的鏈接庫文件可直接被搜索到(不需要專門指定鏈接庫路徑)。對于默認搜索路徑之外的庫,則需要將其所在路徑添加到gcc/g++的搜索路徑之中。 鏈接庫文件的搜索路徑指定有兩種方式:1)修改/etc/so.ld.conf? ?2)修改環境變量,在其中添加自己的路徑 1)在環境變量中添加 動態鏈接庫搜索路徑: export?LD_LIBRARY_PATH=XXX:$LD_LIBRARY_PATH 靜態鏈接庫搜索路徑: export?LIBRARY_PATH=XXX:$LIBRARY_PATH 以上修改可以直接命令行輸入(一次性),可以在/etc/profile中完成(對所有用戶生效),也可以在用戶home目錄下的.bashrc或.bash_profile中添加(針對某個用戶生效),修改完后重新登錄即生效。 2)在/etc/ld.so.conf 中添加指定的鏈接庫搜索路徑(需要root權限),然后運行 /sbin/ldconfig,以達到刷新 /etc/ld.so.cache的效果。 以上兩種方式均可以達到指定鏈接庫搜索路徑的效果。 第二種搜索路徑的設置方式對于程序連接時的庫(包括共享庫和靜態庫) 的定位已經足夠了,但是對于使用了共享庫的程序的執行還是不夠的。這是因為為了加快程序執行時對共享庫的定位速度,避免使用搜索路徑查找共享庫的低效率,系統會直接讀取 /etc/ld.so.cache 并從中進行搜索的。/etc/ld.so.cache 是一個非文本的數據文件,不能直接編輯,它是根據 /etc/ld.so.conf 中設置的搜索路徑由 /sbin/ldconfig 命令將這些搜索路徑下的共享庫文件集中在一起而生成的(ldconfig 命令要以 root 權限執行)。因此,為了保證程序執行時對庫的定位,在 /etc/ld.so.conf 中進行了庫搜索路徑的設置之后,還要運行 /sbin/ldconfig 命令,更新 /etc/ld.so.cache 文件。 ldconfig的作用就是將/etc/ld.so.conf 指定的路徑下的庫文件緩存到/etc/ld.so.cache?。因此當安裝完一些庫文件(例如剛安裝好glib),或者修改ld.so.conf增加新的庫路徑后,需要運行一下/sbin/ldconfig 使所有的庫文件都被緩存到ld.so.cache中,不然修改的內容就等于沒有生效。 在程序連接時,對于庫文件(靜態庫和共享庫)的搜索路徑,除了上面的設置方式之外,還可以通過 -L 和 -l?參數顯式指定。因為用 -L 設置的路徑將被優先搜索,所以在連接的時候通常都會以這種方式直接指定要連接的庫的路徑。
注意: 1)在配置環境變量的時候,等號前面不要加空格,否則可能出現 command not found 2)修改/etc/ld.so.conf后,當系統重新啟動后,所有基于 GTK2 的程序在運行時都將使用新安裝的 GTK+ 庫。由于 GTK+ 版本的改變,有時會給應用程序帶來兼容性的問題,造成某些程序運行不正常。為了避免出現這些情況,在 GTK+ 及其依賴庫的安裝過程中對于庫的搜索路徑的設置將采用環境變量的方式
????export LD_LIBRARY_PATH=/opt/gtk/lib:$LD_LIBRARY_PATH

轉載于:https://www.cnblogs.com/bigfi/p/9487427.html

總結

以上是生活随笔為你收集整理的linux下C/C++编译时系统搜索 include 和 链接库 文件路径的指定的全部內容,希望文章能夠幫你解決所遇到的問題。

如果覺得生活随笔網站內容還不錯,歡迎將生活随笔推薦給好友。

主站蜘蛛池模板: 午夜资源网| 尤物视频最新网址 | 男女男精品视频网站 | 国产色婷婷一区二区 | 精品乱码一区二区三区 | 影视先锋av资源 | www.爱色av.com| 欧美一级做性受免费大片免费 | 一区二区三区在线免费观看视频 | 国外成人在线视频 | 一级大片免费观看 | 日批免费观看视频 | www.奇米| 日韩欧美一区二区三区在线观看 | 毛片一区二区三区 | 新香蕉视频 | 深夜视频一区二区 | 中文字幕日韩一级 | 国产日韩激情 | 性一交一乱一伧国产女士spa | 我的公把我弄高潮了视频 | 日韩欧美日韩 | 欧美一区二区三区在线观看视频 | 成人a级免费视频 | 狼人综合伊人 | 欧美一级片观看 | 成人一二三区 | 亚洲人成亚洲人成在线观看 | 精产国品一二三区 | 成人性色生活片 | 中文字幕一区二区三区乱码 | 久久久久在线观看 | 男女野外做受全过程 | 麻豆亚洲av成人无码久久精品 | 2024国产精品 | 亚洲va视频| 亚洲视频自拍偷拍 | 欧美精品卡一卡二 | 希岛婚前侵犯中文字幕在线 | 成人激情小视频 | 日韩aⅴ片| 69久久| 久久精品视频网站 | 操操操视频 | 特级黄毛片 | 亚洲淫| 奶罩不戴乳罩邻居hd播放 | 国产精品丝袜一区 | 国产亚洲精品久久久 | 你懂的欧美 | 日本美女一级片 | 不卡av在线 | 天天色天天干天天 | 欧美日韩国产一级 | 色花堂在线 | 神马香蕉久久 | 国产成人精品一区二三区四区五区 | 俺去射| 成年人在线观看av | 国产精品嫩草久久久久 | 伊人五月婷婷 | 国产午夜精品一区 | 国产一区二区三区影视 | 奇米影视久久 | 国产一区二区激情视频 | 国产亚洲欧美在线精品 | 日本福利在线 | 欧美激情精品久久久久久 | 欧美特黄色片 | 国产精品av久久久久久无 | 夜夜视频 | 日本激情视频网站 | 免费se99se | 男人天堂av网 | 97公开免费视频 | 国产二区视频在线观看 | 成人av小说| 特黄一区二区三区 | 青娱乐国产精品 | 日本女优在线看 | 亚洲人交配视频 | 色花堂在线 | 国产一级在线 | 超碰123 | 中文字幕第66页 | 美女乱淫| 欧美日韩一区二区在线观看 | 久久精品视频18 | 免费黄色入口 | 狠狠热免费视频 | 精品熟妇一区二区三区 | 欧美中出 | 中文字幕人妻伦伦 | av嫩草 | 91啦丨九色丨刺激 | 农村末发育av片一区二区 | 久久久精品一区二区 | 亚洲综合另类 | 成人免费网站在线 |