本文主要是介绍拷贝别人编译好的的aosp后自己编译报错FAIL: TestFs_ListDirsRecursiveDontFollowSymlinks,希望对大家解决编程问题提供一定的参考价值,需要的开发者们随着小编来一起学习吧!
在使用scp -r拷贝别人的sdk后编译无法通过pathtools测试,原因是拷贝时把链接也当成了真实的文件或者目录,尤其是拷贝build目录时会残留之前别人编译的文件夹。
FAILED: out/soong/.bootstrap/blueprint-pathtools/test/test.passed
out/soong/.bootstrap/bin/gotestrunner -p ./build/blueprint/pathtools -f out/soong/.bootstrap/blueprint-pathtools/test/test.passed -- out/soong/.bootstrap/blueprint-pathtools/test/test -test.short
--- FAIL: TestFs_ListDirsRecursiveDontFollowSymlinks (0.00s)--- FAIL: TestFs_ListDirsRecursiveDontFollowSymlinks/os (0.00s)--- FAIL: TestFs_ListDirsRecursiveDontFollowSymlinks/os/relpath (0.00s)--- FAIL: TestFs_ListDirsRecursiveDontFollowSymlinks/os/relpath/. (0.00s)fs_test.go:287: want: [. a a/a], got [. a a/a b b/a c d]--- FAIL: TestFs_ListDirsRecursiveDontFollowSymlinks/os/abspath (0.00s)--- FAIL: TestFs_ListDirsRecursiveDontFollowSymlinks/os/abspath/. (0.00s)fs_test.go:287: want: [/mnt/rk356x-android11-V1.1.5/build/blueprint/pathtools/testdata/dangling /mnt/rk356x-android11-V1.1.5/build/blueprint/pathtools/testdata/dangling/a /mnt/rk356x-android11-V1.1.5/build/blueprint/pathtools/testdata/dangling/a/a], got [/mnt/rk356x-android11-V1.1.5/build/blueprint/pathtools/testdata/dangling /mnt/rk356x-android11-V1.1.5/build/blueprint/pathtools/testdata/dangling/a /mnt/rk356x-android11-V1.1.5/build/blueprint/pathtools/testdata/dangling/a/a /mnt/rk356x-android11-V1.1.5/build/blueprint/pathtools/testdata/dangling/b /mnt/rk356x-android11-V1.1.5/build/blueprint/pathtools/testdata/dangling/b/a /mnt/rk356x-android11-V1.1.5/build/blueprint/pathtools/testdata/dangling/c /mnt/rk356x-android11-V1.1.5/build/blueprint/pathtools/testdata/dangling/d]--- FAIL: TestFs_ListDirsRecursiveDontFollowSymlinks/os_relative_srcDir (0.00s)--- FAIL: TestFs_ListDirsRecursiveDontFollowSymlinks/os_relative_srcDir/relpath (0.00s)--- FAIL: TestFs_ListDirsRecursiveDontFollowSymlinks/os_relative_srcDir/relpath/. (0.00s)fs_test.go:287: want: [. a a/a], got [. a a/a b b/a c d]--- FAIL: TestFs_ListDirsRecursiveDontFollowSymlinks/os_relative_srcDir/absp
解决方法,重新拷贝build或者其他提示xxx redefine重定义的文件夹。使用rsync代替scp,或者先压缩再拷贝。
rsync -avz -e ssh /path/to/source user@remote:/path/to/destination
-a 表示归档模式,递归复制,并保持符号链接、权限、时间戳等。
-z 表示压缩数据传输。
-e ssh 指定使用 ssh 作为传输协议。
使用cp时:可以使用 -P 或 --no-dereference 选项。cp 的选项说明-P 或 --no-dereference:这两个选项告诉 cp 在复制符号链接时,不要跟随符号链接指向的目标,而是将符号链接本身复制。
这篇关于拷贝别人编译好的的aosp后自己编译报错FAIL: TestFs_ListDirsRecursiveDontFollowSymlinks的文章就介绍到这儿,希望我们推荐的文章对编程师们有所帮助!