[英]Can the ARM assembly code compiled by RVCT compiler run on an android device?
[英]Header files for c code compiled by arm-gcc compiler
我在將要使用arm-gcc編譯器編譯的ac代碼中使用了string.h頭文件,並且生成的可執行文件將在android設備上執行。 當我將可執行文件推送到設備上並執行該設備時,它向我顯示了鏈接錯誤。 如何在這樣的設備上使用string.h中的函數? 這些頭文件是硬件專用的嗎?
ARM EABI聲明,獨立於庫的來源,編譯器應提供ANSI C庫的頭文件。 但是,如果要交叉編譯,則必須確保使用的是編譯器附帶的string.h
而不是本機系統的string.h
。 您得到什么鏈接錯誤?
聽起來libc
缺少strstr
,這聽起來很奇怪,我對此沒有任何解釋。 如果您可以訪問設備上的庫,那么我將使用objdump -t
檢查它是否定義了strstr
。
如何在這樣的設備上使用string.h中的函數?
過去對我有用。
這些頭文件是硬件專用的嗎?
使用NDK工具,它們特定於體系結構和平台(例如,Android 8,Android 14等)。
除非NDK中存在嚴重錯誤(這似乎不太可能),否則我認為您可能想再次檢查構建。
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.