princeton-vl / infinigen

Infinite Photorealistic Worlds using Procedural Generation
https://infinigen.org
BSD 3-Clause "New" or "Revised" License
5.32k stars 455 forks source link

bpy 3.6.0 module cannot be installed #203

Open chicken-bits opened 6 months ago

chicken-bits commented 6 months ago

Unable to install bpy 3.6.0

When running pip install -e . I am running into a version error with bpy 3.6.0

Steps to Reproduce

cd infinigen
conda create --name infinigen python=3.10
conda activate infinigen

conda install conda-forge::gxx=11.4.0 mesalib glew glm menpo::glfw3
export C_INCLUDE_PATH=$CONDA_PREFIX/include:$C_INCLUDE_PATH
export CPLUS_INCLUDE_PATH=$CONDA_PREFIX/include:$CPLUS_INCLUDE_PATH
export LIBRARY_PATH=$CONDA_PREFIX/lib:$LIBRARY_PATH
export LD_LIBRARY_PATH=$CONDA_PREFIX/lib:$LD_LIBRARY_PATH

pip install -e .

What version of the code were you using?

commit e8687f4ab5e809be28778fe42e26d26b414cca6a

What command did you run?

pip install -e .

What are your FULL output logs?

I have attached my logs.txt. logs.txt

If this is your first time running Infinigen, what are the full install logs?

logs attached.

Platform

Additional context

I have the correct python version required for bpy package but it seems I cannot find the pip installation location for bpy 3.6.0. Do I need to have blender 3.6.0 installed and added to my $PATH?

Many Thanks.

araistrick commented 6 months ago

You do not need to have a separate version of blender installed in order to install the bpy pip package.

Most often this would happen if python!=3.10, since bpy only ships for this version. But in your steps to reproduce you specified version so I am not sure the cause. Maybe run which pip to make sure that conda/envs/infinigen/bin/pip is actually being used and not some other pip?

Batwho commented 5 months ago

Hi, I'm having an exactly same issue when follow the install procedure. Are you able to solve it? @chicken-bits

chicken-bits commented 5 months ago

@Batwho I believe my problem was my remote machine's glibc verison did not meet the blender system requirement.

My glibc is lower than 2.28 which is why it cannot be downloaded.

On a windows machine I was able to install it.

Make sure you have the correct sytem reqs on the OS you work with.

Batwho commented 5 months ago

Thank you very much! I checked and indeed my glibc is lower than 2.28. Are you able to finally run on remote machine without having the sudo access? Might I ask how do you bypass this issue?

chicken-bits commented 5 months ago

Thank you very much! I checked and indeed my glibc is lower than 2.28. Are you able to finally run on remote machine without having the sudo access? Might I ask how do you bypass this issue?

You can try and build glibc2.28 locally on your own user account. However, if the OS version of the remote machine just can't handle it then you would not be able to do it. If you are not able to build it yourself, then you need to contact someone with sudo access and ask for an upgrade for glibc (I would recommend trying to build it yourself first.)

Batwho commented 5 months ago

Cool. Really appreciate your help!

yashkant commented 5 months ago

(facing this issue)

I tried building it on my remote machine, using these steps: https://github.com/jueve/build-glibc

but, I am currently stuck with this issue.

perhaps I will try to install this on my macbook.

Batwho commented 5 months ago

@araistrick Still having this issue and couldn't install a local glibc. I wonder is it possible to use bpy 3.4.0 if I couldn't install 3.6.0 successfully? What would be the functionality difference between using these two versions?

chicken-bits commented 5 months ago

@araistrick Still having this issue and couldn't install a local glibc. I wonder is it possible to use bpy 3.4.0 if I couldn't install 3.6.0 successfully? What would be the functionality difference between using these two versions?

I can confirm this can work, you have to resolve package differences on your own but the code can run and you can generate images.

ukpkhkk commented 4 months ago

@araistrick Still having this issue and couldn't install a local glibc. I wonder is it possible to use bpy 3.4.0 if I couldn't install 3.6.0 successfully? What would be the functionality difference between using these two versions?

I must say that there are some issues between the two versions. I tried to render a image by using vertex color, and I found that rendering results were different with bpy library versions 3.6.0 and 3.4.0. Specifically, I didn't get the correct result when I was using the 3.4.0 bpy library,the color of object was completely wrong. And I still don't know what makes difference because I just run the same code.