codelv / enaml-native-cli

CLI and package manager for building enaml-native apps
https://www.codelv.com/projects/enaml-native/
GNU General Public License v3.0
13 stars 7 forks source link

Cannot execute enaml-native after venv activation #19

Open ChrisFetterly opened 5 years ago

ChrisFetterly commented 5 years ago

Hi, ubuntu newbie again. Can't seem to get enaml-native to run after a complete install. I was able to create the app successfully. Running into:

chris@chris-laptop:~/Documents/MyApps/EnamlProjects/HelloWorld$ source activate ./venv
(/home/chris/Documents/MyApps/EnamlProjects/HelloWorld/venv) chris@chris-laptop:~/Documents/MyApps/EnamlProjects/HelloWorld$ enaml-native run-android
enaml-native: command not found
frmdstryr commented 5 years ago

If conda is on your path and enaml-native-cli is installed into it, it should work without installing into an env, but you can also just install it into the env as well.

With the env activated, try running conda install -c codelv enaml-native-cli to install the cli into the env.

ChrisFetterly commented 5 years ago

Made some more progress, stuck at:

(/home/chris/Documents/MyApps/EnamlProjects/HelloWorld/venv) chris@chris-laptop:~/Documents/MyApps/EnamlProjects/HelloWorld$ enaml-native
Traceback (most recent call last):
  File "/home/chris/Documents/MyApps/EnamlProjects/HelloWorld/venv/bin/enaml-native", line 10, in <module>
    sys.exit(main())
  File "/home/chris/Documents/MyApps/EnamlProjects/HelloWorld/venv/lib/python3.6/site-packages/enamlnativecli/main.py", line 1657, in main
    EnamlNativeCli().start()
  File "/home/chris/Documents/MyApps/EnamlProjects/HelloWorld/venv/lib/python3.6/site-packages/enamlnativecli/main.py", line 1645, in start
    cmd = self.args.cmd
AttributeError: 'Namespace' object has no attribute 'cmd'
(/home/chris/Documents/MyApps/EnamlProjects/HelloWorld/venv) chris@chris-laptop:~/Documents/MyApps/EnamlProjects/HelloWorld$ 
frmdstryr commented 5 years ago

Maybe something changed with how conda installs dependencies.. Try installing it with pip install enaml-native-cli

ChrisFetterly commented 5 years ago

Made some more progress, stuck at:

(/home/chris/Documents/MyApps/EnamlProjects/HelloWorld/venv) chris@chris-laptop:~/Documents/MyApps/EnamlProjects/HelloWorld$ enaml-native
Traceback (most recent call last):
  File "/home/chris/Documents/MyApps/EnamlProjects/HelloWorld/venv/bin/enaml-native", line 10, in <module>
    sys.exit(main())
  File "/home/chris/Documents/MyApps/EnamlProjects/HelloWorld/venv/lib/python3.6/site-packages/enamlnativecli/main.py", line 1657, in main
    EnamlNativeCli().start()
  File "/home/chris/Documents/MyApps/EnamlProjects/HelloWorld/venv/lib/python3.6/site-packages/enamlnativecli/main.py", line 1645, in start
    cmd = self.args.cmd
AttributeError: 'Namespace' object has no attribute 'cmd'
(/home/chris/Documents/MyApps/EnamlProjects/HelloWorld/venv) chris@chris-laptop:~/Documents/MyApps/EnamlProjects/HelloWorld$ 

Thank you for your help!

frmdstryr commented 5 years ago

https://github.com/codelv/enaml-native-cli/blob/master/enamlnativecli/main.py#L1746 should be checking for that, does conda list show that 2.2.18 is installed?.

Try enaml-native --help

ChrisFetterly commented 5 years ago

I see 2.2.4 for enaml-native-cli and 4.5.2 for enaml-native

I tried to run enaml-native run android and go this malarky

(/home/chris/Documents/MyApps/EnamlProjects/HelloWorld/venv) chris@chris-laptop:~/Documents/MyApps/EnamlProjects/HelloWorld$ enaml-native run-android
[DEBUG]:   -> running cd android
[INFO]:   -> running  /home/chris/Documents/MyApps/EnamlProjects/HelloWorld/android/gradlew installDebug

FAILURE: Build failed with an exception.

* What went wrong:
Could not determine java version from '10.0.2'.

* Try:
Run with --stacktrace option to get the stack trace. Run with --info or --debug option to get more log output.

* Get more help at https://help.gradle.org
Exception in thread background thread for pid 6036:
Traceback (most recent call last):
  File "/home/chris/Documents/MyApps/EnamlProjects/HelloWorld/venv/lib/python3.6/threading.py", line 916, in _bootstrap_inner
    self.run()
  File "/home/chris/Documents/MyApps/EnamlProjects/HelloWorld/venv/lib/python3.6/threading.py", line 864, in run
    self._target(*self._args, **self._kwargs)
  File "/home/chris/Documents/MyApps/EnamlProjects/HelloWorld/venv/lib/python3.6/site-packages/sh.py", line 1540, in wrap
    fn(*args, **kwargs)
  File "/home/chris/Documents/MyApps/EnamlProjects/HelloWorld/venv/lib/python3.6/site-packages/sh.py", line 2459, in background_thread
    handle_exit_code(exit_code)
  File "/home/chris/Documents/MyApps/EnamlProjects/HelloWorld/venv/lib/python3.6/site-packages/sh.py", line 2157, in fn
    return self.command.handle_command_exit_code(exit_code)
  File "/home/chris/Documents/MyApps/EnamlProjects/HelloWorld/venv/lib/python3.6/site-packages/sh.py", line 815, in handle_command_exit_code
    raise exc
sh.ErrorReturnCode_1: 

  RAN: /home/chris/Documents/MyApps/EnamlProjects/HelloWorld/android/gradlew installDebug

  STDOUT:

FAILURE: Build failed with an exception.

* What went wrong:
Could not determine java version from '10.0.2'.

* Try:
Run with --stacktrace option to get the stack trace. Run with --info or --debug option to get more log output.

* Get more help at https://help.gradle.org

  STDERR:

[DEBUG]:   -> running  cd /home/chris/Documents/MyApps/EnamlProjects/HelloWorld
Traceback (most recent call last):
  File "/home/chris/Documents/MyApps/EnamlProjects/HelloWorld/venv/bin/enaml-native", line 10, in <module>
    sys.exit(main())
  File "/home/chris/Documents/MyApps/EnamlProjects/HelloWorld/venv/lib/python3.6/site-packages/enamlnativecli/main.py", line 1657, in main
    EnamlNativeCli().start()
  File "/home/chris/Documents/MyApps/EnamlProjects/HelloWorld/venv/lib/python3.6/site-packages/enamlnativecli/main.py", line 1651, in start
    cmd.run(self.args)
  File "/home/chris/Documents/MyApps/EnamlProjects/HelloWorld/venv/lib/python3.6/site-packages/enamlnativecli/main.py", line 1199, in run
    shprint(gradlew, 'installDebug',*args.extra, _debug=True)
  File "/home/chris/Documents/MyApps/EnamlProjects/HelloWorld/venv/lib/python3.6/site-packages/enamlnativecli/main.py", line 89, in shprint
    for c in cmd(*args, **kwargs):
  File "/home/chris/Documents/MyApps/EnamlProjects/HelloWorld/venv/lib/python3.6/site-packages/sh.py", line 863, in next
    self.wait()
  File "/home/chris/Documents/MyApps/EnamlProjects/HelloWorld/venv/lib/python3.6/site-packages/sh.py", line 792, in wait
    self.handle_command_exit_code(exit_code)
  File "/home/chris/Documents/MyApps/EnamlProjects/HelloWorld/venv/lib/python3.6/site-packages/sh.py", line 815, in handle_command_exit_code
    raise exc
sh.ErrorReturnCode_1: 

  RAN: /home/chris/Documents/MyApps/EnamlProjects/HelloWorld/android/gradlew installDebug

  STDOUT:

FAILURE: Build failed with an exception.

* What went wrong:
Could not determine java version from '10.0.2'.

* Try:
Run with --stacktrace option to get the stack trace. Run with --info or --debug option to get more log output.

* Get more help at https://help.gradle.org

  STDERR:

(/home/chris/Documents/MyApps/EnamlProjects/HelloWorld/venv) chris@chris-laptop:~/Documents/MyApps/EnamlProjects/HelloWorld$ 
frmdstryr commented 5 years ago

Can you install java 8?

ChrisFetterly commented 5 years ago

openjdk-8-jre ?

frmdstryr commented 5 years ago

Actually, try to open the android folder with android-studio and run first

frmdstryr commented 5 years ago

It looks like enaml-native needs to use a newer version of gradle to support more recent java's

ChrisFetterly commented 5 years ago

Android-studio ended up updating stuffs


ERROR: The minSdk version should not be declared in the android manifest file. You can move the version from the manifest to the defaultConfig in the build.gradle file.
Remove minSdkVersion and sync project
Affected Modules: enaml-native

WARNING: The specified Android SDK Build Tools version (27.0.3) is ignored, as it is below the minimum supported version (28.0.3) for Android Gradle Plugin 3.3.0.
Android SDK Build Tools 28.0.3 will be used.
To suppress this warning, remove "buildToolsVersion '27.0.3'" from your build.gradle file, as each version of the Android Gradle Plugin now has a default version of the build tools.
Remove Build Tools version and sync project
Affected Modules: enaml-native

WARNING: The specified Android SDK Build Tools version (26.0.2) is ignored, as it is below the minimum supported version (28.0.3) for Android Gradle Plugin 3.3.0.
Android SDK Build Tools 28.0.3 will be used.
To suppress this warning, remove "buildToolsVersion '26.0.2'" from your build.gradle file, as each version of the Android Gradle Plugin now has a default version of the build tools.
Remove Build Tools version and sync project
Affected Modules: app
ChrisFetterly commented 5 years ago

running from terminal again gradle appeared to play nicely?

(/home/chris/Documents/MyApps/EnamlProjects/HelloWorld/venv) chris@chris-laptop:~/Documents/MyApps/EnamlProjects/HelloWorld$ enaml-native run-android
[DEBUG]:   -> running cd android
[INFO]:   -> running  /home/chris/Documents/MyApps/EnamlProjects/HelloWorld/android/gradlew installDebug

Welcome to Gradle 4.10.1!

Here are the highlights of this release:
 - Incremental Java compilation by default
 - Periodic Gradle caches cleanup
 - Gradle Kotlin DSL 1.0-RC6
 - Nested included builds
 - SNAPSHOT plugin versions in the `plugins {}` block

For more details see https://docs.gradle.org/4.10.1/release-notes.html

Starting a Gradle Daemon, 1 incompatible Daemon could not be reused, use --status for details

> Configure project :app
WARNING: The specified Android SDK Build Tools version (26.0.2) is ignored, as it is below the minimum supported version (28.0.3) for Android Gradle Plugin 3.3.0.
Android SDK Build Tools 28.0.3 will be used.
To suppress this warning, remove "buildToolsVersion '26.0.2'" from your build.gradle file, as each version of the Android Gradle Plugin now has a default version of the build tools.

> Configure project :enaml-native
WARNING: The specified Android SDK Build Tools version (27.0.3) is ignored, as it is below the minimum supported version (28.0.3) for Android Gradle Plugin 3.3.0.
Android SDK Build Tools 28.0.3 will be used.
To suppress this warning, remove "buildToolsVersion '27.0.3'" from your build.gradle file, as each version of the Android Gradle Plugin now has a default version of the build tools.

> Task :enaml-native:bundlePython FAILED
[DEBUG]:   -> running cd /home/chris/Documents/MyApps/EnamlProjects/HelloWorld/venv/android/enaml-native/src/main/jni
[INFO]:   -> running  /home/chris/Android/Sdk/ndk-bundle/ndk-build 
Android NDK: ERROR:/home/chris/Documents/MyApps/EnamlProjects/HelloWorld/venv/android/enaml-native/src/main/jni/Android.mk:python2.7: LOCAL_SRC_FILES points to a missing file    
Android NDK: Check that /home/chris/Documents/MyApps/EnamlProjects/HelloWorld/venv/android/enaml-native/src/main/jni/../../../../..//android/x86_64/lib/libpython2.7.so exists  or that its path is correct   
/home/chris/Android/Sdk/ndk-bundle/build/core/prebuilt-library.mk:45: *** Android NDK: Aborting    .  Stop.
[DEBUG]:   -> running  cd /home/chris/Documents/MyApps/EnamlProjects/HelloWorld
Exception in thread background thread for pid 7322:
Traceback (most recent call last):
  File "/home/chris/Documents/MyApps/EnamlProjects/HelloWorld/venv/lib/python3.6/threading.py", line 916, in _bootstrap_inner
    self.run()
  File "/home/chris/Documents/MyApps/EnamlProjects/HelloWorld/venv/lib/python3.6/threading.py", line 864, in run
    self._target(*self._args, **self._kwargs)
  File "/home/chris/Documents/MyApps/EnamlProjects/HelloWorld/venv/lib/python3.6/site-packages/sh.py", line 1540, in wrap
    fn(*args, **kwargs)
  File "/home/chris/Documents/MyApps/EnamlProjects/HelloWorld/venv/lib/python3.6/site-packages/sh.py", line 2459, in background_thread
    handle_exit_code(exit_code)
  File "/home/chris/Documents/MyApps/EnamlProjects/HelloWorld/venv/lib/python3.6/site-packages/sh.py", line 2157, in fn
    return self.command.handle_command_exit_code(exit_code)
  File "/home/chris/Documents/MyApps/EnamlProjects/HelloWorld/venv/lib/python3.6/site-packages/sh.py", line 815, in handle_command_exit_code
    raise exc
sh.ErrorReturnCode_2: 

  RAN: /home/chris/Android/Sdk/ndk-bundle/ndk-build

  STDOUT:
Android NDK: ERROR:/home/chris/Documents/MyApps/EnamlProjects/HelloWorld/venv/android/enaml-native/src/main/jni/Android.mk:python2.7: LOCAL_SRC_FILES points to a missing file    
Android NDK: Check that /home/chris/Documents/MyApps/EnamlProjects/HelloWorld/venv/android/enaml-native/src/main/jni/../../../../..//android/x86_64/lib/libpython2.7.so exists  or that its path is correct   
/home/chris/Android/Sdk/ndk-bundle/build/core/prebuilt-library.mk:45: *** Android NDK: Aborting    .  Stop.

  STDERR:

Traceback (most recent call last):
  File "/home/chris/Documents/MyApps/EnamlProjects/HelloWorld/venv/bin/enaml-native", line 10, in <module>
    sys.exit(main())
  File "/home/chris/Documents/MyApps/EnamlProjects/HelloWorld/venv/lib/python3.6/site-packages/enamlnativecli/main.py", line 1657, in main
    EnamlNativeCli().start()
  File "/home/chris/Documents/MyApps/EnamlProjects/HelloWorld/venv/lib/python3.6/site-packages/enamlnativecli/main.py", line 1651, in start
    cmd.run(self.args)
  File "/home/chris/Documents/MyApps/EnamlProjects/HelloWorld/venv/lib/python3.6/site-packages/enamlnativecli/main.py", line 474, in run
    self.cmds['ndk-build'].run(args)
  File "/home/chris/Documents/MyApps/EnamlProjects/HelloWorld/venv/lib/python3.6/site-packages/enamlnativecli/main.py", line 405, in run
    shprint(ndk_build)
  File "/home/chris/Documents/MyApps/EnamlProjects/HelloWorld/venv/lib/python3.6/site-packages/enamlnativecli/main.py", line 89, in shprint
    for c in cmd(*args, **kwargs):
  File "/home/chris/Documents/MyApps/EnamlProjects/HelloWorld/venv/lib/python3.6/site-packages/sh.py", line 863, in next
    self.wait()
  File "/home/chris/Documents/MyApps/EnamlProjects/HelloWorld/venv/lib/python3.6/site-packages/sh.py", line 792, in wait
    self.handle_command_exit_code(exit_code)
  File "/home/chris/Documents/MyApps/EnamlProjects/HelloWorld/venv/lib/python3.6/site-packages/sh.py", line 815, in handle_command_exit_code
    raise exc
sh.ErrorReturnCode_2: 

  RAN: /home/chris/Android/Sdk/ndk-bundle/ndk-build

  STDOUT:
Android NDK: ERROR:/home/chris/Documents/MyApps/EnamlProjects/HelloWorld/venv/android/enaml-native/src/main/jni/Android.mk:python2.7: LOCAL_SRC_FILES points to a missing file    
Android NDK: Check that /home/chris/Documents/MyApps/EnamlProjects/HelloWorld/venv/android/enaml-native/src/main/jni/../../../../..//android/x86_64/lib/libpython2.7.so exists  or that its path is correct   
/home/chris/Android/Sdk/ndk-bundle/build/core/prebuilt-library.mk:45: *** Android NDK: Aborting    .  Stop.

  STDERR:

FAILURE: Build failed with an exception.

* What went wrong:
Execution failed for task ':enaml-native:bundlePython'.
> Process 'command 'enaml-native'' finished with non-zero exit value 1

* Try:
Run with --stacktrace option to get the stack trace. Run with --info or --debug option to get more log output. Run with --scan to get full insights.

* Get more help at https://help.gradle.org

BUILD FAILED in 17s
1 actionable task: 1 executed

Exception in thread background thread for pid 7213:
Traceback (most recent call last):
  File "/home/chris/Documents/MyApps/EnamlProjects/HelloWorld/venv/lib/python3.6/threading.py", line 916, in _bootstrap_inner
    self.run()
  File "/home/chris/Documents/MyApps/EnamlProjects/HelloWorld/venv/lib/python3.6/threading.py", line 864, in run
    self._target(*self._args, **self._kwargs)
  File "/home/chris/Documents/MyApps/EnamlProjects/HelloWorld/venv/lib/python3.6/site-packages/sh.py", line 1540, in wrap
    fn(*args, **kwargs)
  File "/home/chris/Documents/MyApps/EnamlProjects/HelloWorld/venv/lib/python3.6/site-packages/sh.py", line 2459, in background_thread
    handle_exit_code(exit_code)
  File "/home/chris/Documents/MyApps/EnamlProjects/HelloWorld/venv/lib/python3.6/site-packages/sh.py", line 2157, in fn
    return self.command.handle_command_exit_code(exit_code)
  File "/home/chris/Documents/MyApps/EnamlProjects/HelloWorld/venv/lib/python3.6/site-packages/sh.py", line 815, in handle_command_exit_code
    raise exc
sh.ErrorReturnCode_1: 

  RAN: /home/chris/Documents/MyApps/EnamlProjects/HelloWorld/android/gradlew installDebug

  STDOUT:

Welcome to Gradle 4.10.1!

Here are the highlights of this release:
 - Incremental Java compilation by default
 - Periodic Gradle caches cleanup
 - Gradle Kotlin DSL 1.0-RC6
 - Nested included builds
 - SNAPSHOT plugin versions in the `plugins {}` block

For more details see https://docs.gradle.org/4.10.1/release-notes.html

Starting a Gradle Daemon, 1 incompatible Daemon could not be reused, use --status for details

> Starting Dae... (19753 more, please see e.stdout)

  STDERR:
[DEBUG]:   -> running  cd /home/chris/Documents/MyApps/EnamlProjects/HelloWorld
Traceback (most recent call last):
  File "/home/chris/Documents/MyApps/EnamlProjects/HelloWorld/venv/bin/enaml-native", line 10, in <module>
    sys.exit(main())
  File "/home/chris/Documents/MyApps/EnamlProjects/HelloWorld/venv/lib/python3.6/site-packages/enamlnativecli/main.py", line 1657, in main
    EnamlNativeCli().start()
  File "/home/chris/Documents/MyApps/EnamlProjects/HelloWorld/venv/lib/python3.6/site-packages/enamlnativecli/main.py", line 1651, in start
    cmd.run(self.args)
  File "/home/chris/Documents/MyApps/EnamlProjects/HelloWorld/venv/lib/python3.6/site-packages/enamlnativecli/main.py", line 1199, in run
    shprint(gradlew, 'installDebug',*args.extra, _debug=True)
  File "/home/chris/Documents/MyApps/EnamlProjects/HelloWorld/venv/lib/python3.6/site-packages/enamlnativecli/main.py", line 89, in shprint
    for c in cmd(*args, **kwargs):
  File "/home/chris/Documents/MyApps/EnamlProjects/HelloWorld/venv/lib/python3.6/site-packages/sh.py", line 863, in next
    self.wait()
  File "/home/chris/Documents/MyApps/EnamlProjects/HelloWorld/venv/lib/python3.6/site-packages/sh.py", line 792, in wait
    self.handle_command_exit_code(exit_code)
  File "/home/chris/Documents/MyApps/EnamlProjects/HelloWorld/venv/lib/python3.6/site-packages/sh.py", line 815, in handle_command_exit_code
    raise exc
sh.ErrorReturnCode_1: 

  RAN: /home/chris/Documents/MyApps/EnamlProjects/HelloWorld/android/gradlew installDebug

  STDOUT:

Welcome to Gradle 4.10.1!

Here are the highlights of this release:
 - Incremental Java compilation by default
 - Periodic Gradle caches cleanup
 - Gradle Kotlin DSL 1.0-RC6
 - Nested included builds
 - SNAPSHOT plugin versions in the `plugins {}` block

For more details see https://docs.gradle.org/4.10.1/release-notes.html

Starting a Gradle Daemon, 1 incompatible Daemon could not be reused, use --status for details

> Starting Dae... (19753 more, please see e.stdout)

  STDERR:

(/home/chris/Documents/MyApps/EnamlProjects/HelloWorld/venv) chris@chris-laptop:~/Documents/MyApps/EnamlProjects/HelloWorld$ 
ChrisFetterly commented 5 years ago

ran enaml-native android-clean and tried to execute again, same result ^

frmdstryr commented 5 years ago

Try updating to the latest cli (2.2.18). It's an NDK build error now:

Android NDK: ERROR:/home/chris/Documents/MyApps/EnamlProjects/HelloWorld/venv/android/enaml-native/src/main/jni/Android.mk:python2.7: LOCAL_SRC_FILES points to a missing file    
Android NDK: Check that /home/chris/Documents/MyApps/EnamlProjects/HelloWorld/venv/android/enaml-native/src/main/jni/../../../../..//android/x86_64/lib/libpython2.7.so exists  or that its path is correct   
/home/chris/Android/Sdk/ndk-bundle/build/core/prebuilt-library.mk:45: *** Android NDK: Aborting    .  Stop.

The cli should write in the python version to the mk file