Daydream View Controller Emulator won't work with Google VR SDK 1.1 and Unity 5.6 beta for Linux - adb

I can't get the controller emulator to work with Google VR SDK 1.1 & Unity 5.6b3 under Arch Linux 64-bit. If I load the GVRDemo scene in Unit and click the play button to enter Play Mode, the console shows the following:
"Android Debug Bridge (adb) command not found.
Verify that the Android SDK is installed and that the directory containing adb is included in your PATH environment variable."
In Windows, you have to add the directory containing the Android Debug Bridge (adb) program to the PATH environment variable in Windows itself (not in the Unity program). Once you do that, the Controller Emulator works fine in Windows. You have to do the same in Linux, evidently, to get Unity to locate adb, and therefore get the Controller Emulator phone working for testing the game.
I've added the following line in my .bashrc and .profile files in my home directory:
"PATH=/home/jesse/Android/Sdk/platform-tools/:$PATH"
This, however, doesn't fix the issue.
I've also added the root directory of the Android SDK to my Unity Preferences > External Tools section.
I don't know how to get Unity and Google VR SDK to recognize the directory containing adb to the PATH environment variable that Unity needs to make the Controller Emulator work.
Is anyone else having this issue? Is there a fix or work-around?

I was able to locate the culprit and modify Google VR SDK scripts to make it work! Turns out there was an issue in the code of the script file titled "EmulatorClientSocket.cs" regarding non-Windows machines. Here's what I changed, and why:
Originally, in line 111 and 112 of this script, it read:
stringprocessFilename="bash";
stringprocessArguments = string.Format(" -l -c \"{0}\"", adbCommand);
The context is that when Windows is not present (forgive my layman's terms -- I've only started learning coding a month ago) the command to process is this: bash -l -c "adb forward tcp:7003 tcp:7003". The problem is when the -l option is used in the command, the command is interpreted as if coming from a login shell, which - I believe - means that bash isn't looking at the custom environment variables set in the user's .bashrc and .profile files in their home directory. Without looking at those files, bash can't locate the adb command (try running the bold command above in a terminal, and the result will be a prompt saying adb command not found).
To fix it, I simply removed the -l option from line 112, and, voila! Everything works like a charm! Lines 111 and 112 now look like this:
stringprocessFilename="bash";
stringprocessArguments = string.Format(" -c \"{0}\"", adbCommand);
The fix will work when running "unity-editor" or "unity-editor-beta" from the Terminal or Xterm, but running it from the application menu will still produce the adb error and Controller Emulator will not work.

Related

Set up kenlm for Windows

The official website makes it pretty clear that there is no support for kenlm in Windows. There is a Windows tag at the github repository but it seems to be maintained by few random contributors then and there.
How to set up kenlm for Windows then?
The new DeepSpeech PlayBook also includes instructions for setting up a Docker image and running training from within a Docker container. If you have Docker on Windows, this might be another solution.
The information for building a new Scorer is still in a PR, but may also be useful.
The solution is to use Ubuntu in Windows through Windows Subsystem for Linux
Get WSL for Windows
From your ubuntu bash navigate to the folder where you want to do the setup. You can access the Windows file system from the /mnt/c/ folder, which you can find at the root directory.
From there simply follow the official instructions, that is clone the git repo, and run cmake .. & make -j2 in order to build the project (after first making the necessary installations in your Ubuntu system).
Obviously, you must train the models or scorers using the Linux bash. You can also use these models from Windows using the kenlm python library.
E.g.
The two steps to build a scorer for the deepspeech-model as described here should be executed from your Ubuntu system. But after you have the scorer you should be able to run the command
deepspeech --model deepspeech-0.9.3-models.pbmm --scorer kenlm.scorer --audio audio.wav
from Windows. However, once you have WSL there's no need to do this work from Windows. Things will work nicely #your Ubuntu system.
I've faced the same problem and solved it by building kenlm wheel from Cygwin terminal as home page advices (pip wheel pypi-kenlm).
I've also uploaded wheel to pypi called kenlm-cygwin, but it's only python3.7.

Conemu doesn't work with wsl since windows update

Since I have updated windows, my conemu terminal is giving me the following error each time a session is created:
wslbridge error: failed to start backend process
note: backend error output: -v: -c: line 0: unexpected EOF while looking for matching `''
-v: -c: line 1: syntax error: unexpected end of file
ConEmuC: Root process was alive less than 10 sec, ExitCode=0.
Press Enter or Esc to close console...
Has anyone an idea to bring conemu to a wsl terminal? Thank you
A similar error is caused by upgrading WSL from v1 to v2.
If you read through the discussion on this github issue for ConEmu you'll find a variety of instructions that can be distilled into:
Change the command for the task {Bash::bash} to the following:
wsl.exe
A GitHub user posted this workaround which worked for me:
I've fixed the issue by doing this:
Download latest cygwin1-20200531.dll.xz from https://cygwin.com/snapshots/ and unpack the file as cygwin1.dll into ConEmu\wsl\ (replacing the original file there)
Download #Biswa96's wslbridge2 from https://github.com/Biswa96/wslbridge2/releases and unpack to the same directory
Replacing {WSL::bash} task's Command with:
set "PATH=%ConEmuBaseDirShort%\wsl;%PATH%" & %ConEmuBaseDirShort%\conemu-cyg-64.exe %ConEmuBaseDirShort%\wsl\wslbridge2.exe -cur_console:pm:/mnt -eConEmuBuild -eConEmuPID -eConEmuServerPID -l
I can now access my Ubuntu under W10 just like before the W10 upgrade. Backscroll and arrows in VIM work as expected.
The key part of step 3 is to replace conemu-cyg-64.exe --wsl with conemu-cyg-64.exe %ConEmuBaseDirShort%\wsl\wslbridge2.exe.
Longer term, it looks like the author of ConEmu is working on switching to the new Windows PTY API, which will eliminate the need for the wslbridge hack (and many others) entirely.
I had the same issue with last update windows
(Feature update to Windows 10, version 2004 - Successfully installed on ‎9/‎1/‎2020)
the error does not seem to be related to the version of WSL from 1 to 2:
$ wsl -l -v
NAME STATE VERSION
Ubuntu-20.04 Running 1
Nevertheless, this workaround worked for me as well, thank you so much!
Exactly this goes through upgrading WSL from v1 to v2.
You have to open cmder and in the startup command or Task enter {wsl.exe} and ready
cmder is working again.
Yes, the new command for WSL2 is much simpler, but just running wsl does not cause .profile to be read because launching this way does not request login shell, and it launches as root.
A better command is to specify the user id and to invoke the shell of your choice (bash is most common) with the appropriate option. For bash a login shell is desirable so .profile, .bashrc and .bash_aliases get sourced, if present. The -l (lower case L) does that:
wsl -U yourUserName bash -l

Android Studio 3 (All Versions) - Device file explorer nothing to show

When opening the Device file explorer window in Android Studio Preview 3, I don't see the device's files (There is a message "Nothing to show").
I searched this topic a lot but couldn't find anything that is relevant to this issue.
I'm using my test device:
Android Galaxy S5 running Android OS 6 (API 23) - Rooted
The specific build of Android Studio I'm using is:
Android Studio 3.0 Beta 6
Build #AI-171.4333198, built on September 13, 2017
JRE: 1.8.0_152-release-915-b01 amd64
JVM: OpenJDK 64-Bit Server VM by JetBrains s.r.o
Windows 10 10.0
Any idea's how to solve this issue?
After struggling with this for a day, the answer for me was associated with disabling SuperUser permissions for the ADB shell on my Android Device.
If you have rooted your device and are using an app like SuperSU, try disabling the SU permission for ADB shell in the apps view list.
First disconnect your Android device from the computer running Android Studio
On your Android device open SuperSU and select the apps tab.
Click on ADB shell and select Access:'deny'
Reconnect your device to your dev computer using a USB cable
In Android Studio open the "Device File Explorer".
You should now see a list of files on the device, including files in /data/data/ and its subfolders
You would think that having SU permissions would be a good thing: but in this case, no.
Disable ADB shell's SU permissions in SuperSU
AS file explorer will execute su 0 sh -c 'ls -l /' to list the files. For unknown reason, SuperSu remove the single quotes and the actual command are su 0 sh -c ls -l /. In such case, the -l will not work. AS file explorer may have some problem to parse the output. So there is nothing to show.
You can check the log of AS to get such behavior. Open the log from: help -> show log in explorer

adb: command not found ( from within the platform-tools directory ) on Mac OS X Yosemite

Ultimately I'm trying to get the device id for my note 5.
I've installed Android Studio along with the Platform-Tools 23.1
When I use terminal to go into the platform-tools folder and type adb I get "command not found"
Any ideas?
Thanks
Since "platform-tools" is probably not part of the system path, you should try running: "./adb" instead of "adb" from the platform-tools location. Or use the full path to it.
Using "." would indicate that you are trying to launch adb from the current directory
Ok after much search i have come to realize that much of the stackoverflow posts have been marking the wrong and complex answers, for all such questions about adb not working, not found, -bash not found etcccc The only thing that you guys need to do is in terminal just change your directory to platform-tools folder in android SDK
cd /Users/macbookpro/Library/Android/sdk/platform-tools
and then run ./adb --help to see the list since adb is already located inside platform tools no need to export $path and all those vague solutions. Thanks

How to setup the proxy info in yypkg for sherpa.exe when installing Win-builds Project

I am trying to install the latest GCC compiler on windows 7 by using "Win-builds Project". Since the company I am working for has proxy. When I run the command win-install.bat. I got an error:
http://win-builds.org/1.3.0/packages/windows_64/package_list.el:
2014-02-21 11:39:44 ERROR 407: Proxy Authentication Required.
In the batch file, I found code:
yypkg -init
yypkg -config -setpreds host=%_YY_ARCH%-w64-mingw32
yypkg -config -setpreds target=%_YY_ARCH%-w64-mingw32
sherpa -set-mirror http://win-builds.org/1.3.0/packages/windows_%_YY_BITS%
I think the yypkg.exe does the initialization work and configs sherpa and let sherpa.exe to download and install files.
My question is how can config yypkg my username and password? I did google search, but I cannot find any info about yypkg nor how to config sherpa.
[enter code here][1]Proxy set up can be done via command line
How can I set a proxy server for gem?
set http_proxy=http://your_proxy:your_port
set http_proxy=http://username:password#your_proxy:your_port
set https_proxy=https://your_proxy:your_port
set https_proxy=https://username:password#your_proxy:your_port
These command snippets need to be entered on 'cmd.exe', and before running the wget, to download files manually via portable wget as described on page:
http://win-builds.org/doku.php/download_and_installation_from_windows
few IMPORTANT Pointers, after the packages have been downloaded manually, and running the 'yypkg-1.5.0.exe'
At first the Application UI is unresponsive, DO NOT CLOSE IT
After some time, change mirror dialog appears where you would need to type/paste the Local folders location(this is the folder where files were downloaded manually)
Local folder path needs to be similar to the following where 'package_list.el.tar.xz' file resides.
file:///C:/usr/MinGW/1.5.0/packages/windows_64
after that all works fine

Resources