error: 'LOGE' was not declared in this scope

移植了下HAL,发现编译出现如下错误

error: 'LOGE' was not declared in this scope

比较了一下android4.1的 system/core/include/cutils/log.h和android4.0的对应文件,

发现在4.1当中已经将所有的LOG宏前面加了一个字母A 。所以出现上述编译错误。

修改HAL层源码:将LOGE   LOGD等等全部加个A

方法:


sed  -i  "s/LOG/ALOG/g"  `grep  LOG  -rl  .`




附上一个linux中的字符串查找替换用法:

Linux 下各种查找替换字符串的办法  

2009-03-12 10:54:13|  分类: Linux |字号 订阅
1、在vi中使用的查找替换方法 
利用 :s 命令可以实现字符串的替换。具体的用法包括: 
:s/str1/str2/ 用字符串 str2 替换行中首次出现的字符串 str1 
:s/str1/str2/g 用字符串 str2 替换行中所有出现的字符串 str1 
:.,$ s/str1/str2/g 用字符串 str2 替换正文当前行到末尾所有出现的字符串 str1 
:1,$ s/str1/str2/g 用字符串 str2 替换正文中所有出现的字符串 str1 
:g/str1/s//str2/g 功能同上从上述替换命令可以看到:g 放在命令末尾,表示对搜索字符串的每次出现进行替换;不加 g,表示只对搜索字符串的首次出现进行替换;g 放在命令开头,表示对正文中所有包含搜索字符串的行进行替换操作。

2、在shell中使用find结合grep进行文件的替换 
# find ./ -exec grep str1 ‘{}’ \; -exec sed -i.bak s/str1/str2/g ‘{}’ \; 
上面命令可以在当前目录下(包括子目录)查找包含str1的文件,自动替换成str2,并且生成源文件的bak文件 


3、sed Linux下批量替换多个文件中的字符串的简单方法


用sed命令可以批量替换多个文件中的字符串。 
用sed命令可以批量替换多个文件中的字符串。
sed -i "s/原字符串/新字符串/g" `grep 原字符串 -rl 所在目录`
例如:我要把aaa替换为bbb,执行命令:
sed -i "s/aaa/bbb/g" 'grep aaa -rl /www'
这是目前linux最简单的批量替换字符串命令了!


具体格式如下: 
sed -i "s/oldString/newString/g" `grep oldString -rl /path`
实例代码:sed -i "s/123/456/g" `grep 123 -rl /usr/aa`
sed -i "s/123/456/g" `grep 123 -rl ./`

千万注意:gerp前面的符号是Tab键上方的那个 `  ,而不是单引号!

你可能感兴趣的:(error: 'LOGE' was not declared in this scope)