移植了下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
方法:
`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