C_and_CPP 板


LINE

開發平台(Platform): (Ex: Win10, Linux, ...) Linux 編譯器(Ex: GCC, clang, VC++...)+目標環境(跟開發平台不同的話需列出) gcc 額外使用到的函數庫(Library Used): (Ex: OpenGL, ...) "動態/靜態函式庫" 問題(Question): 除了標題的問題還要問: 編執行檔有沒有fPIC有差嗎? 例如: gcc -fPIC main.c -lboost_printf gcc -static -fPIC main.c -lboost_printf 假設boost_printf.so跟.a都存在 這是計組的問題但我不太了解~感謝 --



※ 發信站: 批踢踢實業坊(ptt.cc), 來自: 43.248.19.192 (臺灣)
※ 文章網址: https://webptt.com/m.aspx?n=bbs/C_and_CPP/M.1602507240.A.DCE.html ※ 編輯: ucrxzero (43.248.19.192 臺灣), 10/12/2020 20:54:34
1F:→ Lipraxde: fPIC 是讓 compiler 編譯成 position-independent code 10/13 02:32
2F:→ Lipraxde: 的選項,用這個選項編譯的程式碼在執行的時需要做 rel 10/13 02:32
3F:→ Lipraxde: ocation,為了在不同的位置 (VM) 上執行。 10/13 02:32
4F:→ Lipraxde: Shared library 是不是會共用 PM 應該是 OS 決定的事, 10/13 02:32
5F:→ Lipraxde: PIC 對程式執行主要還是看 VM。 10/13 02:32
6F:→ ucrxzero: 可是我記得不加才要relocation ? 10/13 09:16
7F:→ ucrxzero: 感謝 10/13 09:16
8F:→ ucrxzero: 因為不加是絕對位址會有問題 10/13 09:20
9F:→ Lipraxde: 啊對,我記錯了。因為是 PIC 的關係可以把 PM 映射到不 10/13 09:39
10F:→ Lipraxde: 同的 VM,兩者之間應該是這樣的關係。 10/13 09:39
11F:→ ucrxzero: fPIC的可以同步修改PM 10/13 10:03
12F:→ ucrxzero: 而另外一個為private的copy on write這樣理解對嗎 10/13 10:03
13F:→ ucrxzero: 看到計組上的對於共享庫段的解釋是不是套用到dPIC上? 10/13 10:04
14F:→ ucrxzero: *fPIC 10/13 10:04
15F:→ Lipraxde: PIC 可以不經修改就能在不同位置上執行,因為使用的是 10/13 10:50
16F:→ Lipraxde: 相對位置而不是絕對位置。至於計組嘛...很久沒看了,也 10/13 10:50
17F:→ Lipraxde: 不太記得相關的描述 QQ 10/13 10:50
18F:→ Killercat: 「程式設計師的自我修養」我記得前幾章就在講這個...XD 10/13 11:42
19F:推 KaryuuIssen: 執行檔不要編譯成PIC PIC會繞道存取(got/plt等等) 10/13 12:24
20F:→ KaryuuIssen: 另外PIC旨在程式段共享 資料段還是各自有各自的 10/13 12:25
21F:→ Lipraxde: 想避免 got/plt 應該是盡量用 static link 吧? 10/13 13:23
22F:→ ucrxzero: 繞道存取我查查看 感謝 10/13 15:33
23F:推 KaryuuIssen: L大 你回答的是另一個問題: .so跟.a的抉擇 這點讓 10/13 16:41
24F:→ KaryuuIssen: 原PO自己考慮XD 總之fPIC除了編譯Shared library外 10/13 16:42
25F:→ KaryuuIssen: 都不需要加 就算原po選了.so而沒加fPIC 編出來的 10/13 16:42
26F:→ KaryuuIssen: 執行檔存取Shared library的部份依然會是PIC 10/13 16:42
27F:→ Lipraxde: 恩恩,我誤會您前面的意思了 10/13 18:32
28F:→ ucrxzero: 了解了感謝 10/13 21:07
29F:推 kingofsdtw: 感謝,長知識了 10/15 02:07







like.gif 您可能會有興趣的文章
icon.png[問題/行為] 貓晚上進房間會不會有憋尿問題
icon.pngRe: [閒聊] 選了錯誤的女孩成為魔法少女 XDDDDDDDDDD
icon.png[正妹] 瑞典 一張
icon.png[心得] EMS高領長版毛衣.墨小樓MC1002
icon.png[分享] 丹龍隔熱紙GE55+33+22
icon.png[問題] 清洗洗衣機
icon.png[尋物] 窗台下的空間
icon.png[閒聊] 双極の女神1 木魔爵
icon.png[售車] 新竹 1997 march 1297cc 白色 四門
icon.png[討論] 能從照片感受到攝影者心情嗎
icon.png[狂賀] 賀賀賀賀 賀!島村卯月!總選舉NO.1
icon.png[難過] 羨慕白皮膚的女生
icon.png閱讀文章
icon.png[黑特]
icon.png[問題] SBK S1安裝於安全帽位置
icon.png[分享] 舊woo100絕版開箱!!
icon.pngRe: [無言] 關於小包衛生紙
icon.png[開箱] E5-2683V3 RX480Strix 快睿C1 簡單測試
icon.png[心得] 蒼の海賊龍 地獄 執行者16PT
icon.png[售車] 1999年Virage iO 1.8EXi
icon.png[心得] 挑戰33 LV10 獅子座pt solo
icon.png[閒聊] 手把手教你不被桶之新手主購教學
icon.png[分享] Civic Type R 量產版官方照無預警流出
icon.png[售車] Golf 4 2.0 銀色 自排
icon.png[出售] Graco提籃汽座(有底座)2000元誠可議
icon.png[問題] 請問補牙材質掉了還能再補嗎?(台中半年內
icon.png[問題] 44th 單曲 生寫竟然都給重複的啊啊!
icon.png[心得] 華南紅卡/icash 核卡
icon.png[問題] 拔牙矯正這樣正常嗎
icon.png[贈送] 老莫高業 初業 102年版
icon.png[情報] 三大行動支付 本季掀戰火
icon.png[寶寶] 博客來Amos水蠟筆5/1特價五折
icon.pngRe: [心得] 新鮮人一些面試分享
icon.png[心得] 蒼の海賊龍 地獄 麒麟25PT
icon.pngRe: [閒聊] (君の名は。雷慎入) 君名二創漫畫翻譯
icon.pngRe: [閒聊] OGN中場影片:失蹤人口局 (英文字幕)
icon.png[問題] 台灣大哥大4G訊號差
icon.png[出售] [全國]全新千尋侘草LED燈, 水草

請輸入看板名稱,例如:WOW站內搜尋

TOP