yunshengtian / Assemble-Them-All

[SIGGRAPH Asia 2022] Assemble Them All: Physics-Based Planning for Generalizable Assembly by Disassembly
http://assembly.csail.mit.edu
MIT License
140 stars 15 forks source link

can not install in Linux #1

Closed luludata closed 1 year ago

luludata commented 1 year ago

My PC info:

Linux project33-System-Product-Name 5.15.0-53-generic #59~20.04.1-Ubuntu SMP Thu Oct 20 15:10:22 UTC 2022 x86_64 x86_64 x86_64 GNU/Linux

Python 3.7.0
cmake version 3.16.3
pybind version (2, 10, 1)
(assembly) ~$ python setup.py install
all
running install
running bdist_egg
running egg_info
creating redmax_py.egg-info
writing redmax_py.egg-info/PKG-INFO
writing dependency_links to redmax_py.egg-info/dependency_links.txt
writing top-level names to redmax_py.egg-info/top_level.txt
writing manifest file 'redmax_py.egg-info/SOURCES.txt'
reading manifest file 'redmax_py.egg-info/SOURCES.txt'
writing manifest file 'redmax_py.egg-info/SOURCES.txt'
installing library code to build/bdist.linux-x86_64/egg
running install_lib
running build_ext
-- The C compiler identification is GNU 9.4.0
-- The CXX compiler identification is GNU 9.4.0
-- Check for working C compiler: /usr/bin/cc
-- Check for working C compiler: /usr/bin/cc -- works
-- Detecting C compiler ABI info
-- Detecting C compiler ABI info - done
-- Detecting C compile features
-- Detecting C compile features - done
-- Check for working CXX compiler: /usr/bin/c++
-- Check for working CXX compiler: /usr/bin/c++ -- works
-- Detecting CXX compiler ABI info
-- Detecting CXX compiler ABI info - done
-- Detecting CXX compile features
-- Detecting CXX compile features - done
CMake Warning (dev) at /usr/share/cmake-3.16/Modules/FindOpenGL.cmake:275 (message):
  Policy CMP0072 is not set: FindOpenGL prefers GLVND by default when
  available.  Run "cmake --help-policy CMP0072" for policy details.  Use the
  cmake_policy command to set the policy and suppress this warning.

  FindOpenGL found both a legacy GL library:

    OPENGL_gl_LIBRARY: /usr/lib/x86_64-linux-gnu/libGL.so

  and GLVND libraries for OpenGL and GLX:

    OPENGL_opengl_LIBRARY: /usr/lib/x86_64-linux-gnu/libOpenGL.so
    OPENGL_glx_LIBRARY: /usr/lib/x86_64-linux-gnu/libGLX.so

  OpenGL_GL_PREFERENCE has not been set to "GLVND" or "LEGACY", so for
  compatibility with CMake 3.10 and below the legacy GL library will be used.
Call Stack (most recent call first):
  CMakeLists.txt:20 (find_package)
This warning is for project developers.  Use -Wno-dev to suppress it.

-- Found OpenGL: /usr/lib/x86_64-linux-gnu/libOpenGL.so   
CMake Error at externals/CMakeLists.txt:25 (add_subdirectory):
  The source directory

    /mnt/sde2/test/AE/test/Assemble-Them-All/simulation/externals/libigl

  does not contain a CMakeLists.txt file.

CMake Error at externals/CMakeLists.txt:34 (add_subdirectory):
  The source directory

    /mnt/sde2/test/AE/test/Assemble-Them-All/simulation/externals/pybind11

  does not contain a CMakeLists.txt file.

-- The imported target "vtkParseOGLExt" references the file
  "/usr/bin/vtkParseOGLExt-7.1"
but this file does not exist.  Possible reasons include:
* The file was deleted, renamed, or moved to another location.
* An install or uninstall procedure did not complete successfully.
* The installation package was faulty and contained
  "/usr/lib/cmake/vtk-7.1/VTKTargets.cmake"
but not all the files it references.

-- The imported target "vtkRenderingPythonTkWidgets" references the file
  "/usr/lib/x86_64-linux-gnu/libvtkRenderingPythonTkWidgets.so"
but this file does not exist.  Possible reasons include:
* The file was deleted, renamed, or moved to another location.
* An install or uninstall procedure did not complete successfully.
* The installation package was faulty and contained
  "/usr/lib/cmake/vtk-7.1/VTKTargets.cmake"
but not all the files it references.

-- The imported target "vtk" references the file
  "/usr/bin/vtk"
but this file does not exist.  Possible reasons include:
* The file was deleted, renamed, or moved to another location.
* An install or uninstall procedure did not complete successfully.
* The installation package was faulty and contained
  "/usr/lib/cmake/vtk-7.1/VTKTargets.cmake"
but not all the files it references.

-- The imported target "pvtk" references the file
  "/usr/bin/pvtk"
but this file does not exist.  Possible reasons include:
* The file was deleted, renamed, or moved to another location.
* An install or uninstall procedure did not complete successfully.
* The installation package was faulty and contained
  "/usr/lib/cmake/vtk-7.1/VTKTargets.cmake"
but not all the files it references.

CMake Deprecation Warning at externals/glfw/CMakeLists.txt:10 (cmake_policy):
  The OLD behavior for policy CMP0042 will be removed from a future version
  of CMake.

  The cmake-policies(7) manual explains that the OLD behaviors of all
  policies are deprecated and that a policy should be set to OLD only under
  specific short-term circumstances.  Projects should be ported to the NEW
  behavior and not rely on setting a policy to OLD.

-- Looking for pthread.h
-- Looking for pthread.h - found
-- Performing Test CMAKE_HAVE_LIBC_PTHREAD
-- Performing Test CMAKE_HAVE_LIBC_PTHREAD - Failed
-- Looking for pthread_create in pthreads
-- Looking for pthread_create in pthreads - not found
-- Looking for pthread_create in pthread
-- Looking for pthread_create in pthread - found
-- Found Threads: TRUE  
-- Found Vulkan: /usr/lib/x86_64-linux-gnu/libvulkan.so  
-- Could NOT find Doxygen (missing: DOXYGEN_EXECUTABLE) 
-- Using X11 for window creation
-- Found X11: /usr/include   
-- Looking for XOpenDisplay in /usr/lib/x86_64-linux-gnu/libX11.so;/usr/lib/x86_64-linux-gnu/libXext.so
-- Looking for XOpenDisplay in /usr/lib/x86_64-linux-gnu/libX11.so;/usr/lib/x86_64-linux-gnu/libXext.so - found
-- Looking for gethostbyname
-- Looking for gethostbyname - found
-- Looking for connect
-- Looking for connect - found
-- Looking for remove
-- Looking for remove - found
-- Looking for shmat
-- Looking for shmat - found
-- Looking for IceConnectionNumber in ICE
-- Looking for IceConnectionNumber in ICE - found
CMake Error at redmax/CMakeLists.txt:9 (pybind11_add_module):
  Unknown CMake command "pybind11_add_module".

-- Configuring incomplete, errors occurred!
See also "/mnt/sde2/test/AE/test/Assemble-Them-All/simulation/build/temp.linux-x86_64-3.7/CMakeFiles/CMakeOutput.log".
See also "/mnt/sde2/test/AE/test/Assemble-Them-All/simulation/build/temp.linux-x86_64-3.7/CMakeFiles/CMakeError.log".
Traceback (most recent call last):
  File "setup.py", line 66, in <module>
    zip_safe=False,
  File "/home/test/anaconda3/envs/assembly/lib/python3.7/site-packages/setuptools/__init__.py", line 153, in setup
    return distutils.core.setup(**attrs)
  File "/home/test/anaconda3/envs/assembly/lib/python3.7/distutils/core.py", line 148, in setup
    dist.run_commands()
  File "/home/test/anaconda3/envs/assembly/lib/python3.7/distutils/dist.py", line 966, in run_commands
    self.run_command(cmd)
  File "/home/test/anaconda3/envs/assembly/lib/python3.7/distutils/dist.py", line 985, in run_command
    cmd_obj.run()
  File "/home/test/anaconda3/envs/assembly/lib/python3.7/site-packages/setuptools/command/install.py", line 67, in run
    self.do_egg_install()
  File "/home/test/anaconda3/envs/assembly/lib/python3.7/site-packages/setuptools/command/install.py", line 109, in do_egg_install
    self.run_command('bdist_egg')
  File "/home/test/anaconda3/envs/assembly/lib/python3.7/distutils/cmd.py", line 313, in run_command
    self.distribution.run_command(command)
  File "/home/test/anaconda3/envs/assembly/lib/python3.7/distutils/dist.py", line 985, in run_command
    cmd_obj.run()
  File "/home/test/anaconda3/envs/assembly/lib/python3.7/site-packages/setuptools/command/bdist_egg.py", line 164, in run
    cmd = self.call_command('install_lib', warn_dir=0)
  File "/home/test/anaconda3/envs/assembly/lib/python3.7/site-packages/setuptools/command/bdist_egg.py", line 150, in call_command
    self.run_command(cmdname)
  File "/home/test/anaconda3/envs/assembly/lib/python3.7/distutils/cmd.py", line 313, in run_command
    self.distribution.run_command(command)
  File "/home/test/anaconda3/envs/assembly/lib/python3.7/distutils/dist.py", line 985, in run_command
    cmd_obj.run()
  File "/home/test/anaconda3/envs/assembly/lib/python3.7/site-packages/setuptools/command/install_lib.py", line 11, in run
    self.build()
  File "/home/test/anaconda3/envs/assembly/lib/python3.7/distutils/command/install_lib.py", line 107, in build
    self.run_command('build_ext')
  File "/home/test/anaconda3/envs/assembly/lib/python3.7/distutils/cmd.py", line 313, in run_command
    self.distribution.run_command(command)
  File "/home/test/anaconda3/envs/assembly/lib/python3.7/distutils/dist.py", line 985, in run_command
    cmd_obj.run()
  File "setup.py", line 32, in run
    self.build_extension(ext)
  File "setup.py", line 57, in build_extension
    subprocess.check_call(['cmake', ext.sourcedir] + cmake_args, cwd=self.build_temp, env=env)
  File "/anaconda3/envs/assembly/lib/python3.7/subprocess.py", line 328, in check_call
    raise CalledProcessError(retcode, cmd)
subprocess.CalledProcessError: Command '['cmake', '/mnt/sde2/test/AE/test/Assemble-Them-All/simulation', '-DCMAKE_LIBRARY_OUTPUT_DIRECTORY=Assemble-Them-All/simulation/build/lib.linux-x86_64-3.7', '-DPYTHON_EXECUTABLE=/anaconda3/envs/assembly/bin/python', '-DCMAKE_BUILD_TYPE=Release']' returned non-zero exit status 1.
yunshengtian commented 1 year ago

Please make sure you add the --recurse-submodules when cloning the repository: git clone --recurse-submodules git@github.com:yunshengtian/Assemble-Them-All.git

luludata commented 1 year ago

Please make sure you add the --recurse-submodules when cloning the repository: git clone --recurse-submodules git@github.com:yunshengtian/Assemble-Them-All.git

The above git clone command resulted in wrong authentication. "Cloning into 'Assemble-Them-All'... git@github.com: Permission denied (publickey). fatal: Could not read from remote repository.

Please make sure you have the correct access rights and the repository exists."

Can you check the access right please? Thanks.

yunshengtian commented 1 year ago

The answers below should solve your problem. https://stackoverflow.com/a/33072867 https://stackoverflow.com/a/31326085

yunshengtian commented 1 year ago

Let me know if this works? If so I will close this issue.

luludata commented 1 year ago

Let me know if this works? If so I will close this issue.

Thanks, it works on Linux but I think some dependencies issue on windows. Thanks for the reply.

cyun9601 commented 1 year ago

On ubuntu, I solved this problem by followings.

sudo apt install g++
sudo apt-get install -y build-essential
sudo apt-get install freeglut3-dev libglu1-mesa-dev mesa-common-dev
yunshengtian commented 1 year ago

Good try! I am not very familiar with Windows, but for Linux definitely g++, build-essential and OpenGL-related libraries are required to build the project.

cyun9601 commented 1 year ago

Good try! I am not very familiar with Windows, but for Linux definitely g++, build-essential and OpenGL-related libraries are required to build the project.

I configure docker container in docker hub. https://hub.docker.com/repository/docker/changyun/assemble-them-all/general

yunshengtian commented 1 year ago

Thank you @cyun9601 for building it and sharing the link here! I will add it to our installation instructions soon.