WebRTC:找不到构建目录

时间:2014-08-25 08:12:35

标签: android webrtc

我这样做,但没有构建/目录:

gclient config https://webrtc.googlecode.com/svn/trunk
echo "target_os = ['android', 'unix']" >> .gclient
gclient sync --nohooks

然后这里的主干看起来像:

cd trunk
ls -al
total 132K
-rw-rw-r--  1 robertwang robertwang 1.2K Aug 20 19:35 all.gyp
-rw-rw-r--  1 robertwang robertwang 2.2K Aug 20 19:35 Android.mk
-rw-rw-r--  1 robertwang robertwang 1.8K Aug 20 19:35 android-webrtc.mk
-rw-rw-r--  1 robertwang robertwang  683 Aug 20 19:34 AUTHORS
-rw-rw-r--  1 robertwang robertwang  508 Aug 20 19:35 BUILD.gn
drwxrwxr-x  8 robertwang robertwang 4.0K Aug 25 14:16 chromium
-rw-rw-r--  1 robertwang robertwang  315 Aug 20 19:35 codereview.settings
-rw-rw-r--  1 robertwang robertwang   22 Aug 20 19:35 COPYING
drwxrwxr-x  6 robertwang robertwang 4.0K Aug 20 19:35 data
-rw-rw-r--  1 robertwang robertwang 2.6K Aug 20 19:35 DEPS
-rw-rw-r--  1 robertwang robertwang  262 Aug 20 19:35 drover.properties
-rw-rw-r--  1 robertwang robertwang 4.7K Aug 20 19:35 libvpx.mk
-rw-rw-r--  1 robertwang robertwang   25 Aug 20 19:34 LICENSE
-rw-rw-r--  1 robertwang robertwang  410 Aug 20 19:35 license_template.txt
-rw-rw-r--  1 robertwang robertwang   66 Aug 20 19:35 LICENSE_THIRD_PARTY
-rw-rw-r--  1 robertwang robertwang  284 Aug 20 19:35 OWNERS
-rw-rw-r--  1 robertwang robertwang   22 Aug 20 19:35 PATENTS
-rwxrwxr-x  1 robertwang robertwang 9.3K Aug 20 19:35 PRESUBMIT.py
drwxrwxr-x 11 robertwang robertwang 4.0K Aug 20 19:35 resources
-rwxrwxr-x  1 robertwang robertwang  16K Aug 20 19:35 setup_links.py
-rwxrwxr-x  1 robertwang robertwang 3.3K Aug 20 19:35 sync_chromium.py
drwxrwxr-x 13 robertwang robertwang 4.0K Aug 20 19:35 talk
drwxrwxr-x  6 robertwang robertwang 4.0K Aug 20 19:35 third_party
drwxrwxr-x 11 robertwang robertwang 4.0K Aug 20 19:35 tools
-rw-rw-r--  1 robertwang robertwang 4.9K Aug 20 19:34 WATCHLISTS
drwxrwxr-x 15 robertwang robertwang 4.0K Aug 25 14:03 webrtc

我到底做错了什么?我正在克隆r6960

我找到了gist。基本上我按照以下说明操作:

1 个答案:

答案 0 :(得分:0)

当团队进行一些更改时,可能会出现一些迁移问题。

这是我在runhooks期间遇到的:

-> % gclient runhooks

________ running '/usr/bin/python -u trunk/sync_chromium.py --target-revision b1748b82e821777fb8cd843fd54ff3aeb220a215' in '/home/robertwang/libjingle'
Running "gclient sync --force --revision src@b1748b82e821777fb8cd843fd54ff3aeb220a215 --no-history --deps=android,unix" in /home/robertwang/libjingle/trunk/chromium

src (ERROR)
----------------------------------------
[0:00:00] Started.
[0:00:00] running 'git reset --hard HEAD' in '/home/robertwang/libjingle/trunk/chromium/src'
[0:00:02] Checking out files:   5% (3642/66084)   
[0:00:03] Checking out files:   8% (5563/66084)   
[0:00:04] Checking out files:  10% (6609/66084)   
[0:00:05] Checking out files:  17% (11235/66084)   
[0:00:06] Checking out files:  20% (13744/66084)   
[0:00:07] Checking out files:  25% (16521/66084)   
[0:00:08] Checking out files:  30% (19826/66084)   
[0:00:09] Checking out files:  33% (21808/66084)   
[0:00:10] Checking out files:  37% (24452/66084)   
[0:00:12] Checking out files:  41% (27627/66084)   
[0:00:13] Checking out files:  42% (27934/66084)   
[0:00:14] Checking out files:  48% (31721/66084)   
[0:00:15] Checking out files:  54% (35686/66084)   
[0:00:16] Checking out files:  59% (38990/66084)   
[0:00:18] Checking out files:  64% (42294/66084)   
[0:00:19] Checking out files:  72% (47581/66084)   
[0:00:20] Checking out files:  76% (50476/66084)   
[0:00:21] Checking out files:  81% (53675/66084)   
[0:00:22] Checking out files:  86% (56833/66084)   
[0:00:23] Checking out files:  94% (62119/66084)   
[0:00:24] Checking out files: 100% (66084/66084)   
[0:00:24] HEAD is now at d4b7102 Remove implicit conversions from scoped_refptr to T* in google_apis/
[0:00:24] _____ src : Attempting rebase onto b1748b82e821777fb8cd843fd54ff3aeb220a215...
[0:00:25] First, rewinding head to replay your work on top of it...
[0:00:25] Rebase produced error output:
error: The following untracked working tree files would be overwritten by checkout:
    apps/pref_names.cc
    apps/pref_names.h
    apps/prefs.cc
    apps/prefs.h
    athena/screen/public/screen_manager_delegate.h
    athena/test/test_screen_manager_delegate.cc
    athena/test/test_screen_manager_delegate.h
    content/browser/renderer_host/popup_menu_helper_mac.h
    content/browser/renderer_host/popup_menu_helper_mac.mm
    extensions/shell/browser/default_shell_app_window_controller.cc
    extensions/shell/browser/default_shell_app_window_controller.h
    mojo/shell/keep_alive.cc
    mojo/shell/keep_alive.h
    third_party/harfbuzz-ng/google.patch
Please move or remove them before you can switch branches.
Aborting
could not detach HEAD
----------------------------------------
Error: 1> Unrecognized error, please merge or rebase manually.
1> cd /home/robertwang/libjingle/trunk/chromium/src && git rebase --onto b1748b82e821777fb8cd843fd54ff3aeb220a215 refs/remotes/origin/master
Error: Command /usr/bin/python -u trunk/sync_chromium.py --target-revision b1748b82e821777fb8cd843fd54ff3aeb220a215 returned non-zero exit status 1 in /home/robertwang/libjingle
Hook '/usr/bin/python -u trunk/sync_chromium.py --target-revision b1748b82e821777fb8cd843fd54ff3aeb220a215' took 26.39 secs

所以它说有些文件需要移动(在/ trunk / chromium / src 下)。为了安全起见,我将它们移到了主干的外部的其他目录中。

然后我们可以将我们的屁股移回顶部(我的情况是〜/ libjingle)再次重做:

-> % gclient runhooks
Hook '/usr/bin/python -u trunk/sync_chromium.py --target-revision b1748b82e821777fb8cd843fd54ff3aeb220a215' took 675.72 secs

________ running '/usr/bin/python trunk/setup_links.py' in '/home/robertwang/libjingle'
Dangerous actions:
Planning to remove file: .gn
Planning to remove file: third_party/BUILD.gn
Planning to remove directory: build
Planning to remove directory: buildtools
Planning to remove directory: google_apis
Planning to remove directory: net
Planning to remove directory: testing
Planning to remove directory: third_party/android_testrunner
Planning to remove directory: third_party/android_tools
Planning to remove directory: third_party/binutils
Planning to remove directory: third_party/boringssl
Planning to remove directory: third_party/colorama
Planning to remove directory: third_party/expat
Planning to remove directory: third_party/icu
Planning to remove directory: third_party/jsoncpp
Planning to remove directory: third_party/libc++
Planning to remove directory: third_party/libc++abi
Planning to remove directory: third_party/libjpeg
Planning to remove directory: third_party/libjpeg_turbo
Planning to remove directory: third_party/libsrtp
Planning to remove directory: third_party/libvpx
Planning to remove directory: third_party/libyuv
Planning to remove directory: third_party/llvm-build
Planning to remove directory: third_party/openmax_dl
Planning to remove directory: third_party/opus
Planning to remove directory: third_party/protobuf
Planning to remove directory: third_party/sqlite
Planning to remove directory: third_party/usrsctp
Planning to remove directory: third_party/yasm
Planning to remove directory: tools/clang
Planning to remove directory: tools/generate_library_loader
Planning to remove directory: tools/gn
Planning to remove directory: tools/gyp
Planning to remove directory: tools/memory
Planning to remove directory: tools/protoc_wrapper
Planning to remove directory: tools/python
Planning to remove directory: tools/swarming_client
Planning to remove directory: tools/valgrind
Planning to remove directory: tools/win
@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@
                      A C T I O N     R E Q I R E D
@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@

Because chromium/src is transitioning to Git (from SVN), we needed to
change the way that the WebRTC standalone checkout works. Instead of
individually syncing subdirectories of Chromium in SVN, we're now
syncing Chromium (and all of its DEPS, as defined by its own DEPS file),
into the `chromium/src` directory.

As such, all Chromium directories which are currently pulled by DEPS are
now replaced with a symlink into the full Chromium checkout.

To avoid disrupting developers, we've chosen to not delete your
directories forcibly, in case you have some work in progress in one of
them :).

ACTION REQUIRED:
Before running `gclient sync|runhooks` again, you must run:
trunk/setup_links.py --force

Which will replace all directories which now must be symlinks, after
prompting with a summary of the work-to-be-done.


Error: Command /usr/bin/python trunk/setup_links.py returned non-zero exit status 1 in /home/robertwang/libjingle

所以基本上它说他们想将chrome src文件移到其他地方并节省开发人员的时间,请运行setup_links.py来保存任何进一步的问题。

好的,我们这样做:

-> % sudo trunk/setup_links.py
CleanupLinks
CreateLinks
Silently ignoring missing source: chromium/src/third_party/nss. This is to avoid errors on platform-specific dependencies.
Silently ignoring missing source: chromium/src/third_party/syzygy. This is to avoid errors on platform-specific dependencies.
Dangerous actions:
Planning to remove file: .gn
Planning to remove file: third_party/BUILD.gn
Planning to remove directory: build
Planning to remove directory: buildtools
Planning to remove directory: google_apis
Planning to remove directory: net
Planning to remove directory: testing
Planning to remove directory: third_party/android_testrunner
Planning to remove directory: third_party/android_tools
Planning to remove directory: third_party/binutils
Planning to remove directory: third_party/boringssl
Planning to remove directory: third_party/colorama
Planning to remove directory: third_party/expat
Planning to remove directory: third_party/icu
Planning to remove directory: third_party/jsoncpp
Planning to remove directory: third_party/libc++
Planning to remove directory: third_party/libc++abi
Planning to remove directory: third_party/libjpeg
Planning to remove directory: third_party/libjpeg_turbo
Planning to remove directory: third_party/libsrtp
Planning to remove directory: third_party/libvpx
Planning to remove directory: third_party/libyuv
Planning to remove directory: third_party/llvm-build
Planning to remove directory: third_party/openmax_dl
Planning to remove directory: third_party/opus
Planning to remove directory: third_party/protobuf
Planning to remove directory: third_party/sqlite
Planning to remove directory: third_party/usrsctp
Planning to remove directory: third_party/yasm
Planning to remove directory: tools/clang
Planning to remove directory: tools/generate_library_loader
Planning to remove directory: tools/gn
Planning to remove directory: tools/gyp
Planning to remove directory: tools/memory
Planning to remove directory: tools/protoc_wrapper
Planning to remove directory: tools/python
Planning to remove directory: tools/swarming_client
Planning to remove directory: tools/valgrind
Planning to remove directory: tools/win

Would you like to perform the above plan? [y/N]: y
Removing file: .gn
Removing file: third_party/BUILD.gn
Removing directory: build
Removing directory: buildtools
Removing directory: google_apis
Removing directory: net
Removing directory: testing
Removing directory: third_party/android_testrunner
Removing directory: third_party/android_tools
Removing directory: third_party/binutils
Removing directory: third_party/boringssl
Removing directory: third_party/colorama
Removing directory: third_party/expat
Removing directory: third_party/icu
Removing directory: third_party/jsoncpp
Removing directory: third_party/libc++
Removing directory: third_party/libc++abi
Removing directory: third_party/libjpeg
Removing directory: third_party/libjpeg_turbo
Removing directory: third_party/libsrtp
Removing directory: third_party/libvpx
Removing directory: third_party/libyuv
Removing directory: third_party/llvm-build
Removing directory: third_party/openmax_dl
Removing directory: third_party/opus
Removing directory: third_party/protobuf
Removing directory: third_party/sqlite
Removing directory: third_party/usrsctp
Removing directory: third_party/yasm
Removing directory: tools/clang
Removing directory: tools/generate_library_loader
Removing directory: tools/gn
Removing directory: tools/gyp
Removing directory: tools/memory
Removing directory: tools/protoc_wrapper
Removing directory: tools/python
Removing directory: tools/swarming_client
Removing directory: tools/valgrind
Removing directory: tools/win
Linking from tools/find_depot_tools.py to chromium/src/tools/find_depot_tools.py
Linking from .gn to chromium/src/.gn
Linking from third_party/BUILD.gn to chromium/src/third_party/BUILD.gn
Linking from build to chromium/src/build
Linking from buildtools to chromium/src/buildtools
Linking from google_apis to chromium/src/google_apis
Linking from net to chromium/src/net
Linking from testing to chromium/src/testing
Linking from third_party/android_testrunner to chromium/src/third_party/android_testrunner
Linking from third_party/android_tools to chromium/src/third_party/android_tools
Linking from third_party/binutils to chromium/src/third_party/binutils
Linking from third_party/boringssl to chromium/src/third_party/boringssl
Linking from third_party/colorama to chromium/src/third_party/colorama
Linking from third_party/drmemory to chromium/src/third_party/drmemory
Linking from third_party/expat to chromium/src/third_party/expat
Linking from third_party/icu to chromium/src/third_party/icu
Linking from third_party/jsoncpp to chromium/src/third_party/jsoncpp
Linking from third_party/libc++ to chromium/src/third_party/libc++
Linking from third_party/libc++abi to chromium/src/third_party/libc++abi
Linking from third_party/libjpeg to chromium/src/third_party/libjpeg
Linking from third_party/libjpeg_turbo to chromium/src/third_party/libjpeg_turbo
Linking from third_party/libsrtp to chromium/src/third_party/libsrtp
Linking from third_party/libvpx to chromium/src/third_party/libvpx
Linking from third_party/libyuv to chromium/src/third_party/libyuv
Linking from third_party/llvm-build to chromium/src/third_party/llvm-build
Linking from third_party/openmax_dl to chromium/src/third_party/openmax_dl
Linking from third_party/opus to chromium/src/third_party/opus
Linking from third_party/protobuf to chromium/src/third_party/protobuf
Linking from third_party/sqlite to chromium/src/third_party/sqlite
Linking from third_party/usrsctp to chromium/src/third_party/usrsctp
Linking from third_party/yasm to chromium/src/third_party/yasm
Linking from tools/clang to chromium/src/tools/clang
Linking from tools/generate_library_loader to chromium/src/tools/generate_library_loader
Linking from tools/gn to chromium/src/tools/gn
Linking from tools/gyp to chromium/src/tools/gyp
Linking from tools/memory to chromium/src/tools/memory
Linking from tools/protoc_wrapper to chromium/src/tools/protoc_wrapper
Linking from tools/python to chromium/src/tools/python
Linking from tools/swarming_client to chromium/src/tools/swarming_client
Linking from tools/valgrind to chromium/src/tools/valgrind
Linking from tools/win to chromium/src/tools/win
Completed!

Now run `gclient sync|runhooks` again to let the remaining hooks (that probably were interrupted) execute.

最后我们到了这里,走吧!

-> % gclient runhooks

完成时间不应超过1分钟。如需参考,请确保剩余足够的磁盘空间。为了编译这个东西我扩大磁盘空间只是为了得到一个简单的Android apk文件。 :(

查看目录大小

-> % du -sh trunk/*
4.0K    trunk/all.gyp
4.0K    trunk/Android.mk
4.0K    trunk/android-webrtc.mk
4.0K    trunk/AUTHORS
0   trunk/build
4.0K    trunk/BUILD.gn
0   trunk/buildtools
12G trunk/chromium
4.0K    trunk/codereview.settings
4.0K    trunk/COPYING
31M trunk/data
4.0K    trunk/DEPS
4.0K    trunk/drover.properties
0   trunk/google_apis
8.0K    trunk/libvpx.mk
4.0K    trunk/LICENSE
4.0K    trunk/license_template.txt
4.0K    trunk/LICENSE_THIRD_PARTY
12K trunk/links
0   trunk/net
1.2G    trunk/out
4.0K    trunk/OWNERS
4.0K    trunk/PATENTS
12K trunk/PRESUBMIT.py
351M    trunk/resources
16K trunk/setup_links.py
4.0K    trunk/sync_chromium.py
28M trunk/talk
0   trunk/testing
1.9M    trunk/third_party
14M trunk/tools
8.0K    trunk/WATCHLISTS
29M trunk/webrtc

祝你好运。 (欢呼)