關於移植jSON編譯時報錯sbrkr.c:(.text+0xc): undefined reference to `_sbrk'處理
最近有個專案需要用到jSON函式,在移植了jSON後編譯報錯如下:sbrkr.c:(.text+0xc): undefined reference to `_sbrk'。
通過百度查詢知道原來是GCC編譯器不支援malloc、free、memcpy、strlen等函式導致的,正常在嵌入式系統開發過程中都會遇到這個問題。
正好這個專案是使用移遠M26模組的OpenCPU開發的,好巧不巧的我就遇到了這個問題。網上解決的方法挺多,五花八門,我感覺不需要那麼麻煩 ,原始碼又不長、簡單粗暴一點(我比較喜歡的處理事情的方式之一)。既然是不支援導致的,那就想辦法找一下替代函式好了,正好OpenCPU SDK提供的檔案中有相關的實現函式。所以我就直接用相關函式替換進去,編譯通過了,專案得以順利進行。下面上傳一下原始碼和移植好的程式碼。
如有疑問,歡迎大傢俬信討論。
相關推薦
關於移植jSON編譯時報錯sbrkr.c:(.text+0xc): undefined reference to `_sbrk39;處理
最近有個專案需要用到jSON函式,在移植了jSON後編譯報錯如下:sbrkr.c:(.text+0xc): undefined reference to `_sbrk'。 通過百度查詢知道原來是GCC編譯器不支援malloc、free、memcpy、strlen等函式導致的,正常在嵌入式系統
Linux程式設計時使用gcc編譯.c出現以下問題,pthread.c:(.text+0x29): undefined reference to `pthread_create39;collect2: err
Linux程式設計時使用gcc編譯.c出現以下問題 client.c:(.text+0x13e): undefined reference to `pthread_create' collect2: ld 返回 1 解決方法如下: 只需在用gcc編譯時加上-pthread選項即
gcc xx.c:(.text+0x11): undefined reference to `sqrt'
gcc prime.c -o prime報錯 undefined reference to `sqrt’ 由於程式碼中使用了math庫中的sqrt方法, 所以要這樣寫 gcc prime
thread_join.c:(.text+0x6f): undefined reference to `pthread_create' 問題的解決
今天在測試一個執行緒例子時,結果出現如下錯誤 [[email protected] fzf]# gcc thread_join.c -o thread_join /tmp/cc1HozRv.o: In function `main': thread_join.
minigui:解決gvfb編譯報錯undefined reference to symbol 39;XkbGetIndicatorState39;
minigui在linux PC平臺建立開發環境時,需要Virtual Frame Buffer 支援(gvfb,qvfb),minigui官網提供了這兩個程式的原始碼,需要自己下載編譯並安裝到自己的PC上。 我用的是gvfb,minigui下載地址:http://www.minig
Clion lua 編譯報錯: undefined reference to `lual_newstate39; 在win10上面編譯lua5.3.5以及解決方法
在CmakeLists.txt裡面新增: ``` include_directories("D:\\lua\\lua-5.3.5\\lua-5.3.5\\dist\\include") link_directories("D:\\lua\\lua-5.3.5\\lua-5.3.5
庫依賴錯誤導致main.c:(.text+0x7): undefined reference問題
最近在Linux下程式設計發現一個詭異的現象,就是在連結一個靜態庫的時候總是報錯,類似下面這樣的錯誤: (.text+0x13): undefined reference to `func' 關於undefined reference這樣的問題,大家其實
ffmpeg:libavformat/http.c:1435: error: undefined reference to 39;inflateEnd39;
安卓動態庫編譯過程中遇到了一個ffmpeg相關的報錯,具體資訊如下: libavformat/http.c:1435: error: undefined reference to 'inflateEnd' libavformat/http.c:626: error: undefined re
ffmpeg:libavfilter/vf_elbg.c:169: error: undefined reference to 39;avpriv_init_elbg39;
ffmpeg編譯過程中遇到的一個報錯,具體資訊如下: -e [info] [*] link ffmpeg -------------------- libavfilter/vf_elbg.c:169: error: undefined reference to 'avpriv_init_el
「caffe編譯bug」.build_release/lib/libcaffe.so: undefined reference to cv::imread
轉自:https://www.douban.com/note/568788483/ CXX/LD -o .build_release/tools/convert_imageset.bin.build_release/lib/libcaffe.so: undefined reference to cv::im
ubuntu16.04下編譯caffe出現.build_release/lib/libcaffe.so: undefined reference to google ::protobuf…的問題
人工智慧/機器學習/深度學習交流QQ群:811460433 程式設計師深度學習微信公眾號: ubuntu16.04下編譯caffe出現.build_release/lib/libcaffe.so: undefined reference to google ::protobuf…的
ubuntu16.04下編譯caffe出現.build_release/lib/libcaffe.so: undefined reference to google ::protobuf...的問題
----------------------------------------------------------------------------------------------為什麼會出現undefined reference to 'xxxxx'錯誤?首先這是連
編譯錯誤:undefined reference to `__umoddi3'的處理
用gcc 4.3編譯kernel 2.6.22,結果出現:undefined reference to `__umoddi3'這樣的錯誤。查google是gcc 4.3太新的問題,在更新的kernel應該沒有這個問題,解決的辦法如下:cd kernelvi Makefile找
Linux C/C++ 開發遇到 undefined reference to xxx
環境 CentOS 7.3 CodeBlocks 16.01 gcc 4.9.4 wxGTK 3.0.2 非常簡單的應用。例如: test.h #ifndef TEST_H_INCLUDED #define TEST_H_INCLUDED void test(); #end
c/c++中出現“undefined reference to”的解決
undefined reference to”的意思是,該函式未定義。 如果使用的是gcc,有以下檢查方案: 如果提示未定義的函式是某個庫的函式。檢查庫時候已經安裝,並在編譯命令中採用-l和-L引數匯入庫。 如果提示未定義的函式是程式中的函式。檢查是否在標頭檔案中宣告
test.cpp:(.text+0xc0): undefined reference to `cv::imread(std::string const&, int)39;
defined mpi x11 -c nal pil enc lib issue opencv報錯: test.cpp:(.text+0xc0): undefined reference to `cv::imread(std::string const&, int
Nginx添加openssl模塊編譯時報錯問題
nginx openssl如題所示,報錯信息如下:/bin/sh: line 2: ./config: No such file or directory make[1]: *** [/usr/local/ssl/.openssl/include/openssl/ssl.h] Error 127 make[1
maven編譯時報錯:致命錯誤: 在類路徑或引導類路徑中找不到程式包 java.lang
在Windows中可以正常編譯執行的maven工程,在linux用jenkins打包編譯時出錯[ERROR] 致命錯誤: 在類路徑或引導類路徑中找不到程式包 java.lang 是因為windows和linux分隔符有差異Windows下使用分號(;),MAC
java中使用javac編譯時報錯:未報告的異常 java.net.MalformedURLException;必須對其進行捕捉或宣告以便丟擲
AndyMacBookPro:push andy$ javac push.java push.java:7: 未報告的異常 java.net.MalformedURLException;必須對其進行捕捉或宣告以便丟擲 url = new URL(urlStr
【我的Android進階之旅】解決AndroidStudio編譯時報錯:Timeout waiting to lock artifact cache .
1、 錯誤描述 今天在Android Studio中,使用gradle命令的時候,出現瞭如下所示的錯誤: D:\GitLab Source\XTCLint>gradlew clean uploadArchives --stacktrace Star