armeabi-v7a编译cpp文件的错误

时间:2015-02-24 07:02:14

标签: android c++ compiler-errors android-ndk

我正在使用getline函数并使用ndk进行编译,但我收到错误:

'getline' was not declared in this scope

是由于armeabi-v7a的限制还是由于glib而导致的错误?如何解决相同的功能。

I have already #define _GNU_SOURCE before <stdio.h>

1 个答案:

答案 0 :(得分:0)

通常,当您遇到此类错误时,您将转到NDK目录并使用Midnight Commander(Linux)或Far Manager(Windows,Linux + Wine)来搜索文件(文件掩码:*.h )对于你的函数,在这种情况下getline。您将获得一系列搜索结果,并且您可以 #include 找到正确的文件。

偶尔会找不到你的功能;在这种情况下,您可以在网上搜索可以借用来源的地方。

有时,被移植的代码中的函数没有任何意义,例如如果函数从stdin读取一行但是要调用它的程序不是命令行实用程序,则会出现问题。

很可能,你为Linux,Mac(Darwin)和Windows移植了 #define -s的源代码,你必须选择正确的配置来从中获取Android配置(可能是Mac one将是最好的。