New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
Failed when import py3d on Windows 10 #408
Comments
@HaiDang2001VN please checkout the latest version and try again. alternatively you can try
|
Hello @takanokage , |
do you have more details on the error? I just tested again and it works on my Windows machine with Python 2.7 and 3.5, 32bit and 64bit. |
I have a similar issue on OSX.
Does it mean I need to install glew? |
I have reinstall via pip but just get |
@qianyizh in your case seems easy enough: install glew. Pretty much all of the dependencies that where installed on my build system have to be installed on the target system. |
@HaiDang2001VN yeah, I added yesterday binaries for the 64bit version of Python 2.7 and 3.5. |
Yeah, I know what to do. But it is not written in the document - so it is not obvious. We should resolve this, either add a document page describing how to install these dependency libraries on various operating systems, or make open3d-python a standalone package that can directly pip install and use out of the box (like opencv-python). Btw, why does open3d-python install opencv too? I don't think opencv is a dependent library of open3d? |
OpenCV - That's on me. I followed the script for installing the python dependencies and there opencv is mentioned as mandatory. So you're saying that opencv is not actually required? In that case I can fix both the script and the pip package, just let me know. |
OpenCV is not mandatory. It is optional for Reconstruction system. |
Are we including the reconstruction system in the Open3D python module? |
Reconstruction system is high-level Python tutorial scripts, although the basic functions for the system are implemented as C++ API in Open3D. It is not true that reconstruction system can be included in Open3D Python module, because it is just series of Python tutorial script. The reconstruction system optionally uses Python API of OpenCV, but OpenCV is not necessary to run Open3D python module. In summary, open3d-python don't have to install opencv. Instead, it could be in |
I agree. Can we make a standalone package? I think this would be much convenient than writing a long document case by case. As @qianyizh mentioned, I also encountered the similar error:
I know this is dependency problem, but someone just want to use Open3D out-of-box. |
This is burning. I just tried on my Ubuntu machine, and this is what I got:
On my OSX:
On my windows: never succeeded. We need to hot fix this. @takanokage can you look into this and give a daily update about it? If you are on vacation, assign someone else (Jaesik or me) so we know the ownership. |
I see there's a mismatch between python installations. It would seem that you're running a custom Python installation, this is why it's not able to import Open3D. Open3D as it is today is only supported with the standard Python installation. That was the specification of the pip package ticket when I worked on it. Open3D is not supported on Anaconda Python - this is not a bug, it is a feature request. |
Thanks for the update. Agree this is a feature that has not been built yet. And we should build it. I am more worried about the ownership of this issue since I know you will be on leave since next week. If you can't work on this this week either, then it probably makes more sense for me or @syncle to just take the ownership until you come back from leave. |
Open3D is supported on Ubuntu/macOS/Windows only on a standard/native Python distribution, not AnaConda.
For any other use cases please open appropriate feature requests and close this. Explanation: |
@qianyizh I think a lot of this confusion was caused by the fact that so far we've assumed that all Python installations are created equal. That is not true. We need a list of all the package managers that manage Python in their own unique way and after that decide which of these we want to support. |
Good. I think the easiest fix for now is to add this as a "note" in the document of:
I will test native builds tonight and if it works I am up for closing this ticket for now (and open a new request for conda-backed python!). |
As a hindsight, I think the confusion came from the lack of documentation. I learnt it just now (that the pip package does not work with conda-backed python) and I am pretty sure I am an experienced user of Open3D :). So we should have it documented. |
Great. I will submit PR to update document accordingly. |
@qianyizh I don't think anybody realized that the issue was different Python installations until you posted the error message showing an anaconda path. This wasn't just our documentation lacking. In fact this is a subtle issue of which I am going to assume most Python users (including ourselves) may not be aware of: there several ways to install Python and these are not necessarily compatible between each other in every aspect. |
To add some more detail, I have tested with a fresh Ubuntu 16.04 and encountered the similar external library issue aforementioned. I used naive pip, no anaconda installed. pip distribution runs out-of-box
However, this is not the case for a user (consider a user who didn't visit our github repo and didn't know about One quick remedy
Better remedy
|
This is very bad. We need hot fix. I will take over the ownership. |
@Travis346 Python 3.7 is not supported in our pip package. If you unzip the pip package, you'll see binaries for Python 2.7, 3.5 and 3.6.
The quick fix would be to compile from source, or, use the 2.7, 3.5 and 3.6 Python version. Later we may add Python 3.7 support as well. BTW, we now have a repository with CI jobs that test pip and conda installations: https://github.com/IntelVCL/Open3D_Python_CI/blob/master/appveyor.yml. They're passing for 2.7, 3.5, 3.6 on Windows. |
@Travis346: the dynamic library link issue is addressed with Open3D v0.3. Can you try out this? @HaiDang2001VN: as a note, from open3d v0.2, we renamed py3d to open3d. |
Hi, is there a fix for DLL issue? Does it work on python3.7? Thanks |
Currently, we don't have pre-compiled library for python3.7 yet. To use Open3D with python3.7, please compile from source. We do have plan to add pre-compiled library for python3.7 in the future -- potentially after the automatic packaging CI is setup. |
@HaiDang2001VN @gtorpiano @Travis346: we have resolved many issues for pip package. Could you try again and share the status? |
Potentially we can add it in |
@yxlao: I agree. Let's do that for the next release. |
Python 3.7 supported has been added since |
Hello @syncle , thank you and your team with magnificent works in computer vision and graphic processing.
I have compiled Open3D with specified Python 3.5 and VS 2017 (CMake use std:c++14 when compile). Then I built
INSTALL
and it successfully createdpy3d.cp35-win_amd64.pyd
onC:\Users\...\Python\Python 3.5\site-packages\
, but when I use Python IDLE 3.5 (64-bit) to import py3d, it getno module named
error.I checked the system variables and make new var named
PYTHONPATH
(as it doesn't exist), assigned the path of .pyd to it but that seems not getting better.I also found the same .pyd in
build\lib\Python\Release
and run python interpreter to import it, received ImportError again.Did you know about anything caused this error or what info you need more to understand the problem here?
Info:
OS: Windows 10 64-bit (Ver 1803, Build 17134.112)
VS 2017: MSVC 14.4 and CMake auto-find OpenMP, Python
Python 3.5 (64-bit) and dependencies is along with Open3D (
src\External
folder)Thanks in advance.
The text was updated successfully, but these errors were encountered: