jep icon indicating copy to clipboard operation
jep copied to clipboard

Unable to install jep on Windows

Open srcarter3 opened this issue 4 years ago • 5 comments

I've created a new ticket because the previous one was closed.

I just tried to install jep (4.0) on a Windows 10 machine that does not have the very specific C++ build tools installed (MSVC v140 - VS 2015 C++ build tools) and still get the same error as before (with Jep v3.8.2) about not being able to install because of missing Visual Studios C++ package. I've put in the entire output below:

C:\Users\SCarter>pip install jep
Collecting jep
  Using cached jep-4.0.0.tar.gz (3.0 MB)
Building wheels for collected packages: jep
  Building wheel for jep (setup.py) ... error
  ERROR: Command errored out with exit status 1:
   command: 'C:\Users\SCarter\miniconda3\python.exe' -u -c 'import sys, setuptools, tokenize; sys.argv[0] = '"'"'C:\\Users\\SCarter\\AppData\\Local\\Temp\\pip-install-3ymqer2m\\jep\\setup.py'"'"'; __file__='"'"'C:\\Users\\SCarter\\AppData\\Local\\Temp\\pip-install-3ymqer2m\\jep\\setup.py'"'"';f=getattr(tokenize, '"'"'open'"'"', open)(__file__);code=f.read().replace('"'"'\r\n'"'"', '"'"'\n'"'"');f.close();exec(compile(code, __file__, '"'"'exec'"'"'))' bdist_wheel -d 'C:\Users\SCarter\AppData\Local\Temp\pip-wheel-9si4czyu'
       cwd: C:\Users\SCarter\AppData\Local\Temp\pip-install-3ymqer2m\jep\
  Complete output (87 lines):
  numpy include found at C:\Users\SCarter\miniconda3\lib\site-packages\numpy\core\include
  running bdist_wheel
  running build
  running setup_java
  Using JAVA_HOME: C:\Program Files\Java\jdk1.8.0_181
  running build_java
  C:\Program Files\Java\jdk1.8.0_181\bin\javac.exe -deprecation -d build\java -h build\include -classpath src src\main\java\jep\AbstractNDArray.java src\main\java\jep\ClassEnquirer.java src\main\java\jep\ClassList.java src\main\java\jep\DirectNDArray.java src\main\java\jep\Interpreter.java src\main\java\jep\Jep.java src\main\java\jep\JepAccess.java src\main\java\jep\JepConfig.java src\main\java\jep\JepException.java src\main\java\jep\LibraryLocator.java src\main\java\jep\MainInterpreter.java src\main\java\jep\NamingConventionClassEnquirer.java src\main\java\jep\NDArray.java src\main\java\jep\Proxy.java src\main\java\jep\PyConfig.java src\main\java\jep\Run.java src\main\java\jep\SharedInterpreter.java src\main\java\jep\SubInterpreter.java src\main\java\jep\python\InvocationHandler.java src\main\java\jep\python\MemoryManager.java src\main\java\jep\python\PyCallable.java src\main\java\jep\python\PyObject.java src\main\java\jep\python\PyPointer.java
  C:\Program Files\Java\jdk1.8.0_181\bin\javac.exe -deprecation -d build\java\test -classpath build\java;src src\test\java\jep\test\Test.java src\test\java\jep\test\TestCloseWithThreads.java src\test\java\jep\test\TestCompiledScript.java src\test\java\jep\test\TestDefaultMethods.java src\test\java\jep\test\TestExceptionCause.java src\test\java\jep\test\TestExec.java src\test\java\jep\test\TestGetByteArray.java src\test\java\jep\test\TestGetCollectionBoxing.java src\test\java\jep\test\TestGetJPyObject.java src\test\java\jep\test\TestGetTempValue.java src\test\java\jep\test\TestGetWithClass.java src\test\java\jep\test\TestInvoke.java src\test\java\jep\test\TestIteratorable.java src\test\java\jep\test\TestOverload.java src\test\java\jep\test\TestPreInitVariables.java src\test\java\jep\test\TestPyJObject.java src\test\java\jep\test\TestRedirectStreams.java src\test\java\jep\test\TestSharedArgv.java src\test\java\jep\test\TestSharedInterpreter.java src\test\java\jep\test\TestSharedModules.java src\test\java\jep\test\TestSharedModulesThreads.java src\test\java\jep\test\closeable\TestAutoCloseable.java src\test\java\jep\test\numpy\TestNumpy.java src\test\java\jep\test\numpy\TestNumpyArrayToString.java src\test\java\jep\test\numpy\TestNumpyProdShared.java src\test\java\jep\test\numpy\example\TestNumpyGILFreeze.java src\test\java\jep\test\numpy\example\TestNumpyMemoryLeak.java src\test\java\jep\test\numpy\example\TestNumpyProdLost.java src\test\java\jep\test\numpy\example\TestScipyFreeze.java src\test\java\jep\test\synchronization\TestCrossLangSync.java src\test\java\jep\test\types\TestFieldTypes.java src\test\java\jep\test\types\TestMethodTypes.java src\test\java\jep\test\types\TestStaticFieldTypes.java src\test\java\jep\test\types\TestStaticMethodTypes.java
  copying src\main\java\jep\AbstractNDArray.java to build\java\jep.src\main\java\jep\AbstractNDArray.java
  copying src\main\java\jep\ClassEnquirer.java to build\java\jep.src\main\java\jep\ClassEnquirer.java
  copying src\main\java\jep\ClassList.java to build\java\jep.src\main\java\jep\ClassList.java
  copying src\main\java\jep\DirectNDArray.java to build\java\jep.src\main\java\jep\DirectNDArray.java
  copying src\main\java\jep\Interpreter.java to build\java\jep.src\main\java\jep\Interpreter.java
  copying src\main\java\jep\Jep.java to build\java\jep.src\main\java\jep\Jep.java
  copying src\main\java\jep\JepAccess.java to build\java\jep.src\main\java\jep\JepAccess.java
  copying src\main\java\jep\JepConfig.java to build\java\jep.src\main\java\jep\JepConfig.java
  copying src\main\java\jep\JepException.java to build\java\jep.src\main\java\jep\JepException.java
  copying src\main\java\jep\LibraryLocator.java to build\java\jep.src\main\java\jep\LibraryLocator.java
  copying src\main\java\jep\MainInterpreter.java to build\java\jep.src\main\java\jep\MainInterpreter.java
  copying src\main\java\jep\NamingConventionClassEnquirer.java to build\java\jep.src\main\java\jep\NamingConventionClassEnquirer.java
  copying src\main\java\jep\NDArray.java to build\java\jep.src\main\java\jep\NDArray.java
  copying src\main\java\jep\Proxy.java to build\java\jep.src\main\java\jep\Proxy.java
  copying src\main\java\jep\PyConfig.java to build\java\jep.src\main\java\jep\PyConfig.java
  copying src\main\java\jep\Run.java to build\java\jep.src\main\java\jep\Run.java
  copying src\main\java\jep\SharedInterpreter.java to build\java\jep.src\main\java\jep\SharedInterpreter.java
  copying src\main\java\jep\SubInterpreter.java to build\java\jep.src\main\java\jep\SubInterpreter.java
  copying src\main\java\jep\python\InvocationHandler.java to build\java\jep.src\main\java\jep\python\InvocationHandler.java
  copying src\main\java\jep\python\MemoryManager.java to build\java\jep.src\main\java\jep\python\MemoryManager.java
  copying src\main\java\jep\python\PyCallable.java to build\java\jep.src\main\java\jep\python\PyCallable.java
  copying src\main\java\jep\python\PyObject.java to build\java\jep.src\main\java\jep\python\PyObject.java
  copying src\main\java\jep\python\PyPointer.java to build\java\jep.src\main\java\jep\python\PyPointer.java
  copying src\test\java\jep\test\Test.java to build\java\jep.test.src\test\java\jep\test\Test.java
  copying src\test\java\jep\test\TestCloseWithThreads.java to build\java\jep.test.src\test\java\jep\test\TestCloseWithThreads.java
  copying src\test\java\jep\test\TestCompiledScript.java to build\java\jep.test.src\test\java\jep\test\TestCompiledScript.java
  copying src\test\java\jep\test\TestDefaultMethods.java to build\java\jep.test.src\test\java\jep\test\TestDefaultMethods.java
  copying src\test\java\jep\test\TestExceptionCause.java to build\java\jep.test.src\test\java\jep\test\TestExceptionCause.java
  copying src\test\java\jep\test\TestExec.java to build\java\jep.test.src\test\java\jep\test\TestExec.java
  copying src\test\java\jep\test\TestGetByteArray.java to build\java\jep.test.src\test\java\jep\test\TestGetByteArray.java
  copying src\test\java\jep\test\TestGetCollectionBoxing.java to build\java\jep.test.src\test\java\jep\test\TestGetCollectionBoxing.java
  copying src\test\java\jep\test\TestGetJPyObject.java to build\java\jep.test.src\test\java\jep\test\TestGetJPyObject.java
  copying src\test\java\jep\test\TestGetTempValue.java to build\java\jep.test.src\test\java\jep\test\TestGetTempValue.java
  copying src\test\java\jep\test\TestGetWithClass.java to build\java\jep.test.src\test\java\jep\test\TestGetWithClass.java
  copying src\test\java\jep\test\TestInvoke.java to build\java\jep.test.src\test\java\jep\test\TestInvoke.java
  copying src\test\java\jep\test\TestIteratorable.java to build\java\jep.test.src\test\java\jep\test\TestIteratorable.java
  copying src\test\java\jep\test\TestOverload.java to build\java\jep.test.src\test\java\jep\test\TestOverload.java
  copying src\test\java\jep\test\TestPreInitVariables.java to build\java\jep.test.src\test\java\jep\test\TestPreInitVariables.java
  copying src\test\java\jep\test\TestPyJObject.java to build\java\jep.test.src\test\java\jep\test\TestPyJObject.java
  copying src\test\java\jep\test\TestRedirectStreams.java to build\java\jep.test.src\test\java\jep\test\TestRedirectStreams.java
  copying src\test\java\jep\test\TestSharedArgv.java to build\java\jep.test.src\test\java\jep\test\TestSharedArgv.java
  copying src\test\java\jep\test\TestSharedInterpreter.java to build\java\jep.test.src\test\java\jep\test\TestSharedInterpreter.java
  copying src\test\java\jep\test\TestSharedModules.java to build\java\jep.test.src\test\java\jep\test\TestSharedModules.java
  copying src\test\java\jep\test\TestSharedModulesThreads.java to build\java\jep.test.src\test\java\jep\test\TestSharedModulesThreads.java
  copying src\test\java\jep\test\closeable\TestAutoCloseable.java to build\java\jep.test.src\test\java\jep\test\closeable\TestAutoCloseable.java
  copying src\test\java\jep\test\numpy\TestNumpy.java to build\java\jep.test.src\test\java\jep\test\numpy\TestNumpy.java
  copying src\test\java\jep\test\numpy\TestNumpyArrayToString.java to build\java\jep.test.src\test\java\jep\test\numpy\TestNumpyArrayToString.java
  copying src\test\java\jep\test\numpy\TestNumpyProdShared.java to build\java\jep.test.src\test\java\jep\test\numpy\TestNumpyProdShared.java
  copying src\test\java\jep\test\numpy\example\TestNumpyGILFreeze.java to build\java\jep.test.src\test\java\jep\test\numpy\example\TestNumpyGILFreeze.java
  copying src\test\java\jep\test\numpy\example\TestNumpyMemoryLeak.java to build\java\jep.test.src\test\java\jep\test\numpy\example\TestNumpyMemoryLeak.java
  copying src\test\java\jep\test\numpy\example\TestNumpyProdLost.java to build\java\jep.test.src\test\java\jep\test\numpy\example\TestNumpyProdLost.java
  copying src\test\java\jep\test\numpy\example\TestScipyFreeze.java to build\java\jep.test.src\test\java\jep\test\numpy\example\TestScipyFreeze.java
  copying src\test\java\jep\test\synchronization\TestCrossLangSync.java to build\java\jep.test.src\test\java\jep\test\synchronization\TestCrossLangSync.java
  copying src\test\java\jep\test\types\TestFieldTypes.java to build\java\jep.test.src\test\java\jep\test\types\TestFieldTypes.java
  copying src\test\java\jep\test\types\TestMethodTypes.java to build\java\jep.test.src\test\java\jep\test\types\TestMethodTypes.java
  copying src\test\java\jep\test\types\TestStaticFieldTypes.java to build\java\jep.test.src\test\java\jep\test\types\TestStaticFieldTypes.java
  copying src\test\java\jep\test\types\TestStaticMethodTypes.java to build\java\jep.test.src\test\java\jep\test\types\TestStaticMethodTypes.java
  running build_jar
  copying src/main/resources/jep/classlist_8.txt to build/java/jep
  copying src/main/resources/jep/classlist_9.txt to build/java/jep
  copying src/main/resources/jep/classlist_10.txt to build/java/jep
  copying src/main/resources/jep/classlist_11.txt to build/java/jep
  C:\Program Files\Java\jdk1.8.0_181\bin\jar.exe -cf build/java/jep-4.0.0-sources.jar -C build/java/jep.src/main/java jep
  C:\Program Files\Java\jdk1.8.0_181\bin\jar.exe -cfe build/java/jep-4.0.0.jar jep.Run -C build/java jep
  C:\Program Files\Java\jdk1.8.0_181\bin\jar.exe -cf build/java/jep-4.0.0-test-sources.jar -C build/java/jep.test.src/test/java jep
  C:\Program Files\Java\jdk1.8.0_181\bin\jar.exe -cfe build/java/jep-4.0.0-test.jar test.jep.Test -C build/java/test jep
  running build_py
  creating build\lib.win-amd64-3.7
  creating build\lib.win-amd64-3.7\jep
  copying src\main\python\jep\console.py -> build\lib.win-amd64-3.7\jep
  copying src\main\python\jep\java_import_hook.py -> build\lib.win-amd64-3.7\jep
  copying src\main\python\jep\jdbc.py -> build\lib.win-amd64-3.7\jep
  copying src\main\python\jep\redirect_streams.py -> build\lib.win-amd64-3.7\jep
  copying src\main\python\jep\shared_modules_hook.py -> build\lib.win-amd64-3.7\jep
  copying src\main\python\jep\version.py -> build\lib.win-amd64-3.7\jep
  copying src\main\python\jep\__init__.py -> build\lib.win-amd64-3.7\jep
  running build_ext
  building 'jep' extension
  error: Microsoft Visual C++ 14.0 is required. Get it with "Build Tools for Visual Studio": https://visualstudio.microsoft.com/downloads/
  ----------------------------------------
  ERROR: Failed building wheel for jep
  Running setup.py clean for jep
Failed to build jep
Installing collected packages: jep
    Running setup.py install for jep ... error
    ERROR: Command errored out with exit status 1:
     command: 'C:\Users\SCarter\miniconda3\python.exe' -u -c 'import sys, setuptools, tokenize; sys.argv[0] = '"'"'C:\\Users\\SCarter\\AppData\\Local\\Temp\\pip-install-3ymqer2m\\jep\\setup.py'"'"'; __file__='"'"'C:\\Users\\SCarter\\AppData\\Local\\Temp\\pip-install-3ymqer2m\\jep\\setup.py'"'"';f=getattr(tokenize, '"'"'open'"'"', open)(__file__);code=f.read().replace('"'"'\r\n'"'"', '"'"'\n'"'"');f.close();exec(compile(code, __file__, '"'"'exec'"'"'))' install --record 'C:\Users\SCarter\AppData\Local\Temp\pip-record-u8l6e4ah\install-record.txt' --single-version-externally-managed --compile --install-headers 'C:\Users\SCarter\miniconda3\Include\jep'
         cwd: C:\Users\SCarter\AppData\Local\Temp\pip-install-3ymqer2m\jep\
    Complete output (87 lines):
    numpy include found at C:\Users\SCarter\miniconda3\lib\site-packages\numpy\core\include
    running install
    running build
    running setup_java
    Using JAVA_HOME: C:\Program Files\Java\jdk1.8.0_181
    running build_java
    C:\Program Files\Java\jdk1.8.0_181\bin\javac.exe -deprecation -d build\java -h build\include -classpath src src\main\java\jep\AbstractNDArray.java src\main\java\jep\ClassEnquirer.java src\main\java\jep\ClassList.java src\main\java\jep\DirectNDArray.java src\main\java\jep\Interpreter.java src\main\java\jep\Jep.java src\main\java\jep\JepAccess.java src\main\java\jep\JepConfig.java src\main\java\jep\JepException.java src\main\java\jep\LibraryLocator.java src\main\java\jep\MainInterpreter.java src\main\java\jep\NamingConventionClassEnquirer.java src\main\java\jep\NDArray.java src\main\java\jep\Proxy.java src\main\java\jep\PyConfig.java src\main\java\jep\Run.java src\main\java\jep\SharedInterpreter.java src\main\java\jep\SubInterpreter.java src\main\java\jep\python\InvocationHandler.java src\main\java\jep\python\MemoryManager.java src\main\java\jep\python\PyCallable.java src\main\java\jep\python\PyObject.java src\main\java\jep\python\PyPointer.java
    C:\Program Files\Java\jdk1.8.0_181\bin\javac.exe -deprecation -d build\java\test -classpath build\java;src src\test\java\jep\test\Test.java src\test\java\jep\test\TestCloseWithThreads.java src\test\java\jep\test\TestCompiledScript.java src\test\java\jep\test\TestDefaultMethods.java src\test\java\jep\test\TestExceptionCause.java src\test\java\jep\test\TestExec.java src\test\java\jep\test\TestGetByteArray.java src\test\java\jep\test\TestGetCollectionBoxing.java src\test\java\jep\test\TestGetJPyObject.java src\test\java\jep\test\TestGetTempValue.java src\test\java\jep\test\TestGetWithClass.java src\test\java\jep\test\TestInvoke.java src\test\java\jep\test\TestIteratorable.java src\test\java\jep\test\TestOverload.java src\test\java\jep\test\TestPreInitVariables.java src\test\java\jep\test\TestPyJObject.java src\test\java\jep\test\TestRedirectStreams.java src\test\java\jep\test\TestSharedArgv.java src\test\java\jep\test\TestSharedInterpreter.java src\test\java\jep\test\TestSharedModules.java src\test\java\jep\test\TestSharedModulesThreads.java src\test\java\jep\test\closeable\TestAutoCloseable.java src\test\java\jep\test\numpy\TestNumpy.java src\test\java\jep\test\numpy\TestNumpyArrayToString.java src\test\java\jep\test\numpy\TestNumpyProdShared.java src\test\java\jep\test\numpy\example\TestNumpyGILFreeze.java src\test\java\jep\test\numpy\example\TestNumpyMemoryLeak.java src\test\java\jep\test\numpy\example\TestNumpyProdLost.java src\test\java\jep\test\numpy\example\TestScipyFreeze.java src\test\java\jep\test\synchronization\TestCrossLangSync.java src\test\java\jep\test\types\TestFieldTypes.java src\test\java\jep\test\types\TestMethodTypes.java src\test\java\jep\test\types\TestStaticFieldTypes.java src\test\java\jep\test\types\TestStaticMethodTypes.java
    copying src\main\java\jep\AbstractNDArray.java to build\java\jep.src\main\java\jep\AbstractNDArray.java
    copying src\main\java\jep\ClassEnquirer.java to build\java\jep.src\main\java\jep\ClassEnquirer.java
    copying src\main\java\jep\ClassList.java to build\java\jep.src\main\java\jep\ClassList.java
    copying src\main\java\jep\DirectNDArray.java to build\java\jep.src\main\java\jep\DirectNDArray.java
    copying src\main\java\jep\Interpreter.java to build\java\jep.src\main\java\jep\Interpreter.java
    copying src\main\java\jep\Jep.java to build\java\jep.src\main\java\jep\Jep.java
    copying src\main\java\jep\JepAccess.java to build\java\jep.src\main\java\jep\JepAccess.java
    copying src\main\java\jep\JepConfig.java to build\java\jep.src\main\java\jep\JepConfig.java
    copying src\main\java\jep\JepException.java to build\java\jep.src\main\java\jep\JepException.java
    copying src\main\java\jep\LibraryLocator.java to build\java\jep.src\main\java\jep\LibraryLocator.java
    copying src\main\java\jep\MainInterpreter.java to build\java\jep.src\main\java\jep\MainInterpreter.java
    copying src\main\java\jep\NamingConventionClassEnquirer.java to build\java\jep.src\main\java\jep\NamingConventionClassEnquirer.java
    copying src\main\java\jep\NDArray.java to build\java\jep.src\main\java\jep\NDArray.java
    copying src\main\java\jep\Proxy.java to build\java\jep.src\main\java\jep\Proxy.java
    copying src\main\java\jep\PyConfig.java to build\java\jep.src\main\java\jep\PyConfig.java
    copying src\main\java\jep\Run.java to build\java\jep.src\main\java\jep\Run.java
    copying src\main\java\jep\SharedInterpreter.java to build\java\jep.src\main\java\jep\SharedInterpreter.java
    copying src\main\java\jep\SubInterpreter.java to build\java\jep.src\main\java\jep\SubInterpreter.java
    copying src\main\java\jep\python\InvocationHandler.java to build\java\jep.src\main\java\jep\python\InvocationHandler.java
    copying src\main\java\jep\python\MemoryManager.java to build\java\jep.src\main\java\jep\python\MemoryManager.java
    copying src\main\java\jep\python\PyCallable.java to build\java\jep.src\main\java\jep\python\PyCallable.java
    copying src\main\java\jep\python\PyObject.java to build\java\jep.src\main\java\jep\python\PyObject.java
    copying src\main\java\jep\python\PyPointer.java to build\java\jep.src\main\java\jep\python\PyPointer.java
    copying src\test\java\jep\test\Test.java to build\java\jep.test.src\test\java\jep\test\Test.java
    copying src\test\java\jep\test\TestCloseWithThreads.java to build\java\jep.test.src\test\java\jep\test\TestCloseWithThreads.java
    copying src\test\java\jep\test\TestCompiledScript.java to build\java\jep.test.src\test\java\jep\test\TestCompiledScript.java
    copying src\test\java\jep\test\TestDefaultMethods.java to build\java\jep.test.src\test\java\jep\test\TestDefaultMethods.java
    copying src\test\java\jep\test\TestExceptionCause.java to build\java\jep.test.src\test\java\jep\test\TestExceptionCause.java
    copying src\test\java\jep\test\TestExec.java to build\java\jep.test.src\test\java\jep\test\TestExec.java
    copying src\test\java\jep\test\TestGetByteArray.java to build\java\jep.test.src\test\java\jep\test\TestGetByteArray.java
    copying src\test\java\jep\test\TestGetCollectionBoxing.java to build\java\jep.test.src\test\java\jep\test\TestGetCollectionBoxing.java
    copying src\test\java\jep\test\TestGetJPyObject.java to build\java\jep.test.src\test\java\jep\test\TestGetJPyObject.java
    copying src\test\java\jep\test\TestGetTempValue.java to build\java\jep.test.src\test\java\jep\test\TestGetTempValue.java
    copying src\test\java\jep\test\TestGetWithClass.java to build\java\jep.test.src\test\java\jep\test\TestGetWithClass.java
    copying src\test\java\jep\test\TestInvoke.java to build\java\jep.test.src\test\java\jep\test\TestInvoke.java
    copying src\test\java\jep\test\TestIteratorable.java to build\java\jep.test.src\test\java\jep\test\TestIteratorable.java
    copying src\test\java\jep\test\TestOverload.java to build\java\jep.test.src\test\java\jep\test\TestOverload.java
    copying src\test\java\jep\test\TestPreInitVariables.java to build\java\jep.test.src\test\java\jep\test\TestPreInitVariables.java
    copying src\test\java\jep\test\TestPyJObject.java to build\java\jep.test.src\test\java\jep\test\TestPyJObject.java
    copying src\test\java\jep\test\TestRedirectStreams.java to build\java\jep.test.src\test\java\jep\test\TestRedirectStreams.java
    copying src\test\java\jep\test\TestSharedArgv.java to build\java\jep.test.src\test\java\jep\test\TestSharedArgv.java
    copying src\test\java\jep\test\TestSharedInterpreter.java to build\java\jep.test.src\test\java\jep\test\TestSharedInterpreter.java
    copying src\test\java\jep\test\TestSharedModules.java to build\java\jep.test.src\test\java\jep\test\TestSharedModules.java
    copying src\test\java\jep\test\TestSharedModulesThreads.java to build\java\jep.test.src\test\java\jep\test\TestSharedModulesThreads.java
    copying src\test\java\jep\test\closeable\TestAutoCloseable.java to build\java\jep.test.src\test\java\jep\test\closeable\TestAutoCloseable.java
    copying src\test\java\jep\test\numpy\TestNumpy.java to build\java\jep.test.src\test\java\jep\test\numpy\TestNumpy.java
    copying src\test\java\jep\test\numpy\TestNumpyArrayToString.java to build\java\jep.test.src\test\java\jep\test\numpy\TestNumpyArrayToString.java
    copying src\test\java\jep\test\numpy\TestNumpyProdShared.java to build\java\jep.test.src\test\java\jep\test\numpy\TestNumpyProdShared.java
    copying src\test\java\jep\test\numpy\example\TestNumpyGILFreeze.java to build\java\jep.test.src\test\java\jep\test\numpy\example\TestNumpyGILFreeze.java
    copying src\test\java\jep\test\numpy\example\TestNumpyMemoryLeak.java to build\java\jep.test.src\test\java\jep\test\numpy\example\TestNumpyMemoryLeak.java
    copying src\test\java\jep\test\numpy\example\TestNumpyProdLost.java to build\java\jep.test.src\test\java\jep\test\numpy\example\TestNumpyProdLost.java
    copying src\test\java\jep\test\numpy\example\TestScipyFreeze.java to build\java\jep.test.src\test\java\jep\test\numpy\example\TestScipyFreeze.java
    copying src\test\java\jep\test\synchronization\TestCrossLangSync.java to build\java\jep.test.src\test\java\jep\test\synchronization\TestCrossLangSync.java
    copying src\test\java\jep\test\types\TestFieldTypes.java to build\java\jep.test.src\test\java\jep\test\types\TestFieldTypes.java
    copying src\test\java\jep\test\types\TestMethodTypes.java to build\java\jep.test.src\test\java\jep\test\types\TestMethodTypes.java
    copying src\test\java\jep\test\types\TestStaticFieldTypes.java to build\java\jep.test.src\test\java\jep\test\types\TestStaticFieldTypes.java
    copying src\test\java\jep\test\types\TestStaticMethodTypes.java to build\java\jep.test.src\test\java\jep\test\types\TestStaticMethodTypes.java
    running build_jar
    copying src/main/resources/jep/classlist_8.txt to build/java/jep
    copying src/main/resources/jep/classlist_9.txt to build/java/jep
    copying src/main/resources/jep/classlist_10.txt to build/java/jep
    copying src/main/resources/jep/classlist_11.txt to build/java/jep
    C:\Program Files\Java\jdk1.8.0_181\bin\jar.exe -cf build/java/jep-4.0.0-sources.jar -C build/java/jep.src/main/java jep
    C:\Program Files\Java\jdk1.8.0_181\bin\jar.exe -cfe build/java/jep-4.0.0.jar jep.Run -C build/java jep
    C:\Program Files\Java\jdk1.8.0_181\bin\jar.exe -cf build/java/jep-4.0.0-test-sources.jar -C build/java/jep.test.src/test/java jep
    C:\Program Files\Java\jdk1.8.0_181\bin\jar.exe -cfe build/java/jep-4.0.0-test.jar test.jep.Test -C build/java/test jep
    running build_py
    creating build\lib.win-amd64-3.7
    creating build\lib.win-amd64-3.7\jep
    copying src\main\python\jep\console.py -> build\lib.win-amd64-3.7\jep
    copying src\main\python\jep\java_import_hook.py -> build\lib.win-amd64-3.7\jep
    copying src\main\python\jep\jdbc.py -> build\lib.win-amd64-3.7\jep
    copying src\main\python\jep\redirect_streams.py -> build\lib.win-amd64-3.7\jep
    copying src\main\python\jep\shared_modules_hook.py -> build\lib.win-amd64-3.7\jep
    copying src\main\python\jep\version.py -> build\lib.win-amd64-3.7\jep
    copying src\main\python\jep\__init__.py -> build\lib.win-amd64-3.7\jep
    running build_ext
    building 'jep' extension
    error: Microsoft Visual C++ 14.0 is required. Get it with "Build Tools for Visual Studio": https://visualstudio.microsoft.com/downloads/
    ----------------------------------------
ERROR: Command errored out with exit status 1: 'C:\Users\SCarter\miniconda3\python.exe' -u -c 'import sys, setuptools, tokenize; sys.argv[0] = '"'"'C:\\Users\\SCarter\\AppData\\Local\\Temp\\pip-install-3ymqer2m\\jep\\setup.py'"'"'; __file__='"'"'C:\\Users\\SCarter\\AppData\\Local\\Temp\\pip-install-3ymqer2m\\jep\\setup.py'"'"';f=getattr(tokenize, '"'"'open'"'"', open)(__file__);code=f.read().replace('"'"'\r\n'"'"', '"'"'\n'"'"');f.close();exec(compile(code, __file__, '"'"'exec'"'"'))' install --record 'C:\Users\SCarter\AppData\Local\Temp\pip-record-u8l6e4ah\install-record.txt' --single-version-externally-managed --compile --install-headers 'C:\Users\SCarter\miniconda3\Include\jep' Check the logs for full command output.

srcarter3 avatar Nov 24 '21 21:11 srcarter3

What version of Visual Studio do you have installed? I tried Jep 4.0 with the community edition of Visual Studio 2015, 2017, and 2019 and it worked ok.

ndjensen avatar Nov 29 '21 03:11 ndjensen

I created a new Virtual Machine from a Windows ISO, and the Visual Studios that comes with it is: Microsoft Visual C++ 2015-2019 Redistributable (x64) -14.28.29913.0. I've attached a screenshot from the "Apps & Features" window: windows-vm-installed-microsoft-visual-c

srcarter3 avatar Nov 30 '21 19:11 srcarter3

Unfortunately I don't know how to solve this. Jep is using Python's built-in distutils package to do the native build, so that message is somehow coming from there. I agree your install looks ok, but I don't think anyone has built Jep with the redistributable like that. Is installing a version of Visual Studio an option? Community Edition is free.

I'm looking at the compiler that ships with Python 3.7, it looks like it uses the registry, vswhere.exe, or the PATH variable to determine where some of the necessary components are. I wouldn't mess with the registry, but you could try setting PATH to where the visual C++ is installed and/or to where the exes are installed.

ndjensen avatar Nov 30 '21 20:11 ndjensen

This is nothing special, tbh.

image

image

On the first image you can Visual Studio Build tools. On that you need to click "Modify" button (Polish "Modyfikuj") in the bottom right corner

And on the second one, you have to find c++ 14, after clicking on the second tab on the top (sorry, don't know the exact translation.)

After installing that, or modyfing the current installations you should be able to install jep from pip.

I had the problem with installing from JEP and by builidng from cloned repo, and those steps above let me to go further. Could you check that @srcarter3 ?

KamilChomontowski avatar Dec 21 '21 15:12 KamilChomontowski

You can try to use mingw64, I just succeeded.

harbby avatar Jan 06 '23 07:01 harbby