project-chip / connectedhomeip

Matter (formerly Project CHIP) creates more connections between more objects, simplifying development for manufacturers and increasing compatibility for consumers, guided by the Connectivity Standards Alliance.
https://buildwithmatter.com
Apache License 2.0
7.39k stars 1.98k forks source link

[Build] Building Android chip-tools from scripts fails #33212

Open KhushbuShah25 opened 5 months ago

KhushbuShah25 commented 5 months ago

Build issue(s) - Building Android chip-tools from scripts fails

  1. Clone latest code from the repo. Updated submodules recursively.
  2. Followed below steps as mentioned in android_building.md
export ANDROID_HOME=/Users/myuser/Library/Android/sdk
export ANDROID_NDK_HOME=/Users/myuser/Library/Android/sdk/ndk/27.0.11718014
export JAVA_HOME=/Applications/Android\ Studio.app/Contents/jbr/Contents/Home

source scripts/bootstrap.sh
Screenshot 2024-04-29 at 2 41 57 PM
  1. After that, run the following command ./scripts/build/build_examples.py --target android-arm64-chip-tool build

Facing below error while running above command.

2024-04-29 12:46:48 INFO    Building targets: android-arm64-chip-tool
2024-04-29 12:46:48 INFO    Preparing builder 'android-arm64-chip-tool'
2024-04-29 12:46:48 INFO    Generating /Users/myuser/connectedhomeip/out/android-arm64-chip-tool
2024-04-29 12:46:48 INFO    Setting up Android deps through Gradle
2024-04-29 12:46:48 INFO    Starting a Gradle Daemon (subsequent builds will be faster)
2024-04-29 12:46:50 INFO    > Task :buildSrc:compileJava NO-SOURCE
2024-04-29 12:46:50 INFO    > Task :buildSrc:compileGroovy
2024-04-29 12:46:50 INFO    > Task :buildSrc:processResources NO-SOURCE
2024-04-29 12:46:50 INFO    > Task :buildSrc:classes
2024-04-29 12:46:50 INFO    > Task :buildSrc:jar
2024-04-29 12:46:50 INFO    > Task :buildSrc:assemble
2024-04-29 12:46:50 INFO    > Task :buildSrc:compileTestJava NO-SOURCE
2024-04-29 12:46:50 INFO    > Task :buildSrc:compileTestGroovy NO-SOURCE
2024-04-29 12:46:50 INFO    > Task :buildSrc:processTestResources NO-SOURCE
2024-04-29 12:46:50 INFO    > Task :buildSrc:testClasses UP-TO-DATE
2024-04-29 12:46:50 INFO    > Task :buildSrc:test NO-SOURCE
2024-04-29 12:46:50 INFO    > Task :buildSrc:check UP-TO-DATE
2024-04-29 12:46:50 INFO    > Task :buildSrc:build
2024-04-29 12:46:51 INFO    > Task :copyArtifacts
2024-04-29 12:46:51 INFO    > Task :setUpAndroidDeps
2024-04-29 12:46:51 INFO    
2024-04-29 12:46:51 INFO    BUILD SUCCESSFUL in 2s
2024-04-29 12:46:51 INFO    4 actionable tasks: 4 executed
2024-04-29 12:46:51 INFO    Command ['python3', 'third_party/android_deps/set_up_android_deps.py'] completed
2024-04-29 12:46:51 INFO    Setting up Java deps
2024-04-29 12:47:06 INFO    Command ['third_party/java_deps/set_up_java_deps.sh'] completed
2024-04-29 12:47:06 INFO    Generating android-arm64-chip-tool
2024-04-29 12:47:06 INFO    Done. Made 6744 targets from 360 files in 352ms
2024-04-29 12:47:06 INFO    Command ['gn', 'gen', '--check', '--fail-on-unused-args', '/Users/myuser/connectedhomeip/out/android-arm64-chip-tool', '--args=target_os="android" target_cpu="arm64" android_ndk_root="/Users/myuser/Library/Android/sdk/ndk/27.0.11718014" android_sdk_root="/Users/myuser/Library/Android/sdk" chip_build_controller_dynamic_server=true '] completed
2024-04-29 12:47:06 INFO    Accepting NDK licenses @ cmdline-tools
2024-04-29 12:47:08 WARNING Warning: Errors during XML parse:
2024-04-29 12:47:08 WARNING Warning: Additionally, the fallback loader failed to parse the XML.
2024-04-29 12:47:08 INFO    Command ['bash', '-c', 'yes | /Users/myuser/Library/Android/sdk/cmdline-tools/latest/bin/sdkmanager --licenses >/dev/null'] completed
2024-04-29 12:47:08 INFO    Building /Users/myuser/connectedhomeip/out/android-arm64-chip-tool
2024-04-29 12:47:08 INFO    Building JNI android-arm64-chip-tool
2024-04-29 12:47:08 INFO    ninja: Entering directory `/Users/myuser/connectedhomeip/out/android-arm64-chip-tool'
2024-04-29 12:47:08 WARNING ninja: error: '/Users/myuser/Library/Android/sdk/ndk/27.0.11718014/sources/cxx-stl/llvm-libc++/libs/arm64-v8a/libc++_shared.so', needed by 'lib/jni/arm64-v8a/libc++_shared.so', missing and no known rule to make it
Traceback (most recent call last):
  File "/Users/myuser/connectedhomeip/./scripts/build/build_examples.py", line 230, in <module>
    main(auto_envvar_prefix='CHIP')
  File "/Users/myuser/connectedhomeip/.environment/pigweed-venv/lib/python3.9/site-packages/click/core.py", line 1130, in __call__
    return self.main(*args, **kwargs)
  File "/Users/myuser/connectedhomeip/.environment/pigweed-venv/lib/python3.9/site-packages/click/core.py", line 1055, in main
    rv = self.invoke(ctx)
  File "/Users/myuser/connectedhomeip/.environment/pigweed-venv/lib/python3.9/site-packages/click/core.py", line 1688, in invoke
    rv.append(sub_ctx.command.invoke(sub_ctx))
  File "/Users/myuser/connectedhomeip/.environment/pigweed-venv/lib/python3.9/site-packages/click/core.py", line 1404, in invoke
    return ctx.invoke(self.callback, **ctx.params)
  File "/Users/myuser/connectedhomeip/.environment/pigweed-venv/lib/python3.9/site-packages/click/core.py", line 760, in invoke
    return __callback(*args, **kwargs)
  File "/Users/myuser/connectedhomeip/.environment/pigweed-venv/lib/python3.9/site-packages/click/decorators.py", line 26, in new_func
    return f(get_current_context(), *args, **kwargs)
  File "/Users/myuser/connectedhomeip/./scripts/build/build_examples.py", line 220, in cmd_build
    context.obj.Build()
  File "/Users/myuser/connectedhomeip/scripts/build/build/__init__.py", line 71, in Build
    builder.build()
  File "/Users/myuser/connectedhomeip/scripts/build/builders/builder.py", line 99, in build
    self._build()
  File "/Users/myuser/connectedhomeip/scripts/build/builders/android.py", line 466, in _build
    self._Execute(
  File "/Users/myuser/connectedhomeip/scripts/build/builders/builder.py", line 104, in _Execute
    self._runner.Run(cmdarray, title=title)
  File "/Users/myuser/connectedhomeip/scripts/build/runner/shell.py", line 73, in Run
    raise Exception('Command %r failed: %d' % (cmd, code))
Exception: Command ['ninja', '-C', '/Users/myuser/connectedhomeip/out/android-arm64-chip-tool'] failed: 1

Seems facing error due to latest NDK as per this line. But new there are no STL libs are available in latest NDK. ninja: error: '/Users/myuser/Library/Android/sdk/ndk/27.0.11718014/sources/cxx-stl/llvm-libc++/libs/arm64-v8a/libc++_shared.so', needed by 'lib/jni/arm64-v8a/libc++_shared.so', missing and no known rule to make it

Platform

android

Anything else?

No response

joonhaengHeo commented 5 months ago

error: '/Users/myuser/Library/Android/sdk/ndk/27.0.11718014/sources/cxx-stl/llvm-libc++/libs/arm64-v8a/libc++_shared.so', needed by 'lib/jni/arm64-v8a/libc++_shared.so', missing and no known rule to make it

Android build is required SDK 26 & NDK 23.2.8568313. Please check your build environment.

KhushbuShah25 commented 5 months ago

Android SDK 26 is installed. But when I installed NDK from latest Android studio, it installs latest NDK 27.0.11718014. There is no option in it to get older ndk version. I have downloaded older NDK version (23.2.8568313) from this link and tried again.

Facing below error for 1.2.0.1:

2024-04-30 15:24:53 INFO    Building targets: android-arm64-chip-tool
2024-04-30 15:24:53 INFO    Preparing builder 'android-arm64-chip-tool'
2024-04-30 15:24:53 INFO    Generating /Users/myuser/connectedhomeip/out/android-arm64-chip-tool
2024-04-30 15:24:53 INFO    Setting up Android deps through Gradle
2024-04-30 15:24:54 INFO    > Task :buildSrc:compileJava NO-SOURCE
2024-04-30 15:24:55 INFO    > Task :buildSrc:compileGroovy
2024-04-30 15:24:55 INFO    > Task :buildSrc:processResources NO-SOURCE
2024-04-30 15:24:55 INFO    > Task :buildSrc:classes
2024-04-30 15:24:55 INFO    > Task :buildSrc:jar
2024-04-30 15:24:55 INFO    > Task :buildSrc:assemble
2024-04-30 15:24:55 INFO    > Task :buildSrc:compileTestJava NO-SOURCE
2024-04-30 15:24:55 INFO    > Task :buildSrc:compileTestGroovy NO-SOURCE
2024-04-30 15:24:55 INFO    > Task :buildSrc:processTestResources NO-SOURCE
2024-04-30 15:24:55 INFO    > Task :buildSrc:testClasses UP-TO-DATE
2024-04-30 15:24:55 INFO    > Task :buildSrc:test NO-SOURCE
2024-04-30 15:24:55 INFO    > Task :buildSrc:check UP-TO-DATE
2024-04-30 15:24:55 INFO    > Task :buildSrc:build
2024-04-30 15:24:55 INFO    > Task :copyArtifacts
2024-04-30 15:24:55 INFO    > Task :setUpAndroidDeps
2024-04-30 15:24:55 INFO    
2024-04-30 15:24:55 INFO    BUILD SUCCESSFUL in 1s
2024-04-30 15:24:55 INFO    4 actionable tasks: 4 executed
2024-04-30 15:24:55 INFO    Command ['python3', 'third_party/android_deps/set_up_android_deps.py'] completed
2024-04-30 15:24:55 INFO    Setting up Java deps
2024-04-30 15:25:11 INFO    Command ['third_party/java_deps/set_up_java_deps.sh'] completed
2024-04-30 15:25:11 INFO    Generating android-arm64-chip-tool
2024-04-30 15:25:11 INFO    Done. Made 6574 targets from 343 files in 280ms
2024-04-30 15:25:11 INFO    Command ['gn', 'gen', '--check', '--fail-on-unused-args', '/Users/myuser/connectedhomeip/out/android-arm64-chip-tool', '--args=target_os="android" target_cpu="arm64" android_ndk_root="/Users/myuser/Library/Android/sdk/ndk/23.2.8568313" android_sdk_root="/Users/myuser/Library/Android/sdk" chip_build_controller_dynamic_server=true '] completed
2024-04-30 15:25:11 INFO    Accepting NDK licenses @ cmdline-tools
2024-04-30 15:25:12 WARNING Warning: Errors during XML parse:
2024-04-30 15:25:12 WARNING Warning: Additionally, the fallback loader failed to parse the XML.
2024-04-30 15:25:12 INFO    Command ['bash', '-c', 'yes | /Users/myuser/Library/Android/sdk/cmdline-tools/latest/bin/sdkmanager --licenses >/dev/null'] completed
2024-04-30 15:25:12 INFO    Building /Users/myuser/connectedhomeip/out/android-arm64-chip-tool
2024-04-30 15:25:12 INFO    Building JNI android-arm64-chip-tool
2024-04-30 15:25:12 INFO    ninja: Entering directory `/Users/myuser/connectedhomeip/out/android-arm64-chip-tool'
2024-04-30 15:25:12 INFO    [1/1571] stamp obj/build/chip/java/tests/java_build_test._metadata_path_list.txt.stamp
2024-04-30 15:25:12 INFO    [2/1571] cp /Users/myuser/Library/Android/sdk/ndk/23.2.8568313/sources/cxx-stl/llvm-libc++/libs/arm64-v8a/libc++_shared.so lib/jni/arm64-v8a/libc++_shared.so
2024-04-30 15:25:12 INFO    [3/1571] stamp obj/src/controller/data_model/data_model_codegen_codegen._metadata_path_list.txt.stamp
2024-04-30 15:25:12 INFO    [4/1571] stamp obj/src/controller/data_model/cluster-tlv-metadata_codegen._metadata_path_list.txt.stamp
2024-04-30 15:25:12 INFO    [5/1571] stamp obj/src/controller/data_model/data_model_zapgen_files._metadata_path_list.txt.stamp
2024-04-30 15:25:12 INFO    [6/1571] stamp obj/src/controller/data_model/java-jni-generate_codegen._metadata_path_list.txt.stamp
2024-04-30 15:25:12 INFO    [7/1571] stamp obj/src/app/icd/observer.stamp
2024-04-30 15:25:12 INFO    [8/1571] stamp obj/src/controller/data_model/data_model_zapgen_zap_pregen._metadata_path_list.txt.stamp
2024-04-30 15:25:12 INFO    [9/1571] stamp obj/build/chip/java/shared_cpplib.stamp
2024-04-30 15:25:12 INFO    [10/1571] ACTION //build/chip/java/tests:child_library_config(//build/toolchain/android:android_arm64)
2024-04-30 15:25:12 INFO    [11/1571] ACTION //build/chip/java/tests:child_prebuilt_config(//build/toolchain/android:android_arm64)
2024-04-30 15:25:12 INFO    [12/1571] ACTION //src/app:gen_app_buildconfig(//build/toolchain/android:android_arm64)
2024-04-30 15:25:12 INFO    [13/1571] stamp obj/build/chip/java/tests/child_library_config.stamp
2024-04-30 15:25:12 INFO    [14/1571] ACTION //src/app/server/java:android_config(//build/toolchain/android:android_arm64)
2024-04-30 15:25:12 INFO    [15/1571] ACTION //src/ble:gen_ble_buildconfig(//build/toolchain/android:android_arm64)
2024-04-30 15:25:12 INFO    [16/1571] stamp obj/build/chip/java/tests/child_prebuilt_config.stamp
2024-04-30 15:25:12 INFO    [17/1571] ACTION //src/controller/java:android_config(//build/toolchain/android:android_arm64)
2024-04-30 15:25:12 INFO    [18/1571] stamp obj/src/app/gen_app_buildconfig.stamp
2024-04-30 15:25:12 INFO    [19/1571] ACTION //build/chip/java/tests:grandchild_library_config(//build/toolchain/android:android_arm64)
2024-04-30 15:25:12 INFO    [20/1571] stamp obj/src/ble/gen_ble_buildconfig.stamp
2024-04-30 15:25:12 INFO    [21/1571] stamp obj/src/app/server/java/android_config.stamp
2024-04-30 15:25:12 INFO    [22/1571] stamp obj/src/controller/java/android_config.stamp
2024-04-30 15:25:12 INFO    [23/1571] stamp obj/src/app/app_buildconfig.stamp
2024-04-30 15:25:12 INFO    [24/1571] stamp obj/build/chip/java/tests/grandchild_library_config.stamp
2024-04-30 15:25:12 INFO    [25/1571] cp ../../build/chip/java/tests/child_jar.jar lib/build/chip/java/tests/child_jar.jar
2024-04-30 15:25:12 INFO    [26/1571] ACTION //src/controller/java:chipclusterID_config(//build/toolchain/android:android_arm64)
2024-04-30 15:25:12 INFO    [27/1571] stamp obj/src/ble/ble_buildconfig.stamp
2024-04-30 15:25:12 INFO    [28/1571] ACTION //src/controller/java:tlv_config(//build/toolchain/android:android_arm64)
2024-04-30 15:25:12 INFO    [29/1571] cp /Users/myuser/Library/Android/sdk/platforms/android-26/android.jar lib/src/app/server/java/android.jar
2024-04-30 15:25:12 INFO    [30/1571] cp /Users/myuser/Library/Android/sdk/platforms/android-26/android.jar lib/src/controller/java/android.jar
2024-04-30 15:25:12 INFO    [31/1571] stamp obj/src/app/app_config.stamp
2024-04-30 15:25:12 INFO    [32/1571] stamp obj/build/chip/java/tests/child_prebuilt.stamp
2024-04-30 15:25:12 INFO    [33/1571] stamp obj/src/controller/java/chipclusterID_config.stamp
2024-04-30 15:25:12 INFO    [34/1571] stamp obj/src/controller/java/tlv_config.stamp
2024-04-30 15:25:12 INFO    [35/1571] stamp obj/src/app/server/java/android.stamp
2024-04-30 15:25:12 INFO    [36/1571] stamp obj/src/controller/java/android.stamp
2024-04-30 15:25:12 INFO    [37/1571] ACTION //src/crypto:gen_crypto_buildconfig(//build/toolchain/android:android_arm64)
2024-04-30 15:25:12 INFO    [38/1571] ACTION //src/controller/java:tlv__kotlinc(//build/toolchain/android:android_arm64)
2024-04-30 15:25:12 INFO    FAILED: gen/src/controller/java/tlv.classlist 
2024-04-30 15:25:12 INFO    python3 ../../build/chip/java/kotlinc_runner.py --classdir obj/src/controller/java/tlv/classes --outfile gen/src/controller/java/tlv.classlist --build-config gen/src/controller/java/tlv.json -- -d obj/src/controller/java/tlv/classes @gen/src/controller/java/tlv.sources -Werror -Xlint:all -Xlint:deprecation
2024-04-30 15:25:12 INFO    kotlinc: command not found
2024-04-30 15:25:12 INFO    [39/1571] stamp obj/src/crypto/gen_crypto_buildconfig.stamp
2024-04-30 15:25:12 INFO    [40/1571] ACTION //src/lib/asn1:gen_asn1oid(//build/toolchain/android:android_arm64)
2024-04-30 15:25:12 INFO    [41/1571] ACTION //src/inet:gen_inet_buildconfig(//build/toolchain/android:android_arm64)
2024-04-30 15:25:12 INFO    [42/1571] ACTION //src/credentials:gen_build_time_header(//build/toolchain/android:android_arm64)
2024-04-30 15:25:12 INFO    [43/1571] ACTION //build/chip/java/tests:java_prebuilt_config(//build/toolchain/android:android_arm64)
2024-04-30 15:25:13 INFO    [44/1571] ACTION //build/chip/java/tests:child_library__javac(//build/toolchain/android:android_arm64)
2024-04-30 15:25:13 INFO    [45/1571] ACTION //build/chip/java/tests:grandchild_library__javac(//build/toolchain/android:android_arm64)
2024-04-30 15:25:13 INFO    [46/1571] ACTION //src/controller/data_model:data_model_codegen_codegen(//build/toolchain/android:android_arm64)
2024-04-30 15:25:13 INFO    [47/1571] ACTION //src/controller/data_model:cluster-tlv-metadata_codegen(//build/toolchain/android:android_arm64)
2024-04-30 15:25:13 INFO    [48/1571] ACTION //src/controller/data_model:java-jni-generate_codegen(//build/toolchain/android:android_arm64)
2024-04-30 15:25:14 INFO    [49/1571] ACTION //src/controller/java:chipclusterID__javac(//build/toolchain/android:android_arm64)
2024-04-30 15:25:18 INFO    [50/1571] ACTION //src/controller/data_model:data_model_zapgen_zap_pregen(//build/toolchain/android:android_arm64)
2024-04-30 15:25:18 INFO    ninja: build stopped: subcommand failed.
Traceback (most recent call last):
  File "/Users/myuser/connectedhomeip/./scripts/build/build_examples.py", line 230, in <module>
    main(auto_envvar_prefix='CHIP')
  File "/Users/myuser/connectedhomeip/.environment/pigweed-venv/lib/python3.9/site-packages/click/core.py", line 1130, in __call__
    return self.main(*args, **kwargs)
  File "/Users/myuser/connectedhomeip/.environment/pigweed-venv/lib/python3.9/site-packages/click/core.py", line 1055, in main
    rv = self.invoke(ctx)
  File "/Users/myuser/connectedhomeip/.environment/pigweed-venv/lib/python3.9/site-packages/click/core.py", line 1688, in invoke
    rv.append(sub_ctx.command.invoke(sub_ctx))
  File "/Users/myuser/connectedhomeip/.environment/pigweed-venv/lib/python3.9/site-packages/click/core.py", line 1404, in invoke
    return ctx.invoke(self.callback, **ctx.params)
  File "/Users/myuser/connectedhomeip/.environment/pigweed-venv/lib/python3.9/site-packages/click/core.py", line 760, in invoke
    return __callback(*args, **kwargs)
  File "/Users/myuser/connectedhomeip/.environment/pigweed-venv/lib/python3.9/site-packages/click/decorators.py", line 26, in new_func
    return f(get_current_context(), *args, **kwargs)
  File "/Users/myuser/connectedhomeip/./scripts/build/build_examples.py", line 220, in cmd_build
    context.obj.Build()
  File "/Users/myuser/connectedhomeip/scripts/build/build/__init__.py", line 71, in Build
    builder.build()
  File "/Users/myuser/connectedhomeip/scripts/build/builders/builder.py", line 99, in build
    self._build()
  File "/Users/myuser/connectedhomeip/scripts/build/builders/android.py", line 446, in _build
    self._Execute(
  File "/Users/myuser/connectedhomeip/scripts/build/builders/builder.py", line 104, in _Execute
    self._runner.Run(cmdarray, title=title)
  File "/Users/myuser/connectedhomeip/scripts/build/runner/shell.py", line 73, in Run
    raise Exception('Command %r failed: %d' % (cmd, code))
Exception: Command ['ninja', '-C', '/Users/myuser/connectedhomeip/out/android-arm64-chip-tool'] failed: 1

And below error for latest master :

2024-04-30 15:36:23 INFO    Building targets: android-arm64-chip-tool
2024-04-30 15:36:23 INFO    Preparing builder 'android-arm64-chip-tool'
2024-04-30 15:36:23 INFO    Generating /Users/myuser/connectedhomeip/out/android-arm64-chip-tool
2024-04-30 15:36:23 INFO    Setting up Android deps through Gradle
2024-04-30 15:36:24 INFO    > Task :buildSrc:compileJava NO-SOURCE
2024-04-30 15:36:25 INFO    > Task :buildSrc:compileGroovy
2024-04-30 15:36:25 INFO    > Task :buildSrc:processResources NO-SOURCE
2024-04-30 15:36:25 INFO    > Task :buildSrc:classes
2024-04-30 15:36:25 INFO    > Task :buildSrc:jar
2024-04-30 15:36:25 INFO    > Task :buildSrc:assemble
2024-04-30 15:36:25 INFO    > Task :buildSrc:compileTestJava NO-SOURCE
2024-04-30 15:36:25 INFO    > Task :buildSrc:compileTestGroovy NO-SOURCE
2024-04-30 15:36:25 INFO    > Task :buildSrc:processTestResources NO-SOURCE
2024-04-30 15:36:25 INFO    > Task :buildSrc:testClasses UP-TO-DATE
2024-04-30 15:36:25 INFO    > Task :buildSrc:test NO-SOURCE
2024-04-30 15:36:25 INFO    > Task :buildSrc:check UP-TO-DATE
2024-04-30 15:36:25 INFO    > Task :buildSrc:build
2024-04-30 15:36:25 INFO    > Task :copyArtifacts
2024-04-30 15:36:25 INFO    > Task :setUpAndroidDeps
2024-04-30 15:36:25 INFO    
2024-04-30 15:36:25 INFO    BUILD SUCCESSFUL in 1s
2024-04-30 15:36:25 INFO    4 actionable tasks: 4 executed
2024-04-30 15:36:25 WARNING Traceback (most recent call last):
2024-04-30 15:36:25 WARNING   File "/Users/myuser/connectedhomeip/third_party/android_deps/set_up_android_deps.py", line 37, in <module>
2024-04-30 15:36:25 WARNING     sys.exit(main())
2024-04-30 15:36:25 WARNING   File "/Users/myuser/connectedhomeip/third_party/android_deps/set_up_android_deps.py", line 32, in main
2024-04-30 15:36:25 WARNING     subprocess.check_call(
2024-04-30 15:36:25 WARNING   File "/Applications/Xcode.app/Contents/Developer/Library/Frameworks/Python3.framework/Versions/3.9/lib/python3.9/subprocess.py", line 368, in check_call
2024-04-30 15:36:25 WARNING     retcode = call(*popenargs, **kwargs)
2024-04-30 15:36:25 WARNING   File "/Applications/Xcode.app/Contents/Developer/Library/Frameworks/Python3.framework/Versions/3.9/lib/python3.9/subprocess.py", line 349, in call
2024-04-30 15:36:25 WARNING     with Popen(*popenargs, **kwargs) as p:
2024-04-30 15:36:25 WARNING   File "/Applications/Xcode.app/Contents/Developer/Library/Frameworks/Python3.framework/Versions/3.9/lib/python3.9/subprocess.py", line 951, in __init__
2024-04-30 15:36:25 WARNING     self._execute_child(args, executable, preexec_fn, close_fds,
2024-04-30 15:36:25 WARNING   File "/Applications/Xcode.app/Contents/Developer/Library/Frameworks/Python3.framework/Versions/3.9/lib/python3.9/subprocess.py", line 1821, in _execute_child
2024-04-30 15:36:25 WARNING     raise child_exception_type(errno_num, err_msg, err_filename)
2024-04-30 15:36:25 WARNING FileNotFoundError: [Errno 2] No such file or directory: 'gn'
Traceback (most recent call last):
  File "/Users/myuser/connectedhomeip/./scripts/build/build_examples.py", line 230, in <module>
    main(auto_envvar_prefix='CHIP')
  File "/Users/myuser/Library/Python/3.9/lib/python/site-packages/click/core.py", line 1157, in __call__
    return self.main(*args, **kwargs)
  File "/Users/myuser/Library/Python/3.9/lib/python/site-packages/click/core.py", line 1078, in main
    rv = self.invoke(ctx)
  File "/Users/myuser/Library/Python/3.9/lib/python/site-packages/click/core.py", line 1719, in invoke
    rv.append(sub_ctx.command.invoke(sub_ctx))
  File "/Users/myuser/Library/Python/3.9/lib/python/site-packages/click/core.py", line 1434, in invoke
    return ctx.invoke(self.callback, **ctx.params)
  File "/Users/myuser/Library/Python/3.9/lib/python/site-packages/click/core.py", line 783, in invoke
    return __callback(*args, **kwargs)
  File "/Users/myuser/Library/Python/3.9/lib/python/site-packages/click/decorators.py", line 33, in new_func
    return f(get_current_context(), *args, **kwargs)
  File "/Users/myuser/connectedhomeip/./scripts/build/build_examples.py", line 220, in cmd_build
    context.obj.Build()
  File "/Users/myuser/connectedhomeip/scripts/build/build/__init__.py", line 67, in Build
    self.Generate()
  File "/Users/myuser/connectedhomeip/scripts/build/build/__init__.py", line 62, in Generate
    builder.generate()
  File "/Users/myuser/connectedhomeip/scripts/build/builders/android.py", line 342, in generate
    self._Execute(
  File "/Users/myuser/connectedhomeip/scripts/build/builders/builder.py", line 104, in _Execute
    self._runner.Run(cmdarray, title=title)
  File "/Users/myuser/connectedhomeip/scripts/build/runner/shell.py", line 73, in Run
    raise Exception('Command %r failed: %d' % (cmd, code))
Exception: Command ['python3', 'third_party/android_deps/set_up_android_deps.py'] failed: 1
KhushbuShah25 commented 5 months ago

Resolved error by installing kotlin. brew install kotlin Generated chip tool libs successfully. But actually when I have checkout for older commit (3c6bed3bb28f66cc2e1ebbe3561fa0838f6b7c51), it starts failing again.

KhushbuShah25 commented 5 months ago

Btw, I am trying to build in Macbook pro which is having Apple M3 Pro chip. Anyone has faced python environment issue for this ?

VinhBH1 commented 3 months ago

Hi @KhushbuShah25
when you Generated chip tool libs successfully. Where is the location ? . i am still stuck in erro Unresolved reference: chip .i have run TARGET_CPU=arm64 ./scripts/examples/android_app_ide.sh succesfully but it still have error Unresolved reference: chip image

joonhaengHeo commented 3 months ago

I have the same issue and I can't figure out how to solve it. https://github.com/project-chip/connectedhomeip/issues/31271

NagendraMudadla commented 2 months ago

Resolved error by installing kotlin. brew install kotlin Generated chip tool libs successfully. But actually when I have checkout for older commit (3c6bed3), it starts failing again.

Can you share the latest build libraries with me, because my system is hanging while generating the chip tool, libraries.

vulpes2 commented 2 months ago

@KhushbuShah25 You can install older versions of the NDK with the SDK Manager if you check the "Show Package Details" option at the bottom right corner.

A quick guide for people who want to build the chip-tool Android app on Linux with the scripts, with solutions to all the common problems I've encountered so far collected in one place. Adjust the paths as required.

  1. Follow the docs and install the correct version of Android SDK and NDK, and make sure your java version is old enough, 11 worked for me.
export ANDROID_HOME=~/Android/Sdk
export ANDROID_NDK_HOME=~/Android/Sdk/ndk/23.2.8568313
export JAVA_HOME=/usr/lib/jvm/java-11
  1. Install Kotlin from https://github.com/JetBrains/kotlin/releases and make sure kotlinc is available in your $PATH, version 1.9.25 worked for me.
  2. Run source scripts/bootstrap.sh, or source scripts/activate.sh if you have already ran the bootstrap script before.
  3. Run ./scripts/build/build_examples.py --target android-arm64-chip-tool build

Common issues:

  1. ninja: error: loading 'build.ninja': No such file or directory: run gn gen out/android-arm64-chip-tool to fix it and try again.
  2. FileNotFoundError: [Errno 2] No such file or directory: 'gn': you are not in the pigweed venv, run source scripts/activate.sh and try again.
  3. kotlinc: command not found: you did not install kotlin correctly or it's not available in your $PATH, symlink kotlinc to a folder that is in $PATH.