haosulab / SAPIEN

SAPIEN Embodied AI Platform
https://sapien.ucsd.edu/
MIT License
430 stars 41 forks source link

Does Not Build #161

Open robo-todd opened 6 months ago

robo-todd commented 6 months ago

System:

Describe the bug Build instructions do not work.

To Reproduce Check out sapien from github. git submodule update --init --recursive ./docker_build_wheels.sh Fails

git status HEAD detached at 2.2.1 nothing to commit, working tree clean

Expected behavior SAPIEN is built.

Additional context

Error Output: VERSION variable is not specified VERSION defaults to 2.0.0.dev20240524 Compile for Python 37 Release Mode Using bin path /opt/python/cp37-cp37m/bin/python Using include path /opt/python/cp37-cp37m/include/python3.7m Running command /opt/python/cp37-cp37m/bin/python setup.py bdist_wheel ====================Version Data==================== Git Revision Number: ab1d9a9fa1428484a918e61185ae9df2beb7cb30 Git Branch: HEAD Build Datetime: Fri, 24 May 2024 12:48:48 +0000 Version Number: 2.0.0.dev20240524 Host Name: d98aef35dfb9

running bdist_wheel running build running build_py creating build creating build/lib.linux-x86_64-cpython-37 creating build/lib.linux-x86_64-cpython-37/sapien copying python/py_package/init.py -> build/lib.linux-x86_64-cpython-37/sapien copying python/py_package/version.py -> build/lib.linux-x86_64-cpython-37/sapien creating build/lib.linux-x86_64-cpython-37/sapien/core copying python/py_package/core/renderer_config.py -> build/lib.linux-x86_64-cpython-37/sapien/core copying python/py_package/core/init.py -> build/lib.linux-x86_64-cpython-37/sapien/core creating build/lib.linux-x86_64-cpython-37/sapien/asset copying python/py_package/asset/init.py -> build/lib.linux-x86_64-cpython-37/sapien/asset creating build/lib.linux-x86_64-cpython-37/sapien/example copying python/py_package/example/hello_world.py -> build/lib.linux-x86_64-cpython-37/sapien/example copying python/py_package/example/load_urdf.py -> build/lib.linux-x86_64-cpython-37/sapien/example copying python/py_package/example/init.py -> build/lib.linux-x86_64-cpython-37/sapien/example copying python/py_package/example/offscreen.py -> build/lib.linux-x86_64-cpython-37/sapien/example creating build/lib.linux-x86_64-cpython-37/sapien/utils copying python/py_package/utils/init.py -> build/lib.linux-x86_64-cpython-37/sapien/utils copying python/py_package/utils/viewer.py -> build/lib.linux-x86_64-cpython-37/sapien/utils creating build/lib.linux-x86_64-cpython-37/sapien/sensor copying python/py_package/sensor/depth_processor.py -> build/lib.linux-x86_64-cpython-37/sapien/sensor copying python/py_package/sensor/sensor_base.py -> build/lib.linux-x86_64-cpython-37/sapien/sensor copying python/py_package/sensor/init.py -> build/lib.linux-x86_64-cpython-37/sapien/sensor copying python/py_package/sensor/stereodepth.py -> build/lib.linux-x86_64-cpython-37/sapien/sensor copying python/py_package/sensor/activelight.py -> build/lib.linux-x86_64-cpython-37/sapien/sensor copying python/py_package/core/init.pyi -> build/lib.linux-x86_64-cpython-37/sapien/core creating build/lib.linux-x86_64-cpython-37/sapien/core/pysapien copying python/py_package/core/pysapien/init.pyi -> build/lib.linux-x86_64-cpython-37/sapien/core/pysapien creating build/lib.linux-x86_64-cpython-37/sapien/core/pysapien/renderer copying python/py_package/core/pysapien/renderer/init.pyi -> build/lib.linux-x86_64-cpython-37/sapien/core/pysapien/renderer creating build/lib.linux-x86_64-cpython-37/sapien/core/pysapien/dlpack copying python/py_package/core/pysapien/dlpack/init.pyi -> build/lib.linux-x86_64-cpython-37/sapien/core/pysapien/dlpack creating build/lib.linux-x86_64-cpython-37/sapien/core/pysapien/coacd copying python/py_package/core/pysapien/coacd/init.pyi -> build/lib.linux-x86_64-cpython-37/sapien/core/pysapien/coacd running build_ext -- The CXX compiler identification is GNU 10.2.1 -- Detecting CXX compiler ABI info -- Detecting CXX compiler ABI info - done -- Check for working CXX compiler: /opt/rh/devtoolset-10/root/usr/bin/c++ - skipped -- Detecting CXX compile features -- Detecting CXX compile features - done -- Profiler Off -- RELEASE Build -- Performing Test CMAKE_HAVE_LIBC_PTHREAD -- Performing Test CMAKE_HAVE_LIBC_PTHREAD - Success -- Found Threads: TRUE
-- Found Boost: /usr/include (found version "1.69.0") found components: system -- pinocchio FOUND. pinocchio at /usr/local/lib64/libpinocchio.so -- boost_filesystem FOUND. boost_filesystem at /usr/lib64/libboost_filesystem.so -- boost_serialization FOUND. boost_serialization at /usr/lib64/libboost_serialization.so -- boost_system FOUND. boost_system at /usr/lib64/libboost_system.so -- Found cppad: /usr/local/lib/libcppad_lib.so (found suitable version "20210000.6", minimum required is "20180000.0") -- Found Boost: /usr/include (found version "1.69.0") found components: filesystem serialization system -- pybind11 v2.9.2 -- Found PythonInterp: /opt/python/cp37-cp37m/bin/python (found version "3.7.15") -- Found PythonLibs: python3.7m -- Performing Test HAS_FLTO -- Performing Test HAS_FLTO - Success CMake Deprecation Warning at 3rd_party/tinyxml2/CMakeLists.txt:8 (cmake_minimum_required): Compatibility with CMake < 2.8.12 will be removed from a future version of CMake.

Update the VERSION argument value or use a ... suffix to tell CMake that the project does not need compatibility with older versions.

CMake Deprecation Warning at 3rd_party/tinyxml2/CMakeLists.txt:9 (cmake_policy): Compatibility with CMake < 2.8.12 will be removed from a future version of CMake.

Update the VERSION argument value or use a ... suffix to tell CMake that the project does not need compatibility with older versions.

CMake Deprecation Warning at 3rd_party/tinyxml2/CMakeLists.txt:11 (cmake_policy): The OLD behavior for policy CMP0063 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.

-- The C compiler identification is GNU 10.2.1 -- Detecting C compiler ABI info -- Detecting C compiler ABI info - done -- Check for working C compiler: /opt/rh/devtoolset-10/root/usr/bin/cc - skipped -- Detecting C compile features -- Detecting C compile features - done -- RELEASE Build -- Found Vulkan: /workspace/1.3.224.1/x86_64/lib/libvulkan.so (found version "1.3.224") found components: glslc glslangValidator -- CUDA enabled in SVulkan2 -- Found PythonInterp: /opt/python/cp37-cp37m/bin/python (found suitable version "3.7.15", minimum required is "3") -- Google Mock was not found - tests based on that will not build -- spirv-tools not linked - illegal SPIRV may be generated for HLSL -- SPIRV-Cross: Finding Git version for SPIRV-Cross. -- Found Git: /usr/local/bin/git (found version "2.38.1") -- SPIRV-Cross: Git hash: a89dea3c -- Found PythonInterp: /opt/python/cp37-cp37m/bin/python (found version "3.7.15") SPIRV-Cross: Testing will be disabled for SPIRV-Cross. Could not find glslang or SPIRV-Tools build under external/. To enable testing, run ./checkout_glslang_spirv_tools.sh and ./build_glslang_spirv_tools.sh first. -- Found OpenMP_C: -fopenmp (found version "4.5") -- Found OpenMP_CXX: -fopenmp (found version "4.5") -- Found OpenMP: TRUE (found version "4.5")
CoACD: using static libraries -- RELEASE Build CMake Error at 3rd_party/kuafu/CMakeLists.txt:34 (find_package): By not providing "FindSDL2.cmake" in CMAKE_MODULE_PATH this project has asked CMake to find a package configuration file provided by "SDL2", but CMake did not find one.

Could not find a package configuration file provided by "SDL2" with any of the following names:

SDL2Config.cmake
sdl2-config.cmake

Add the installation prefix of "SDL2" to CMAKE_PREFIX_PATH or set "SDL2_DIR" to a directory containing one of the above files. If "SDL2" provides a separate development package or SDK, be sure it has been installed.

-- Configuring incomplete, errors occurred! See also "/workspace/SAPIEN/build/temp.linux-x86_64-cpython-37/CMakeFiles/CMakeOutput.log". Traceback (most recent call last): File "setup.py", line 247, in scripts=["python/py_package/bin/coacd"]) File "/opt/python/cp37-cp37m/lib/python3.7/site-packages/setuptools/init.py", line 87, in setup return distutils.core.setup(**attrs) File "/opt/python/cp37-cp37m/lib/python3.7/site-packages/setuptools/_distutils/core.py", line 185, in setup return run_commands(dist) File "/opt/python/cp37-cp37m/lib/python3.7/site-packages/setuptools/_distutils/core.py", line 201, in run_commands dist.run_commands() File "/opt/python/cp37-cp37m/lib/python3.7/site-packages/setuptools/_distutils/dist.py", line 968, in run_commands self.run_command(cmd) File "/opt/python/cp37-cp37m/lib/python3.7/site-packages/setuptools/dist.py", line 1217, in run_command super().run_command(command) File "/opt/python/cp37-cp37m/lib/python3.7/site-packages/setuptools/_distutils/dist.py", line 987, in run_command cmd_obj.run() File "/opt/python/cp37-cp37m/lib/python3.7/site-packages/wheel/bdist_wheel.py", line 325, in run self.run_command("build") File "/opt/python/cp37-cp37m/lib/python3.7/site-packages/setuptools/_distutils/cmd.py", line 319, in run_command self.distribution.run_command(command) File "/opt/python/cp37-cp37m/lib/python3.7/site-packages/setuptools/dist.py", line 1217, in run_command super().run_command(command) File "/opt/python/cp37-cp37m/lib/python3.7/site-packages/setuptools/_distutils/dist.py", line 987, in run_command cmd_obj.run() File "/opt/python/cp37-cp37m/lib/python3.7/site-packages/setuptools/_distutils/command/build.py", line 132, in run self.run_command(cmd_name) File "/opt/python/cp37-cp37m/lib/python3.7/site-packages/setuptools/_distutils/cmd.py", line 319, in run_command self.distribution.run_command(command) File "/opt/python/cp37-cp37m/lib/python3.7/site-packages/setuptools/dist.py", line 1217, in run_command super().run_command(command) File "/opt/python/cp37-cp37m/lib/python3.7/site-packages/setuptools/_distutils/dist.py", line 987, in run_command cmd_obj.run() File "setup.py", line 37, in run self.build_extension(ext) File "setup.py", line 74, in build_extension subprocess.check_call(['cmake', ext.sourcedir] + cmake_args, cwd=self.build_temp, env=env) File "/opt/python/cp37-cp37m/lib/python3.7/subprocess.py", line 363, in check_call raise CalledProcessError(retcode, cmd) subprocess.CalledProcessError: Command '['cmake', '/workspace/SAPIEN', '-DCMAKE_LIBRARY_OUTPUT_DIRECTORY=/workspace/SAPIEN/build/lib.linux-x86_64-cpython-37/sapien/core', '-DPYTHON_EXECUTABLE=/opt/python/cp37-cp37m/bin/python', '-DSAPIEN_PROFILE=OFF', '-DSAPIEN_KUAFU=ON', '-DSAPIEN_CUDA=ON', '-DCMAKE_BUILD_TYPE=Release']' returned non-zero exit status 1. SAPIEN version 2.0.0.dev20240524 usage: auditwheel [-h] [-V] [-v] command ... auditwheel: error: cannot access ./dist/sapien-2.0.0.dev20240524-cp37-cp37m-linux_x86_64.whl. No such file

robo-todd commented 6 months ago

libsdl2-dev is installed on my system: Reading package lists... Done Building dependency tree... Done Reading state information... Done libsdl2-dev is already the newest version (2.0.20+dfsg-2ubuntu1.22.04.1).

StoneT2000 commented 6 months ago

Do you want to build SAPIEN 2 or 3? Currently we are prioritizing work on SAPIEN 3 which can be setup by following instructions on the dev branch.

robo-todd commented 6 months ago

SAPIEN 3 sounds great. I clone the repository, then run 'git submodule update --init'. Then I run: 'git checkout 3.0.0dev' I get: fatal: failed to unpack tree object 8ab7719390bcb3bfb585368538b4f55bfa0e5456 error: Submodule '3rd_party/simsense' could not be updated. error: Cannot update submodule: 3rd_party/simsense

Aborting

Looks like branch 3.0.0.dev2 works?

wzds2015 commented 3 weeks ago

I got the same error. I don't see 3.0.0dev2 branch

fbxiang commented 3 weeks ago

The latest SAPIEN is automatically built in Github actions. https://github.com/haosulab/SAPIEN/actions You can directly download the artifacts or follow the procedure how Github actions are executed. If you are trying to build from source because you are trying to build SAPIEN for a different platform, this might be very hard as we have not tested any other platform except x86 manylinux and Windows.

wzds2015 commented 3 weeks ago

The latest SAPIEN is automatically built in Github actions. https://github.com/haosulab/SAPIEN/actions You can directly download the artifacts or follow the procedure how Github actions are executed. If you are trying to build from source because you are trying to build SAPIEN for a different platform, this might be very hard as we have not tested any other platform except x86 manylinux and Windows.

Hi Fanbo,

I want to use ManiSkill3. If I install sapien using "pip install sapien", it seems to install v2.x. When I use ManiSkill3, it raises error: sapiend.physx module not found. I find sapien 3.x has this module. So I want to compile from source. In am including all these packages into one person dockerfile. Do you have any recommendation how should I install sapien and maniskill?

fbxiang commented 3 weeks ago

You can refer to ManiSkill's guide. ManiSkill uses a beta release of SAPIEN, and pip does not choose that by default, but you can simply install from ManiSkill's requirements file.

Dosoon-KR commented 1 week ago

Hi, robo-todd I got exactly same error as you had, did you find a solution for that error? If you did, please share your solution!

howird commented 4 days ago

You mention that you are using Python 3.10.12 but the logs say you are using Python 3.7? Could this be an issue with your python install?