原來我不懂編譯安裝!

2021-08-30 05:57:00 字數 1166 閱讀 7640

[size=medium]以下引用:

我建議對「lamp」構架應用不太熟悉的朋友直接使用系統提供的二進位制**安裝——假如不是有什麼特殊需求的話,比如領導強制要求必須使用最新版本的**或者有特殊需求,比如有自己的「[url=其官方提供的二進位制**理論上是經過官方的技術人員的優化、以及多方測試的,甚至比不太熟悉的人用源**編譯得來的二進位制,效能更高。隨便說一下,這也是我覺得「伺服器版」與「通用版本」之間可能存在的微弱或者重大的差別。[color=darkblue][b]並且,網上很多文章均使用源**的方式安裝程式,而很少有提及編譯時strip**的問題,這真是乙個諷刺,對「優化」、「效能」如此注重之人,卻使用包含著「symbols」(編譯成生二進位制程式時為除錯和診斷而保留的非必需的結構)的二進位制(strip之後,效能提高不敢亂言,至少檔案大小會有驚人的變化:php-cgi strip之前12m,strip之後只有3m,無壓力情況下,php-cgi占用的記憶體由5.5m降低到1.8m——資料僅供參考。)[/b][/color]。系統提供的二進位制,絕大多數都是「striped」的(使用file命令可以檢視到二進位制檔案的相關資訊)——不敢妄言「全部」,因為隱約記得[url=是乙個聲稱像openbsd一樣安全的linux系統)的系統上,發現過沒有strip過的二進位制,可能是謬誤。

即然提到了strip,隨便也說一下如何strip二進位制,linux提供了事後strip程式的工具「strip」命令:

1. 檢視程式是否是」striped」的

假如需要strip,那麼

即可!另外,其實編譯**的時候可以要求生成」striped」的**,絕大多數開源**,make裡都提供了該引數,就是install-strip,即在編譯完之後安裝的時候,使用install-strip而不是install來strip程式再安裝。

mysql安裝的時候使用make install-strip即可。

apache要在./configure 時,加上 ldflags=』-s』 的選項即可。

php則需要在./configure之前,先執行一下export ldflags=』-s』 (bash環境)。

可以細讀金步國的作品:[url=深入理解軟體包的配置、編譯與安裝[/url]。

寫給自己:

原來我什麼都不懂!虛心學習![/size]

原來我不懂 he

曾經以為自己是個很堅強的人,即使失去愛情,也可以活出自己的精彩 其實不是,我不明白為什麼人總要在經歷一些事情之後才能多了解自己一點,如果一切都可以避免,就不會這麼無奈了!曾經以為自己是世界上最幸福的人,即使失去一切,我還有愛情,其實不是,直到有一天他和我說對不起的時候我就知道一切都是自己在騙自己,以...

我不懂法律

今天聽廣播,講到了乙個案例,請了乙個律師做嘉賓,案例是什麼已經不重要了,主要是,我在聽廣播的時候,突然想起乙個問題,覺得很有意思,我是不懂法律的啦,所以就寫出來,讓大家批評.大概我真正有了一定的思考能力以來,基本上都生活在廣東,可以看到很多香港的電視劇集,雖然電視中的都是戲,但也從一定程度上了解了香...

我真不懂margin

平時很多問題,大多是知其然不知其所以然造成的。所以,明白了原理,在遇到問題就有了分析的思路。所以,我希望大家在遇到非標準的問題的時候,也就所謂的某些bug的時候,多去探查一下,為什麼會產生這種問題。解決的原理是什麼,別解決了就算完了。現在的省事,會給你將來的成長埋下隱患。而往往所謂的bug,是對規範...