我正在編寫一個必須使用math.h中定義的pow函數的c項目。 當我試圖做這個項目時,gcc給出了以下鏈接錯誤: 未定義的對'pow'的引用。有關連接數學庫的一些問題
我知道-lm選項必須添加到我的鏈接指令中,但仍有幾個問題困擾着我。
Q1:當我將兩個常量傳入pow函數時,鏈接成功時沒有-lm。爲什麼? Q2:-lm處於鏈接指令的末尾或開始時會產生不同的結果。 gcc -lm $(OBJS)-o exbin是錯誤的,但是gcc $(OBJS)-o exbin -lm是正確的。爲什麼?
我使用的是Ubuntu 11.10和gcc 4.4.4。
謝謝!請原諒我的英語水池。
爲了使用標準的math.h,你不需要任何特殊的鏈接器選項。 'pow'需要2個參數,這就是爲什麼當你正確使用它時它不會給你錯誤。 – Perception 2012-04-10 03:45:43