導航:首頁 > 源碼編譯 > 編譯過程出現文本未定義參照

編譯過程出現文本未定義參照

發布時間:2025-06-14 10:34:21

『壹』 c語言編寫51單片機程序時出現未定義是為什麼

sbit P10=p^0 少了分號,而且定義埠最右邊的p要大寫. TH0=(655535-1000)/256;TL0=(65535-1000)%256;這里的是延時,這里只用看1000就知道延時1ms,如果裡面的1000換成10000就是延時10ms

『貳』 I單片機中編譯出現 main 中引用的未定義的外部「 timel _ init」怎麼解決

如果出現了為定義的外部的這個就可以直接刪除啊,或者是定義它的具體意思

『叄』 交叉編譯時提示 對'__C_ctype_b'的未定義引用

出現這種情況的原因,主要是C/C++編譯為obj文件的時候並不旅賣需要函數的具體實現,只要有函數的原型即可。但是在鏈接為可執行文件的時候就必須要具體的實現了。如果錯誤是未聲明的引用,那就是找不到函數的原型,解決辦法這里就不細致說了,通常是相關的頭文件未包含。
解決辦法
指定原因就好辦了,既然知道是缺少了函數的喊昌具體實現,那麼就給它這個函數的實現就好了。比如上面的例子,是因為缺失了dlopen、dlsym、dlerror、dlclose這些函數的實現,這幾個函數是用於載入動態鏈接庫的,編譯的時候需要添加-ldl來使用dl庫(這是靜態庫,在系統目錄下/usr/lib/i386-linux-gnu/libdl.a、/usr/lib/x86_64-linux-gnu/libdl.a)。
但是看上面編譯的時候是有添加-ldl選項的,那麼為什麼不行呢?
gcc 依賴順序問題
這個主要的原因是gcc編譯的時候,各個文件依賴順序的問題。
在gcc編譯的時候,如果文件a依賴於文件b,那麼編譯的時候必須把a放前面,b放後面。
例如:在main.c中使用了pthread庫相關函數,那麼編譯的時候必須是main.c在前,-lpthread在後。gcc main.c -lpthread -o a.out。
上面拆滲逗出現問題的原因就是引入庫的順序在前面了,將其放置在後面即可了。
g++ -o spider bloomfilter.o confparser.o crc32.o dso.o hashs.o md5.o qstring.o sha1.o socket.o spider.o threads.o url.o -rdynamic -lpthread -levent -lcrypt -ldl

『肆』 急:EXCEL文件第一次打開時提示「編譯錯誤:子過程或函數未定義」,如何讓其不再顯示

方法一、禁用宏 :點擊菜單「工具-宏-安全性」,選擇「高」或者「非常高」。但這樣一來,所有宏都無法使用

方法二、刪除錯誤的宏:出現這個提示是因為宏的編寫有錯誤,因此點擊菜單「工具-宏-Visual Basic編輯器」,找到當前工作簿中的所有宏,完全刪除並保存即可

閱讀全文

與編譯過程出現文本未定義參照相關的資料

熱點內容
刪除pdf文件中某一頁 瀏覽:786
三星冰箱壓縮機是國產 瀏覽:601
我的世界伺服器如何清理維護 瀏覽:148
a12方舟編譯器 瀏覽:153
androidwebview內容自適應 瀏覽:305
微信地圖app哪個好 瀏覽:346
哪個app可以看男才女貌 瀏覽:191
哪個app可以買平價好看的包包 瀏覽:463
解壓綵球怎麼做 瀏覽:864
電視如何連接雲伺服器 瀏覽:763
find命令aix 瀏覽:789
無人機航拍怎麼連接安卓手機教程 瀏覽:42
dsp原理與應用pdf 瀏覽:133
現代漢語黃伯榮pdf 瀏覽:463
微信公眾號gif壓縮 瀏覽:962
黑客攻防實戰詳解pdf 瀏覽:755
手機哪個app可以玩單機游戲 瀏覽:154
查看mysql版本命令 瀏覽:212
手機app反編譯出來都是abc 瀏覽:545
加密款睫毛好嗎 瀏覽:192