Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Runtime error with NDK stl #392

Closed
XperielIndigo opened this issue Aug 25, 2015 · 71 comments
Closed

Runtime error with NDK stl #392

XperielIndigo opened this issue Aug 25, 2015 · 71 comments
Assignees

Comments

@XperielIndigo
Copy link

Hi,

I've just updated to the latest commit (8e5d60a9811f18e5c57132fd5d6eb1ccf448e7fd), and now my C++ will compile but fail at runtime when running mobile-install. It fails with

java.lang.UnsatisfiedLinkError: dlopen failed: cannot locate symbol "_ZNSaIcEC1Ev" reference by "libmylibrary.so"

That symbol represents std::allocator<char>::allocator().

When I remove usage of std::string from my C++ file it runs just fine.

When I search this people seem to talk about setting APP_STL in Application.mk, what is the equivalent value for bazel?

@ahumesky
Copy link
Contributor

Do you see the same error when you build the apk and install the app using adb?

@XperielIndigo
Copy link
Author

Yes, just tried bazel build //my/apk/path adb install path/to/generated/apk

@ahumesky ahumesky self-assigned this Aug 25, 2015
@ahumesky
Copy link
Contributor

Hmm, yes, it looks like the standard libraries aren't being added correctly. I'll take a look.

@XperielIndigo
Copy link
Author

Okay, please let me know if there is a fix I can do locally. Thanks Alex

@XperielIndigo
Copy link
Author

Hi Alex, any update you can provide?

@XperielIndigo
Copy link
Author

Using git bisect I have found that the commit that broke it is a2e2cc2

@XperielIndigo
Copy link
Author

Before that commit I also can't use std::future (which is a limitation on the standard STL used in the NDK). From my reading it seems we can add support if we use a different STL implementation (e.g. stlport), which we can do by creating our own toolchain with the android make-standalone-toolchain.sh script (provided by the NDK). Where does bazel determine which android ndk compiler to use? The CROSSTOOL file in tools/cpp has /bin/false for all tools in the armeabi-v7a toolchains.

@ekuefler
Copy link
Contributor

ekuefler commented Sep 1, 2015

Is this going to be fixed before the upcoming release? This is blocking for us.

@ahumesky
Copy link
Contributor

ahumesky commented Sep 1, 2015

The commits in a2e2cc2 added support for the different kinds of STL implementations available in the NDK, in addition to the different architectures, however STL support is still incomplete. I hope to get this solved very soon.

@XperielIndigo
Copy link
Author

So how do we specify which STL we want to use?

@ahumesky
Copy link
Contributor

ahumesky commented Sep 1, 2015

The generated Android NDK crosstool needs to be updated to allow specifying the different STL implementations from the command line. If you look at /bazel-/external//BUILD, you'll see that all the default_toolchain entries are for libstdc++, and there needs to be an extra entry for each cpu for the other STL implementations. Then you can do, for example, --android_cpu=armeabi-v7a for the default STL implementation, or --android_cpu=armeabi-v7a-stlport to get stlport. I plan to get to that after fixing the runtime errors.

@XperielIndigo
Copy link
Author

So can you give an ETA on that? is there someway I can hard code the stl value? In about 2 days I'm going to have to start writing make files if there isn't a workaround.

@ahumesky
Copy link
Contributor

ahumesky commented Sep 2, 2015

You can change the default CPUs here: https://github.com/bazelbuild/bazel/blob/master/src/main/java/com/google/devtools/build/lib/bazel/rules/android/ndkcrosstools/AndroidNdkCrosstools.java#L169
It's all currently hardcoded and after STL is fixed I'll change it to have the other STL implementations.

@ulfjack
Copy link
Contributor

ulfjack commented Sep 2, 2015

There is a workaround in the sense that you can customize everything already. The big question is what needs to be changed.

The android_ndk_repository rule is 'just' a convenience wrapper for new_local_repository that auto-generates a BUILD file to configure the NDK. If you previously ran a build, then bazel-clientname/external/androidndk/ actually contains the auto-generated BUILD file - it's pretty big at ~15k lines.

In my client, this file actually contains a set of -stlport targets. However, IIUC, you can't just select the right one from the command line. And you can't edit the file in bazel-clientname because bazel will just overwrite it in the next run.

However, I think you could copy the BUILD file and switch to new_local_repository, add a bind rule to map the target into external, change the cc_toolchain_suite to point at the -stlport targets, and that ought to work. I didn't try it myself, though.

On the other hand, it shouldn't be too difficult to change the android_ndk_repository rule to generate an stlport cc_toolchain_suite target. What's a bit surprising is that there aren't stlport targets for all target architectures. I'm not sure if that's a shortcoming of the ndk or a bug in the repository rule.

@ulfjack
Copy link
Contributor

ulfjack commented Sep 2, 2015

Or what Alex said. Pfff. Way too easy.

@ahumesky
Copy link
Contributor

ahumesky commented Sep 2, 2015

Right, the generated crosstool for the NDK has the toolchain entry in the proto and the cc_toolchain rules for the other STL implementations, they just need default_toolchain entries in the proto so you can select it via --android_cpu=x86-stlport (for example). The runtime problems are just more important to fix at the moment.

@ulfjack
Copy link
Contributor

ulfjack commented Sep 2, 2015

Alex found a workaround, but it's not very nice - he's adding a cc_library with the stdc++ .a file to the deps of the android_binary.

@ahumesky
Copy link
Contributor

ahumesky commented Sep 2, 2015

Actually I was using libgnustl_static.a

cc_library(
name = "libgnustl_static",
srcs = ["libgnustl_static.a"],
)
which is in for example:
/sources/cxx-stl/gnu-libstdc++/4.8/libs/armeabi

The crosstool file defaults to gnu libstdc++.

It's looking like this will take some more time to solve, so Indigo, in the meantime, can you see if this workaround works for you?

@XperielIndigo
Copy link
Author

I can't test that until the #415 issue is resolved. Also, should I be adding that cc_library to the android_binary as ulfjack suggests or should I be adding it to the my top-level cc_library (which is currently the only cc_library included by the android_binary)?

@ahumesky
Copy link
Contributor

ahumesky commented Sep 2, 2015

The libgnustl_static should be added as a dep of the cc_library: android_binary -> cc_library -> cc_library

@ahumesky
Copy link
Contributor

ahumesky commented Sep 2, 2015

Note that you should still be able to test this with plain bazel build and adb install

@XperielIndigo
Copy link
Author

Oh, good idea, I'll try that now.

@XperielIndigo
Copy link
Author

No luck. I run

sudo bazel build src/main/java/com/xperiel/android/api:wrapper

then

adb install bazel-bin/src/main/java/com/xperiel/android/api/wrapper.apk

It still fails trying to find std::__node_alloc::_M_allocate(unsigned int&)

@ahumesky
Copy link
Contributor

ahumesky commented Sep 2, 2015

I'm able to build and run the code below. Do you have an idea of what STL thing might be triggering the problem? I'm using string and sstream below.

android_binary(
    name = "hello_world",
    srcs = glob([
        "MainActivity.java",
        "Jni.java",
    ]),
    legacy_native_support = 0,
    manifest = "AndroidManifest.xml",
    deps = [
        ":jni",
    ],
)

cc_library(
    name = "jni",
    srcs = ["jni.cc"],
    linkopts = [
        "-Wl,-lm",  # can't find 'acos' without this
    ],
    deps = [":libgnustl_static"],
)

cc_library(
  name = "libgnustl_static",
  srcs = ["libgnustl_static.a"],
)

and jni.cc is:

#include <jni.h>
#include <string>
#include <iostream>
#include <sstream>

extern "C" JNIEXPORT jstring JNICALL
Java_bazel_Jni_hello(JNIEnv *env, jclass clazz) {
  std::ostringstream stream;
  stream << "hello world";
  std::string str =  stream.str();
  const char* chr = str.c_str();
  return env->NewStringUTF(chr);
}

@ulfjack
Copy link
Contributor

ulfjack commented Sep 3, 2015

I have a fix, I think.

@ulfjack ulfjack closed this as completed in d0496cc Sep 3, 2015
@ulfjack ulfjack reopened this Sep 3, 2015
@ulfjack
Copy link
Contributor

ulfjack commented Sep 3, 2015

The fix is not quite complete. It's not correct for the non-default toolchains, but it should at least get it to work with the default toolchains.

@XperielIndigo
Copy link
Author

We target build-tools 21.1.2. file /path/to/android-sdk/build-tools/21.1.2/aapt gives /usr/local/share/android-sdk/build-tools/21.1.2/aapt: Mach-O executable i386 (note: also the same as 23.0.0-preview/aapt).

otool -L gives

/usr/local/share/android-sdk/build-tools/21.1.2/aapt:
    /usr/lib/libz.1.dylib (compatibility version 1.0.0, current version 1.2.5)
    /usr/lib/libstdc++.6.dylib (compatibility version 7.0.0, current version 52.0.0)
    /usr/lib/libSystem.B.dylib (compatibility version 1.0.0, current version 159.1.0)

otool -L on 23.0.0-preview/aapt gives:

/usr/local/share/android-sdk/build-tools/23.0.0-preview/aapt:
    @rpath/libc++.dylib (compatibility version 0.0.0, current version 0.0.0)
    /usr/lib/libz.1.dylib (compatibility version 1.0.0, current version 1.2.5)
    /usr/lib/libSystem.B.dylib (compatibility version 1.0.0, current version 169.3.0)

I'm running Mac OS X 10.10.4 (14E46)

@XperielIndigo
Copy link
Author

But as I say in my post above, the error seems to be a file not found error. It is trying to find aapt in bin/external (doesn't seem right).

@damienmg
Copy link
Contributor

damienmg commented Sep 4, 2015

ls -l /private/var/tmp/_bazel_root/8965add7011578a5d33385a234e6a985/Master/bazel-out/local_darwin-fastbuild/bin/external/androidsdk/aapt_binary: line 5: /private/var/tmp/_bazel_root/8965add7011578a5d33385a234e6a985/Master/bazel-out/local_darwin-fastbuild/bin/external/androidsdk/aapt_binary.runfiles//private/var/tmp/_bazel_root/8965add7011578a5d33385a234e6a985/Master/bazel-out/local_darwin-fastbuild/bin/external/androidsdk/build-tools/21.1.2/aapt ?

And following the symlink?

@XperielIndigo
Copy link
Author

/private/var/tmp/_bazel_indigo/8965add7011578a5d33385a234e6a985/Master/bazel-out/local_darwin-fastbuild/bin/external/androidsdk/aapt_binary -> /private/var/tmp/_bazel_indigo/8965add7011578a5d33385a234e6a985/Master/bazel-out/local_darwin-fastbuild/genfiles/external/androidsdk/aapt_runner.sh

/private/var/tmp/_bazel_root/8965add7011578a5d33385a234e6a985/Master/bazel-out/local_darwin-fastbuild/bin/external/androidsdk/aapt_binary.runfiles//private/var/tmp/_bazel_root/8965add7011578a5d33385a234e6a985/Master/bazel-out/local_darwin-fastbuild/bin/external/androidsdk/build-tools/21.1.2/aapt doesn't exist

@damienmg
Copy link
Contributor

damienmg commented Sep 4, 2015

I guess you tried
/private/var/tmp/_bazel_root/8965add7011578a5d33385a234e6a985/Master/bazel-out/local_darwin-fastbuild/bin/external/androidsdk/build-tools/21.1.2/aapt

not /private/var/tmp/_bazel_root/8965add7011578a5d33385a234e6a985/Master/bazel-out/local_darwin-fastbuild/bin/external/androidsdk/aapt_binary.runfiles//private/var/tmp/_bazel_root/8965add7011578a5d33385a234e6a985/Master/bazel-out/local_darwin-fastbuild/bin/external/androidsdk/build-tools/21.1.2/aapt

What do you have in /private/var/tmp/_bazel_root/8965add7011578a5d33385a234e6a985/Master/bazel-out/local_darwin-fastbuild/bin/external/androidsdk/build-tools?

@XperielIndigo
Copy link
Author

That path doesn't exist for me (i even tried the path given in the failure for bazel build).

@damienmg
Copy link
Contributor

damienmg commented Sep 4, 2015

oh. Can you try to use bazel at head and remove your
"android_local_tools_repository" from the workspace to test?

What does your WORKSPACE looks like?

On Fri, Sep 4, 2015 at 6:38 PM Indigo Orton notifications@github.com
wrote:

That path doesn't exist for me (i even tried the path given in the failure
for bazel build).


Reply to this email directly or view it on GitHub
#392 (comment).

@XperielIndigo
Copy link
Author

Ok, commented it out. Same error as above.

My WORKSPACE now has:

#android_local_tools_repository(
#    name="android_tools",
#    path="/opt/bazel")

android_sdk_repository(
  name="androidsdk",
  path="/usr/local/share/android-sdk",
  api_level=19,
  build_tools_version="21.1.2")

android_ndk_repository(
  name="androidndk",
  path="/usr/local/share/android-ndk",
  api_level=19)

# Lots of maven_jars, http_archives

@damienmg
Copy link
Contributor

damienmg commented Sep 4, 2015

Can you post a gist when doing a bazel build with '-s'? there's definitely several things that are wrong

@XperielIndigo
Copy link
Author

After clean this is what build -s gave:

INFO: Found 1 target...
>>>>> # //src/main/java/com/xperiel/android/api:wrapper [action 'Processing resources']
(cd /private/var/tmp/_bazel_root/8965add7011578a5d33385a234e6a985/Master && \
  exec env - \
  bazel-out/local_darwin-fastbuild/bin/external/default_android_tools/tools/android/resources_processor --aapt bazel-out/local_darwin-fastbuild/bin/external/androidsdk/aapt_binary --annotationJar external/androidsdk/tools/support/annotations.jar --androidJar external/androidsdk/platforms/android-19/android.jar --primaryData ::src/main/java/com/xperiel/android/api/AndroidManifest.xml --generatedSourcePath src/main/java/com/xperiel/android/api/_resources/wrapper --srcJarOutput bazel-out/local_darwin-fastbuild/bin/src/main/java/com/xperiel/android/api/wrapper.srcjar --proguardOutput bazel-out/local_darwin-fastbuild/bin/src/main/java/com/xperiel/android/api/proguard/wrapper/_wrapper_proguard.cfg --packagePath bazel-out/local_darwin-fastbuild/bin/src/main/java/com/xperiel/android/api/wrapper.ap_ --debug --packageForR com.xperiel.android.api)
INFO: From Processing resources:
Error: /private/var/tmp/_bazel_root/8965add7011578a5d33385a234e6a985/Master/bazel-out/local_darwin-fastbuild/bin/external/androidsdk/aapt_binary: line 5: /private/var/tmp/_bazel_root/8965add7011578a5d33385a234e6a985/Master/bazel-out/local_darwin-fastbuild/bin/external/androidsdk/aapt_binary.runfiles//private/var/tmp/_bazel_root/8965add7011578a5d33385a234e6a985/Master/bazel-out/local_darwin-fastbuild/bin/external/androidsdk/build-tools/21.1.2/aapt: No such file or directory
Sep 04, 2015 12:20:19 PM com.google.devtools.build.android.AndroidResourceProcessingAction main
SEVERE: Error during processing resources
com.android.ide.common.internal.LoggedErrorException: Failed to run command:
    /private/var/tmp/_bazel_root/8965add7011578a5d33385a234e6a985/Master/bazel-out/local_darwin-fastbuild/bin/external/androidsdk/aapt_binary package -f --no-crunch -I external/androidsdk/platforms/android-19/android.jar -M /private/var/tmp/_bazel_root/8965add7011578a5d33385a234e6a985/Master/src/main/java/com/xperiel/android/api/AndroidManifest.xml -m -J src/main/java/com/xperiel/android/api/_resources/wrapper -F bazel-out/local_darwin-fastbuild/bin/src/main/java/com/xperiel/android/api/wrapper.ap_ -G bazel-out/local_darwin-fastbuild/bin/src/main/java/com/xperiel/android/api/proguard/wrapper/_wrapper_proguard.cfg --debug-mode --custom-package com.xperiel.android.api -0 apk
Error Code:
    1
Output:
    /private/var/tmp/_bazel_root/8965add7011578a5d33385a234e6a985/Master/bazel-out/local_darwin-fastbuild/bin/external/androidsdk/aapt_binary: line 5: /private/var/tmp/_bazel_root/8965add7011578a5d33385a234e6a985/Master/bazel-out/local_darwin-fastbuild/bin/external/androidsdk/aapt_binary.runfiles//private/var/tmp/_bazel_root/8965add7011578a5d33385a234e6a985/Master/bazel-out/local_darwin-fastbuild/bin/external/androidsdk/build-tools/21.1.2/aapt: No such file or directory

    at com.android.ide.common.internal.CommandLineRunner.runCmdLine(CommandLineRunner.java:123)
    at com.android.ide.common.internal.CommandLineRunner.runCmdLine(CommandLineRunner.java:96)
    at com.android.ide.common.internal.CommandLineRunner.runCmdLine(CommandLineRunner.java:76)
    at com.android.builder.core.AndroidBuilder.processResources(AndroidBuilder.java:1129)
    at com.google.devtools.build.android.AndroidResourceProcessor.processResources(AndroidResourceProcessor.java:127)
    at com.google.devtools.build.android.AndroidResourceProcessingAction.main(AndroidResourceProcessingAction.java:322)

ERROR: /Users/indigo/development/Master/src/main/java/com/xperiel/android/api/BUILD:1:1: Processing resources failed: resources_processor failed: error executing command bazel-out/local_darwin-fastbuild/bin/external/default_android_tools/tools/android/resources_processor --aapt bazel-out/local_darwin-fastbuild/bin/external/androidsdk/aapt_binary --annotationJar ... (remaining 16 argument(s) skipped): com.google.devtools.build.lib.shell.BadExitStatusException: Process exited with status 2.
Target //src/main/java/com/xperiel/android/api:wrapper failed to build
Use --verbose_failures to see the command lines of failed build steps.
INFO: Elapsed time: 0.603s, Critical Path: 0.32s

@XperielIndigo
Copy link
Author

Ok, I updated to ab4abc4 and tried to build the example hello_world... and it works! Even when I add in std::future, std::mutex a few of the c++11 things that I was getting worried about (though I did have to add -std=c++11 to copts). Yay!

However, when I went back to my project and tried building it got the exact same issue as before. My build rules are practically the same. Posting below for comparison:

android_binary(
  name = "wrapper",
  srcs = ["MainActivity.java"],
  manifest = "AndroidManifest.xml",
  legacy_native_support = 0,
  deps = [
    ":api",
    ":jni",
  ],
)

android_library(
  name = "api",
  srcs = glob(["*.java"], exclude = ["MainActivity.java"]),
)

cc_library(
  name = "jni",
  srcs = ["NativeWrapperJni.cc"],
  hdrs = ["NativeWrapperJni.h"],
  copts = ["-std=c++11"],
)

@XperielIndigo
Copy link
Author

When I copy the bazel example directory (examples/android/java/bazel) to my workspace it fails with the same issue. So somehow my workspace is in a bad state. One that bazel clean doesn't fix.

@ulfjack
Copy link
Contributor

ulfjack commented Sep 5, 2015

Try bazel shutdown if you haven't already.

On Sat, Sep 5, 2015 at 4:40 AM, Indigo Orton notifications@github.com
wrote:

When I copy the bazel example directory (examples/android/java/bazel) to
my workspace it fails with the same issue. So somehow my workspace is in a
bad state. One that bazel clean doesn't fix.


Reply to this email directly or view it on GitHub
#392 (comment).

@XperielIndigo
Copy link
Author

Just tried, no luck.

@XperielIndigo
Copy link
Author

A colleague tried the same build in our workspace and it worked fine. Very odd, something about my environment then for this issue. About to try cloning into a clean area.

@XperielIndigo
Copy link
Author

Ok, very odd. When I cloned a new repo (my own repo, not bazel) the bazel example (I had copied in previously, see above) worked in it. However, when I ran a build on my android_binary target (shown above) I get the aapt error. Now whenever I run build on any android target the aapt error occurs.

@XperielIndigo
Copy link
Author

I created a gist containing the output of build -s on an android_binary in a newly cloned repository. This command resulted in the missing aapt file error.

Gist here: https://gist.github.com/XperielIndigo/a564fb57fdaa4093e67a

@XperielIndigo
Copy link
Author

Looking at the path that is failing:
/private/var/tmp/_bazel_root/373fe016a982fda7060b14fd6dde0bd1/Master/bazel-out/local_darwin-fastbuild/bin/external/androidsdk/aapt_binary.runfiles//private/var/tmp/_bazel_root/373fe016a982fda7060b14fd6dde0bd1/Master/bazel-out/local_darwin-fastbuild/bin/external/androidsdk/build-tools/21.1.2/aapt

it seems like the script is wanting to access an absolute path but instead is hitting a relative one (aapt_binary.runfiles//private).

@ulfjack
Copy link
Contributor

ulfjack commented Sep 6, 2015

Do you have a file here?

/private/var/tmp/_bazel_root/373fe016a982fda7060b14fd6dde0b
d1/Master/bazel-out/local_darwin-fastbuild/bin/external/
androidsdk/aapt_binary.runfiles/external/androidsdk/build-tools/21.1.2/aapt

On Sat, Sep 5, 2015 at 10:39 PM, Indigo Orton notifications@github.com
wrote:

Looking at the path that is failing:

/private/var/tmp/_bazel_root/373fe016a982fda7060b14fd6dde0bd1/Master/bazel-out/local_darwin-fastbuild/bin/external/androidsdk/aapt_binary.runfiles//private/var/tmp/_bazel_root/373fe016a982fda7060b14fd6dde0bd1/Master/bazel-out/local_darwin-fastbuild/bin/external/androidsdk/build-tools/21.1.2/aapt

it seems like the script is wanting to access an absolute path but instead
is hitting a relative one (aapt_binary.runfiles//private).


Reply to this email directly or view it on GitHub
#392 (comment).

@XperielIndigo
Copy link
Author

I managed to get around the issue by changing src/main/java/com/google/devtools/build/lib/bazel/rules/android/android_sdk_repository_template.txt a bit to reference absolute paths for aapt and apkbuilder. I'll post about my changes soon (I just want to get everything running for my deadline).

For now I'm having another issue with documentation (see: #426).

@ahumesky
Copy link
Contributor

ahumesky commented Sep 9, 2015

Thanks for your patience here Indigo. If things are compiling correctly for you I'll close this bug. Let us know if you're still having trouble.

@ahumesky ahumesky closed this as completed Sep 9, 2015
@XperielIndigo
Copy link
Author

Hi all,

So my fix ended up being two changes to src/main/java/com/google/devtools/build/lib/bazel/rules/android/android_sdk_repository_template.txt

1> Line 60:
"exec $${SDK}/build-tools/%build_tools_version%/" + tool + " $$*" -> "exec /hard/coded/path/to/android-sdk/build-tools/%build_tools_version%/" + tool + " $$*"

2> Line 140:
"APKBUILDER=$${0}.runfiles/$${DIRNAME}/apkbuilder" -> "APKBUILDER=$${DIRNAME}/apkbuilder"

Is there some nicer (read: not hard coded) fix that can be implemented in bazel master?

@forfish
Copy link

forfish commented Mar 15, 2016

Hi all, I'm learning something about Tensorflow!But when I run this:bazel build -c opt tensorflow/tools/pip_package:build_pip_package.It got this error.What is the matter?3Q very much!
error

@kchodorow
Copy link
Contributor

What does your WORKSPACE file look like?

@forfish
Copy link

forfish commented Mar 23, 2016

I don't have any change about WORKSPACE! This is the original file:

# Uncomment and update the paths in these entries to build the Android demo.
#android_sdk_repository(
#    name = "androidsdk",
#    api_level = 23,
#    build_tools_version = "23.0.1",
#    # Replace with path to Android SDK on your system
#    path = "<PATH_TO_SDK>",
#)
#
#android_ndk_repository(
#    name="androidndk",
#    path="<PATH_TO_NDK>",
#    api_level=21)

# Please add all new TensorFlow dependencies in workspace.bzl.
load("//tensorflow:workspace.bzl", "tf_workspace")
tf_workspace()

# TENSORBOARD_BOWER_AUTOGENERATED_BELOW_THIS_LINE_DO_NOT_EDIT

new_git_repository(
  name = "d3",
  build_file = "bower.BUILD",
  remote = "https://github.com/mbostock-bower/d3-bower.git",
  tag = "v3.5.15",
)

new_git_repository(
  name = "dagre",
  build_file = "bower.BUILD",
  remote = "https://github.com/cpettitt/dagre.git",
  tag = "v0.7.4",
)

new_git_repository(
  name = "es6_promise",
  build_file = "bower.BUILD",
  remote = "https://github.com/components/es6-promise.git",
  tag = "v2.1.0",
)

new_git_repository(
  name = "font_roboto",
  build_file = "bower.BUILD",
  remote = "https://github.com/PolymerElements/font-roboto.git",
  tag = "v1.0.1",
)

new_git_repository(
  name = "graphlib",
  build_file = "bower.BUILD",
  remote = "https://github.com/cpettitt/graphlib.git",
  tag = "v1.0.7",
)

new_git_repository(
  name = "iron_a11y_keys_behavior",
  build_file = "bower.BUILD",
  remote = "https://github.com/polymerelements/iron-a11y-keys-behavior.git",
  tag = "v1.1.1",
)

new_git_repository(
  name = "iron_ajax",
  build_file = "bower.BUILD",
  remote = "https://github.com/PolymerElements/iron-ajax.git",
  tag = "v1.1.1",
)

new_git_repository(
  name = "iron_autogrow_textarea",
  build_file = "bower.BUILD",
  remote = "https://github.com/PolymerElements/iron-autogrow-textarea.git",
  tag = "v1.0.12",
)

new_git_repository(
  name = "iron_behaviors",
  build_file = "bower.BUILD",
  remote = "https://github.com/PolymerElements/iron-behaviors.git",
  tag = "v1.0.13",
)

new_git_repository(
  name = "iron_checked_element_behavior",
  build_file = "bower.BUILD",
  remote = "https://github.com/PolymerElements/iron-checked-element-behavior.git",
  tag = "v1.0.4",
)

new_git_repository(
  name = "iron_collapse",
  build_file = "bower.BUILD",
  remote = "https://github.com/PolymerElements/iron-collapse.git",
  tag = "v1.0.6",
)

new_git_repository(
  name = "iron_dropdown",
  build_file = "bower.BUILD",
  remote = "https://github.com/polymerelements/iron-dropdown.git",
  tag = "v1.2.0",
)

new_git_repository(
  name = "iron_fit_behavior",
  build_file = "bower.BUILD",
  remote = "https://github.com/PolymerElements/iron-fit-behavior.git",
  tag = "v1.0.6",
)

new_git_repository(
  name = "iron_flex_layout",
  build_file = "bower.BUILD",
  remote = "https://github.com/polymerelements/iron-flex-layout.git",
  tag = "v1.3.1",
)

new_git_repository(
  name = "iron_form_element_behavior",
  build_file = "bower.BUILD",
  remote = "https://github.com/PolymerElements/iron-form-element-behavior.git",
  tag = "v1.0.6",
)

new_git_repository(
  name = "iron_icon",
  build_file = "bower.BUILD",
  remote = "https://github.com/polymerelements/iron-icon.git",
  tag = "v1.0.8",
)

new_git_repository(
  name = "iron_icons",
  build_file = "bower.BUILD",
  remote = "https://github.com/polymerelements/iron-icons.git",
  tag = "v1.1.3",
)

new_git_repository(
  name = "iron_iconset_svg",
  build_file = "bower.BUILD",
  remote = "https://github.com/PolymerElements/iron-iconset-svg.git",
  tag = "v1.0.9",
)

new_git_repository(
  name = "iron_input",
  build_file = "bower.BUILD",
  remote = "https://github.com/PolymerElements/iron-input.git",
  tag = "1.0.8",
)

new_git_repository(
  name = "iron_list",
  build_file = "bower.BUILD",
  remote = "https://github.com/PolymerElements/iron-list.git",
  tag = "v1.1.7",
)

new_git_repository(
  name = "iron_menu_behavior",
  build_file = "bower.BUILD",
  remote = "https://github.com/PolymerElements/iron-menu-behavior.git",
  tag = "v1.1.4",
)

new_git_repository(
  name = "iron_meta",
  build_file = "bower.BUILD",
  remote = "https://github.com/polymerelements/iron-meta.git",
  tag = "v1.1.1",
)

new_git_repository(
  name = "iron_overlay_behavior",
  build_file = "bower.BUILD",
  remote = "https://github.com/polymerelements/iron-overlay-behavior.git",
  tag = "v1.4.2",
)

new_git_repository(
  name = "iron_range_behavior",
  build_file = "bower.BUILD",
  remote = "https://github.com/PolymerElements/iron-range-behavior.git",
  tag = "v1.0.4",
)

new_git_repository(
  name = "iron_resizable_behavior",
  build_file = "bower.BUILD",
  remote = "https://github.com/polymerelements/iron-resizable-behavior.git",
  tag = "v1.0.3",
)

new_git_repository(
  name = "iron_selector",
  build_file = "bower.BUILD",
  remote = "https://github.com/PolymerElements/iron-selector.git",
  tag = "v1.2.4",
)

new_git_repository(
  name = "iron_validatable_behavior",
  build_file = "bower.BUILD",
  remote = "https://github.com/PolymerElements/iron-validatable-behavior.git",
  tag = "v1.0.5",
)

new_git_repository(
  name = "lodash",
  build_file = "bower.BUILD",
  remote = "https://github.com/lodash/lodash.git",
  tag = "3.10.1",
)

new_git_repository(
  name = "neon_animation",
  build_file = "bower.BUILD",
  remote = "https://github.com/polymerelements/neon-animation.git",
  tag = "v1.1.1",
)

new_git_repository(
  name = "paper_behaviors",
  build_file = "bower.BUILD",
  remote = "https://github.com/PolymerElements/paper-behaviors.git",
  tag = "v1.0.11",
)

new_git_repository(
  name = "paper_button",
  build_file = "bower.BUILD",
  remote = "https://github.com/PolymerElements/paper-button.git",
  tag = "v1.0.11",
)

new_git_repository(
  name = "paper_checkbox",
  build_file = "bower.BUILD",
  remote = "https://github.com/PolymerElements/paper-checkbox.git",
  tag = "v1.1.3",
)

new_git_repository(
  name = "paper_dropdown_menu",
  build_file = "bower.BUILD",
  remote = "https://github.com/PolymerElements/paper-dropdown-menu.git",
  tag = "v1.1.3",
)

new_git_repository(
  name = "paper_header_panel",
  build_file = "bower.BUILD",
  remote = "https://github.com/PolymerElements/paper-header-panel.git",
  tag = "v1.1.4",
)

new_git_repository(
  name = "paper_icon_button",
  build_file = "bower.BUILD",
  remote = "https://github.com/PolymerElements/paper-icon-button.git",
  tag = "v1.0.6",
)

new_git_repository(
  name = "paper_input",
  build_file = "bower.BUILD",
  remote = "https://github.com/PolymerElements/paper-input.git",
  tag = "v1.1.3",
)

new_git_repository(
  name = "paper_item",
  build_file = "bower.BUILD",
  remote = "https://github.com/PolymerElements/paper-item.git",
  tag = "v1.1.4",
)

new_git_repository(
  name = "paper_material",
  build_file = "bower.BUILD",
  remote = "https://github.com/polymerelements/paper-material.git",
  tag = "v1.0.6",
)

new_git_repository(
  name = "paper_menu",
  build_file = "bower.BUILD",
  remote = "https://github.com/PolymerElements/paper-menu.git",
  tag = "v1.2.2",
)

new_git_repository(
  name = "paper_menu_button",
  build_file = "bower.BUILD",
  remote = "https://github.com/polymerelements/paper-menu-button.git",
  tag = "v1.0.4",
)

new_git_repository(
  name = "paper_progress",
  build_file = "bower.BUILD",
  remote = "https://github.com/PolymerElements/paper-progress.git",
  tag = "v1.0.8",
)

new_git_repository(
  name = "paper_radio_button",
  build_file = "bower.BUILD",
  remote = "https://github.com/PolymerElements/paper-radio-button.git",
  tag = "v1.1.1",
)

new_git_repository(
  name = "paper_radio_group",
  build_file = "bower.BUILD",
  remote = "https://github.com/PolymerElements/paper-radio-group.git",
  tag = "v1.0.9",
)

new_git_repository(
  name = "paper_ripple",
  build_file = "bower.BUILD",
  remote = "https://github.com/PolymerElements/paper-ripple.git",
  tag = "v1.0.5",
)

new_git_repository(
  name = "paper_slider",
  build_file = "bower.BUILD",
  remote = "https://github.com/PolymerElements/paper-slider.git",
  tag = "v1.0.8",
)

new_git_repository(
  name = "paper_styles",
  build_file = "bower.BUILD",
  remote = "https://github.com/PolymerElements/paper-styles.git",
  tag = "v1.1.1",
)

new_git_repository(
  name = "paper_tabs",
  build_file = "bower.BUILD",
  remote = "https://github.com/PolymerElements/paper-tabs.git",
  tag = "v1.2.4",
)

new_git_repository(
  name = "paper_toggle_button",
  build_file = "bower.BUILD",
  remote = "https://github.com/PolymerElements/paper-toggle-button.git",
  tag = "v1.0.12",
)

new_git_repository(
  name = "paper_toolbar",
  build_file = "bower.BUILD",
  remote = "https://github.com/PolymerElements/paper-toolbar.git",
  tag = "v1.1.2",
)

new_git_repository(
  name = "plottable",
  build_file = "bower.BUILD",
  remote = "https://github.com/palantir/plottable.git",
  tag = "v1.16.1",
)

new_git_repository(
  name = "polymer",
  build_file = "bower.BUILD",
  remote = "https://github.com/Polymer/polymer.git",
  tag = "v1.3.1",
)

new_git_repository(
  name = "promise_polyfill",
  build_file = "bower.BUILD",
  remote = "https://github.com/polymerlabs/promise-polyfill.git",
  tag = "v1.0.0",
)

new_git_repository(
  name = "web_animations_js",
  build_file = "bower.BUILD",
  remote = "https://github.com/web-animations/web-animations-js.git",
  tag = "2.1.4",
)

new_git_repository(
  name = "webcomponentsjs",
  build_file = "bower.BUILD",
  remote = "https://github.com/Polymer/webcomponentsjs.git",
  tag = "v0.7.21",
[)]

@ahumesky
Copy link
Contributor

It seem from the error "The first argument of load() is a path, not a label" that you're using an older version of bazel. Updating bazel might fix the issue.

@forfish
Copy link

forfish commented Mar 24, 2016

hello! ahumesky, My bazel is the latest for now !
information:
user01@user01-forfish:~$ bazel version
Build label: 0.2.0-homebrew
Build target: bazel-out/local_linux-fastbuild/bin/src/main/java/com/google/devtools/build/lib/bazel/BazelServer_deploy.jar
Build time: Fri Mar 18 03:03:04 2016 (1458270184)
Build timestamp: 1458270184
Build timestamp as int: 1458270184

@davidzchen
Copy link
Member

@forfish FYI I made a minor edit to your comment to format the WORKSPACE file contents you pasted as code so that it will be easier for us to look at.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

No branches or pull requests

8 participants