But it didn't get fixed, I had to do it every time when the package updates. I also solved it this way last time. Can you help me to try makepkg after installing howdy?
EDIT: Wow, great! Thank you very much!
Git Clone URL: | https://aur.archlinux.org/mozc-ut.git (read-only, click to copy) |
---|---|
Package Base: | mozc-ut |
Description: | The Open Source edition of Google Japanese Input bundled with the UT dictionary |
Upstream URL: | https://github.com/google/mozc |
Licenses: | Apache-2.0 AND BSD-2-Clause AND BSD-3-Clause AND CC0-1.0 AND CC-BY-SA-3.0 AND CC-BY-SA-4.0 AND GPL-2.0-only AND GPL-2.0-or-later AND MIT AND NAIST-2003 AND Unicode-3.0 AND LicenseRef-Okinawa-Dictionary |
Conflicts: | mozc |
Provides: | mozc |
Submitter: | naoina |
Maintainer: | Nocifer |
Last Packager: | Nocifer |
Votes: | 24 |
Popularity: | 0.84 |
First Submitted: | 2020-11-04 02:00 (UTC) |
Last Updated: | 2024-04-07 11:49 (UTC) |
But it didn't get fixed, I had to do it every time when the package updates. I also solved it this way last time. Can you help me to try makepkg after installing howdy?
EDIT: Wow, great! Thank you very much!
@Misaka13514 See my edit of the previous comment. What's your echo $PATH
output like? Also, perhaps try this: uninstall Howdy, and try to install Mozc. Afterwards re-install Howdy and check to see what goes on during setup.
EDIT: And that's what happens when you only read half the comment and immediately begin to reply back. Good for you that you solved your issue :)
@Nocifer I tried sudo rm -rf /home/user/.cache/bazel/
but after that it still couldn't be built. I still got the same error. But I can successfully build by uninstalling howdy first. I was also able to successfully install howdy after this.
$ echo $PATH
/home/user/.local/bin /usr/bin/core_perl /usr/bin/vendor_perl /usr/bin/site_perl /usr/bin /usr/local/bin
$ yay -Ql howdy | grep bin
howdy /usr/bin/
howdy /usr/bin/howdy
@Misaka13514 Reading your log, it seems as though Bazel is trying to use some dependency from another package's cache folder, in this case howdy, but that folder has permission issues and so the setup fails.
This is due to either Bazel being able to cross-reference cached dependencies (doubtful) or Bazel's cache having become FUBARed for some reason or another.
I'd first try to chown -R 1000:1000
on /home/user/.cache/bazel/_bazel_user/8c334454d17c5bf9bb4b4282bb388c81
and run the setup again; if it's indeed just a permission issue, the setup should proceed normally. If not, then I'd delete /home/user/.cache/bazel/_bazel_user/8c334454d17c5bf9bb4b4282bb388c81
altogether, and that should almost certainly fix the issue.
EDIT: Hmm, I just realized that howdy
doesn't even use Bazel. I think this tidbit here is the actual issue: error globbing [bin/*]
. Have you perhaps tried to edit your $PATH or something like that?
I don't know why it doesn't build properly after I install howdy.
==> Starting build()...
Extracting Bazel installation...
Starting local Bazel server and connecting to it...
ERROR: /home/user/.cache/yay/mozc-ut/src/mozc-ut-git/src/gui/tool/BUILD.bazel:96:18: no such package '@qt_linux//': error globbing [bin/*] op=FILES: /home/user/.cache/bazel/_bazel_user/8c334454d17c5bf9bb4b4282bb388c81/external/qt_linux/bin/howdy (Permission denied) and referenced by '//gui/tool:mozc_tool'
ERROR: Analysis of target '//gui/tool:mozc_tool' failed; build aborted: Analysis failed
INFO: Elapsed time: 12.069s
INFO: 0 processes.
FAILED: Build did NOT complete successfully (38 packages loaded, 138 targets configured)
Fetching @local_config_cc; fetching
==> ERROR: A failure occurred in build().
@npreining Alright then, I'll include a fix for your use case in the next update.
Thanks @Nocifer, yes I have ANDROID_NDK_HOME
set due to having android-ndk
installed which ships /etc/profile.d/android-ndk.sh
.
Unsetting the env vars before trying to update the build has worked. Thanks a lot for the pointer, much appreciated!
@npreining Do you by any chance do any Android development work or some such? As far as I understand the hacky solution introduced by Mozc's devs to solve this Bazel error (hacky because it can only be really fixed when Bazel addresses the issue on its end) you should no longer be getting an error about the Android NDK unless the ANDROID_NDK_HOME
environment variable is set in your PATH, in which case the setup process will try to pull an Android NDK from the path provided by ANDROID_NDK_HOME
(/opt/android-ndk/platforms
in your case).
If you do have this env var set and you need it that way, then you should just comment out line 18 in WORKSPACE.bazel
(and maybe line 16 as well) and check if Mozc will build. If so, then I'll reintroduce the NDK fix I removed with this update and report to upstream about it.
Tried to compile (via yay) but got error. bazel cache is cleaned before the build, as well as all clean build enabled. Error is about finding android:
==> Making package: mozc-ut 2.28.4800.102.20220723-1 (Mon Jul 25 10:22:22 2022)
==> Checking runtime dependencies...
==> Checking buildtime dependencies...
==> WARNING: Using existing $srcdir/ tree
==> Starting build()...
Extracting Bazel installation...
Starting local Bazel server and connecting to it...
ERROR: /home/norbert/.cache/yay/mozc-ut/src/mozc-ut-git/src/WORKSPACE.bazel:19:18: fetching android_ndk_repository rule //external:androidndk: java.io.IOException: Expected directory at /opt/android-ndk/platforms but it is not a directory or it does not exist. Unable to read the Android NDK at /opt/android-ndk, the path may be invalid. Is the path in android_ndk_repository() or ANDROID_NDK_HOME set correctly? If the path is correct, the contents in the Android NDK directory may have been modified.
ERROR: Analysis of target '//gui/tool:mozc_tool' failed; build aborted: Expected directory at /opt/android-ndk/platforms but it is not a directory or it does not exist. Unable to read the Android NDK at /opt/android-ndk, the path may be invalid. Is the path in android_ndk_repository() or ANDROID_NDK_HOME set correctly? If the path is correct, the contents in the Android NDK directory may have been modified.
INFO: Elapsed time: 11.246s
INFO: 0 processes.
FAILED: Build did NOT complete successfully (6 packages loaded, 6 targets configured)
currently loading: @bazel_tools//tools/jdk
Fetching @local_jdk; fetching
Fetching @local_config_cc_toolchains; Restarting.
==> ERROR: A failure occurred in build().
Thanks for your work on mozc!
Cleared cache and i got the following error at the end of the compiliation :
In file included from /usr/lib/gcc/x86_64-pc-linux-gnu/12.1.0/../../../../include/c++/12.1.0/string:45,
from ./data_manager/data_manager.h:35,
from data_manager/data_manager.cc:30:
/usr/lib/gcc/x86_64-pc-linux-gnu/12.1.0/../../../../include/c++/12.1.0/bits/stl_iterator_base_types.h:127:34: note: declared here
127 | struct _GLIBCXX17_DEPRECATED iterator
| ^~~~~~~~
ERROR: /home/admin/.cache/yay/mozc-ut/src/mozc-ut-git/src/data_manager/oss/BUILD.bazel:45:13: Executing genrule //data_manager/oss:mozc_dataset_for_oss@dictionary failed: (Aborted): bash failed: error executing command /bin/bash -c ... (remaining 1 argument skipped)
Use --sandbox_debug to see verbose messages from the sandbox and retain the sandbox build root for debugging
terminate called after throwing an instance of 'std::bad_alloc'
what(): std::bad_alloc
Edit : Caused by global use of Hardened_malloc Allocator in non normal variant.
Pinned Comments
Nocifer commented on 2022-05-29 21:54 (UTC) (edited on 2023-08-22 09:33 (UTC) by Nocifer)
If you're getting compilation errors, please delete your Bazel cache (
~/.cache/bazel
by default).