gcc編譯帶mathh的程式加,gcc編譯帶math h的程式,加 lm引數也沒用

時間 2022-02-01 20:43:52

1樓:金色潛鳥

是不是環境變數

c_include_path

cplus_include_path

沒設好。

-----------

例如:c 程式要求

$ c_include_path=/opt/gdbm-1.8.3/include

$ export c_include_pathc++ 程式要求

$ cplus_include_path=/opt/gdbm-1.8.3/include

$ export cplus_include_path-----

編譯時,命令列可以用 -i 新增路徑 /usr/local/include 或 /usr/include -- 看你的include安裝在**。

2樓:匿名使用者

報錯的是ld階段,表示連結失敗,找不到squr函式,根本原因是找不到libm.so。跟math.h標頭檔案沒有任何關係,標頭檔案有問題的話在預處理階段編譯之前就會報錯了。

你的-lm估計加的地方不對,要確保在連結階段新增,不是編譯的時候。

3樓:栩箭

makefile 貼來瞅瞅

g++編譯引數 -lm 是什麼意思

4樓:匿名使用者

g++編譯程式成為.o目標函式,然後需要和庫函式連線到一起-l是傳遞給link程式叫它連線某些庫函式-lm是連線數學庫

如果沒-lm那些三角函式啊,超越函式啊,都沒法連線成功的

如何在linux下,用gcc連線math.h庫函式?

5樓:板唱

gcc -o a.exe a.c /usr/lib/libm.a

6樓:匿名使用者

你輸出的檔案加exe字尾幹嗎?

加上#include "stdio.h"

編譯時用gcc -o a a.c -lm

7樓:

問題是:

scanf和printf需要#include "stdio.h"

問類似問題請給出報錯資訊

請問我有一個.so檔案,如何在linux下程式設計使用呢?

8樓:鯤之大一鍋燉不下化而為鳥其名為鵬

安裝個開發工具 然後編譯就行了 redhat在安裝的時候選擇自定義就可以安裝開發工具 make 然後make install

9樓:擁雲莊主

linux下的.so檔案為共享庫,相當於windows下的dll檔案,使用方法如下:

在你的工程源**裡包含.h標頭檔案,然後可以呼叫動態庫裡的函式,在連結的時候加上如下編譯器引數:

-l xx.so

如果你的so檔案是以lib開頭的,還可以直接這樣使用:

-lxx

xx是你的.so檔名

其實使用方法和你使用數學庫函式是一樣的,源**中新增#include ,編譯的時候,加上-lm引數。

10樓:213456俺說的

動態連結庫,呼叫,寫c語言時用的。放在編譯的資料夾裡面。包含進去.h就行了、、、、、、、、

11樓:匿名使用者

*.so 就是linux 下的動態連結庫,具體:

12樓:匿名使用者

你去查查動態連結庫怎麼使用吧,我只懂c語言,這個不太瞭解。

plc程式編譯是幹什麼的,PLC程式編譯是幹什麼的

泰和數控 編譯1 利用編譯程式從源語言編寫的源程式產生目標程式的過程。2 用編譯程式產生目標程式的動作。編譯就是把高階語言變成計算機可以識別的2進位制語言,計算機只認識1和0,編譯程式把人們熟悉的語言換成2進位制的。編譯程式把一個源程式翻譯成目標程式的工作過程分為五個階段 詞法分析 語法分析 語義檢...

gcc和vc有什麼區別呢vc編譯時用的編譯器相

嘎嘎嘎哈哈哈嘿嘿嘿 vc 是ide,也就是整合開發環境,其中,包含,文字編輯器,編譯器等開發工具鏈。而gcc是c 編譯器,linux下專用的c,c 編譯器,它不是ide。gcc可以和vc 中包含的編譯器等同。換句話說,linux下的c 開發,需要一系列工具,如,netbeans,atom等編輯器,再...

如何檢視程式被哪個版本編譯器編譯的

gcc v 很簡答的一個知識。所有的linux程式都可以使用這個命令檢視版本資訊。以後要是遇到了linux方面的問題,shell程式設計,linux系統管理問題,都可以幫到大家。希望採納 linux如何檢視是否已安裝gcc 執行gcc v命令,如果linux系統沒有安裝gcc編譯器,會提示 comm...