Vchitect / Vlogger

[CVPR2024] Make Your Dream A Vlog
Apache License 2.0
415 stars 42 forks source link

Can't install on ubuntu #2

Open wrannaman opened 10 months ago

wrannaman commented 10 months ago

Project looks awesome! trying to install it and having some issues on ubuntu 22.04

Issue with hoedown. hoedown install on < python 3.10

steps to repro

conda create -n vlogger python==3.10.11
conda activate vlogger
pip install -r requirements.txt

error:

Collecting hoedown
  Using cached hoedown-0.3.0.tar.gz (125 kB)
  Preparing metadata (setup.py) ... done
Building wheels for collected packages: hoedown
  Building wheel for hoedown (setup.py) ... error
  error: subprocess-exited-with-error

  × python setup.py bdist_wheel did not run successfully.
  │ exit code: 1
  ╰─> [175 lines of output]
      running bdist_wheel
      running build
      running build_ext
      building 'hoedown' extension
      creating build
      creating build/temp.linux-x86_64-cpython-310
      creating build/temp.linux-x86_64-cpython-310/hoedownpy
      creating build/temp.linux-x86_64-cpython-310/hoedownpy/_hoedown
      creating build/temp.linux-x86_64-cpython-310/hoedownpy/_hoedown/src
      gcc -pthread -B /home/ubuntu/anaconda3/envs/vlogger/compiler_compat -Wno-unused-result -Wsign-compare -DNDEBUG -g -fwrapv -O2 -Wall -fPIC -O2 -isystem /home/ubuntu/anaconda3/envs/vlogger/include -fPIC -O2 -isystem /home/ubuntu/anaconda3/envs/vlogger/include -fPIC -Dinithoedownpy=inithoedown -I/home/ubuntu/anaconda3/envs/vlogger/include/python3.10 -c hoedownpy/_hoedown/src/autolink.c -o build/temp.linux-x86_64-cpython-310/hoedownpy/_hoedown/src/autolink.o
      gcc -pthread -B /home/ubuntu/anaconda3/envs/vlogger/compiler_compat -Wno-unused-result -Wsign-compare -DNDEBUG -g -fwrapv -O2 -Wall -fPIC -O2 -isystem /home/ubuntu/anaconda3/envs/vlogger/include -fPIC -O2 -isystem /home/ubuntu/anaconda3/envs/vlogger/include -fPIC -Dinithoedownpy=inithoedown -I/home/ubuntu/anaconda3/envs/vlogger/include/python3.10 -c hoedownpy/_hoedown/src/buffer.c -o build/temp.linux-x86_64-cpython-310/hoedownpy/_hoedown/src/buffer.o
      gcc -pthread -B /home/ubuntu/anaconda3/envs/vlogger/compiler_compat -Wno-unused-result -Wsign-compare -DNDEBUG -g -fwrapv -O2 -Wall -fPIC -O2 -isystem /home/ubuntu/anaconda3/envs/vlogger/include -fPIC -O2 -isystem /home/ubuntu/anaconda3/envs/vlogger/include -fPIC -Dinithoedownpy=inithoedown -I/home/ubuntu/anaconda3/envs/vlogger/include/python3.10 -c hoedownpy/_hoedown/src/document.c -o build/temp.linux-x86_64-cpython-310/hoedownpy/_hoedown/src/document.o
      hoedownpy/_hoedown/src/document.c: In function ‘char_link’:
      hoedownpy/_hoedown/src/document.c:1194:33: warning: this ‘else’ clause does not guard... [-Wmisleading-indentation]
       1194 |                                 else nb_p--; i++;
            |                                 ^~~~
      hoedownpy/_hoedown/src/document.c:1194:46: note: ...this statement, but the latter is misleadingly indented as if it were guarded by the ‘else’
       1194 |                                 else nb_p--; i++;
            |                                              ^
      gcc -pthread -B /home/ubuntu/anaconda3/envs/vlogger/compiler_compat -Wno-unused-result -Wsign-compare -DNDEBUG -g -fwrapv -O2 -Wall -fPIC -O2 -isystem /home/ubuntu/anaconda3/envs/vlogger/include -fPIC -O2 -isystem /home/ubuntu/anaconda3/envs/vlogger/include -fPIC -Dinithoedownpy=inithoedown -I/home/ubuntu/anaconda3/envs/vlogger/include/python3.10 -c hoedownpy/_hoedown/src/escape.c -o build/temp.linux-x86_64-cpython-310/hoedownpy/_hoedown/src/escape.o
      gcc -pthread -B /home/ubuntu/anaconda3/envs/vlogger/compiler_compat -Wno-unused-result -Wsign-compare -DNDEBUG -g -fwrapv -O2 -Wall -fPIC -O2 -isystem /home/ubuntu/anaconda3/envs/vlogger/include -fPIC -O2 -isystem /home/ubuntu/anaconda3/envs/vlogger/include -fPIC -Dinithoedownpy=inithoedown -I/home/ubuntu/anaconda3/envs/vlogger/include/python3.10 -c hoedownpy/_hoedown/src/html.c -o build/temp.linux-x86_64-cpython-310/hoedownpy/_hoedown/src/html.o
      gcc -pthread -B /home/ubuntu/anaconda3/envs/vlogger/compiler_compat -Wno-unused-result -Wsign-compare -DNDEBUG -g -fwrapv -O2 -Wall -fPIC -O2 -isystem /home/ubuntu/anaconda3/envs/vlogger/include -fPIC -O2 -isystem /home/ubuntu/anaconda3/envs/vlogger/include -fPIC -Dinithoedownpy=inithoedown -I/home/ubuntu/anaconda3/envs/vlogger/include/python3.10 -c hoedownpy/_hoedown/src/html_blocks.c -o build/temp.linux-x86_64-cpython-310/hoedownpy/_hoedown/src/html_blocks.o
      gcc -pthread -B /home/ubuntu/anaconda3/envs/vlogger/compiler_compat -Wno-unused-result -Wsign-compare -DNDEBUG -g -fwrapv -O2 -Wall -fPIC -O2 -isystem /home/ubuntu/anaconda3/envs/vlogger/include -fPIC -O2 -isystem /home/ubuntu/anaconda3/envs/vlogger/include -fPIC -Dinithoedownpy=inithoedown -I/home/ubuntu/anaconda3/envs/vlogger/include/python3.10 -c hoedownpy/_hoedown/src/html_smartypants.c -o build/temp.linux-x86_64-cpython-310/hoedownpy/_hoedown/src/html_smartypants.o
      gcc -pthread -B /home/ubuntu/anaconda3/envs/vlogger/compiler_compat -Wno-unused-result -Wsign-compare -DNDEBUG -g -fwrapv -O2 -Wall -fPIC -O2 -isystem /home/ubuntu/anaconda3/envs/vlogger/include -fPIC -O2 -isystem /home/ubuntu/anaconda3/envs/vlogger/include -fPIC -Dinithoedownpy=inithoedown -I/home/ubuntu/anaconda3/envs/vlogger/include/python3.10 -c hoedownpy/_hoedown/src/stack.c -o build/temp.linux-x86_64-cpython-310/hoedownpy/_hoedown/src/stack.o
      gcc -pthread -B /home/ubuntu/anaconda3/envs/vlogger/compiler_compat -Wno-unused-result -Wsign-compare -DNDEBUG -g -fwrapv -O2 -Wall -fPIC -O2 -isystem /home/ubuntu/anaconda3/envs/vlogger/include -fPIC -O2 -isystem /home/ubuntu/anaconda3/envs/vlogger/include -fPIC -Dinithoedownpy=inithoedown -I/home/ubuntu/anaconda3/envs/vlogger/include/python3.10 -c hoedownpy/hoedown.c -o build/temp.linux-x86_64-cpython-310/hoedownpy/hoedown.o
      hoedownpy/hoedown.c: In function ‘__pyx_tp_dealloc_7hoedown_BaseRenderer’:
      hoedownpy/hoedown.c:4501:5: error: lvalue required as increment operand
       4501 |     ++Py_REFCNT(o);
            |     ^~
      hoedownpy/hoedown.c:4503:5: error: lvalue required as decrement operand
       4503 |     --Py_REFCNT(o);
            |     ^~
      hoedownpy/hoedown.c: In function ‘__pyx_tp_dealloc_7hoedown_Markdown’:
      hoedownpy/hoedown.c:4762:5: error: lvalue required as increment operand
       4762 |     ++Py_REFCNT(o);
            |     ^~
      hoedownpy/hoedown.c:4764:5: error: lvalue required as decrement operand
       4764 |     --Py_REFCNT(o);
            |     ^~
      hoedownpy/hoedown.c: In function ‘__Pyx_modinit_type_init_code’:
      hoedownpy/hoedown.c:5164:34: error: ‘PyTypeObject’ {aka ‘struct _typeobject’} has no member named ‘tp_print’
       5164 |   __pyx_type_7hoedown_SmartyPants.tp_print = 0;
            |                                  ^
      hoedownpy/hoedown.c:5172:35: error: ‘PyTypeObject’ {aka ‘struct _typeobject’} has no member named ‘tp_print’
       5172 |   __pyx_type_7hoedown_BaseRenderer.tp_print = 0;
            |                                   ^
      hoedownpy/hoedown.c:5181:35: error: ‘PyTypeObject’ {aka ‘struct _typeobject’} has no member named ‘tp_print’
       5181 |   __pyx_type_7hoedown_HtmlRenderer.tp_print = 0;
            |                                   ^
      hoedownpy/hoedown.c:5190:38: error: ‘PyTypeObject’ {aka ‘struct _typeobject’} has no member named ‘tp_print’
       5190 |   __pyx_type_7hoedown_HtmlTocRenderer.tp_print = 0;
            |                                      ^
      hoedownpy/hoedown.c:5198:31: error: ‘PyTypeObject’ {aka ‘struct _typeobject’} has no member named ‘tp_print’
       5198 |   __pyx_type_7hoedown_Markdown.tp_print = 0;
            |                               ^
      hoedownpy/hoedown.c: In function ‘__Pyx_ParseOptionalKeywords’:
      hoedownpy/hoedown.c:5808:21: warning: ‘_PyUnicode_get_wstr_length’ is deprecated [-Wdeprecated-declarations]
       5808 |                     (PyUnicode_GET_SIZE(**name) != PyUnicode_GET_SIZE(key)) ? 1 :
            |                     ^
      In file included from /home/ubuntu/anaconda3/envs/vlogger/include/python3.10/unicodeobject.h:1046,
                       from /home/ubuntu/anaconda3/envs/vlogger/include/python3.10/Python.h:96,
                       from hoedownpy/hoedown.c:4:
      /home/ubuntu/anaconda3/envs/vlogger/include/python3.10/cpython/unicodeobject.h:446:26: note: declared here
        446 | static inline Py_ssize_t _PyUnicode_get_wstr_length(PyObject *op) {
            |                          ^~~~~~~~~~~~~~~~~~~~~~~~~~
      hoedownpy/hoedown.c:5808:21: warning: ‘PyUnicode_AsUnicode’ is deprecated [-Wdeprecated-declarations]
       5808 |                     (PyUnicode_GET_SIZE(**name) != PyUnicode_GET_SIZE(key)) ? 1 :
            |                     ^
      In file included from /home/ubuntu/anaconda3/envs/vlogger/include/python3.10/unicodeobject.h:1046,
                       from /home/ubuntu/anaconda3/envs/vlogger/include/python3.10/Python.h:96,
                       from hoedownpy/hoedown.c:4:
      /home/ubuntu/anaconda3/envs/vlogger/include/python3.10/cpython/unicodeobject.h:580:45: note: declared here
        580 | Py_DEPRECATED(3.3) PyAPI_FUNC(Py_UNICODE *) PyUnicode_AsUnicode(
            |                                             ^~~~~~~~~~~~~~~~~~~
      hoedownpy/hoedown.c:5808:21: warning: ‘_PyUnicode_get_wstr_length’ is deprecated [-Wdeprecated-declarations]
       5808 |                     (PyUnicode_GET_SIZE(**name) != PyUnicode_GET_SIZE(key)) ? 1 :
            |                     ^
      In file included from /home/ubuntu/anaconda3/envs/vlogger/include/python3.10/unicodeobject.h:1046,
                       from /home/ubuntu/anaconda3/envs/vlogger/include/python3.10/Python.h:96,
                       from hoedownpy/hoedown.c:4:
      /home/ubuntu/anaconda3/envs/vlogger/include/python3.10/cpython/unicodeobject.h:446:26: note: declared here
        446 | static inline Py_ssize_t _PyUnicode_get_wstr_length(PyObject *op) {
            |                          ^~~~~~~~~~~~~~~~~~~~~~~~~~
      hoedownpy/hoedown.c:5808:21: warning: ‘_PyUnicode_get_wstr_length’ is deprecated [-Wdeprecated-declarations]
       5808 |                     (PyUnicode_GET_SIZE(**name) != PyUnicode_GET_SIZE(key)) ? 1 :
            |                     ^
      In file included from /home/ubuntu/anaconda3/envs/vlogger/include/python3.10/unicodeobject.h:1046,
                       from /home/ubuntu/anaconda3/envs/vlogger/include/python3.10/Python.h:96,
                       from hoedownpy/hoedown.c:4:
      /home/ubuntu/anaconda3/envs/vlogger/include/python3.10/cpython/unicodeobject.h:446:26: note: declared here
        446 | static inline Py_ssize_t _PyUnicode_get_wstr_length(PyObject *op) {
            |                          ^~~~~~~~~~~~~~~~~~~~~~~~~~
      hoedownpy/hoedown.c:5808:21: warning: ‘PyUnicode_AsUnicode’ is deprecated [-Wdeprecated-declarations]
       5808 |                     (PyUnicode_GET_SIZE(**name) != PyUnicode_GET_SIZE(key)) ? 1 :
            |                     ^
      In file included from /home/ubuntu/anaconda3/envs/vlogger/include/python3.10/unicodeobject.h:1046,
                       from /home/ubuntu/anaconda3/envs/vlogger/include/python3.10/Python.h:96,
                       from hoedownpy/hoedown.c:4:
      /home/ubuntu/anaconda3/envs/vlogger/include/python3.10/cpython/unicodeobject.h:580:45: note: declared here
        580 | Py_DEPRECATED(3.3) PyAPI_FUNC(Py_UNICODE *) PyUnicode_AsUnicode(
            |                                             ^~~~~~~~~~~~~~~~~~~
      hoedownpy/hoedown.c:5808:21: warning: ‘_PyUnicode_get_wstr_length’ is deprecated [-Wdeprecated-declarations]
       5808 |                     (PyUnicode_GET_SIZE(**name) != PyUnicode_GET_SIZE(key)) ? 1 :
            |                     ^
      In file included from /home/ubuntu/anaconda3/envs/vlogger/include/python3.10/unicodeobject.h:1046,
                       from /home/ubuntu/anaconda3/envs/vlogger/include/python3.10/Python.h:96,
                       from hoedownpy/hoedown.c:4:
      /home/ubuntu/anaconda3/envs/vlogger/include/python3.10/cpython/unicodeobject.h:446:26: note: declared here
        446 | static inline Py_ssize_t _PyUnicode_get_wstr_length(PyObject *op) {
            |                          ^~~~~~~~~~~~~~~~~~~~~~~~~~
      hoedownpy/hoedown.c:5824:25: warning: ‘_PyUnicode_get_wstr_length’ is deprecated [-Wdeprecated-declarations]
       5824 |                         (PyUnicode_GET_SIZE(**argname) != PyUnicode_GET_SIZE(key)) ? 1 :
            |                         ^
      In file included from /home/ubuntu/anaconda3/envs/vlogger/include/python3.10/unicodeobject.h:1046,
                       from /home/ubuntu/anaconda3/envs/vlogger/include/python3.10/Python.h:96,
                       from hoedownpy/hoedown.c:4:
      /home/ubuntu/anaconda3/envs/vlogger/include/python3.10/cpython/unicodeobject.h:446:26: note: declared here
        446 | static inline Py_ssize_t _PyUnicode_get_wstr_length(PyObject *op) {
            |                          ^~~~~~~~~~~~~~~~~~~~~~~~~~
      hoedownpy/hoedown.c:5824:25: warning: ‘PyUnicode_AsUnicode’ is deprecated [-Wdeprecated-declarations]
       5824 |                         (PyUnicode_GET_SIZE(**argname) != PyUnicode_GET_SIZE(key)) ? 1 :
            |                         ^
      In file included from /home/ubuntu/anaconda3/envs/vlogger/include/python3.10/unicodeobject.h:1046,
                       from /home/ubuntu/anaconda3/envs/vlogger/include/python3.10/Python.h:96,
                       from hoedownpy/hoedown.c:4:
      /home/ubuntu/anaconda3/envs/vlogger/include/python3.10/cpython/unicodeobject.h:580:45: note: declared here
        580 | Py_DEPRECATED(3.3) PyAPI_FUNC(Py_UNICODE *) PyUnicode_AsUnicode(
            |                                             ^~~~~~~~~~~~~~~~~~~
      hoedownpy/hoedown.c:5824:25: warning: ‘_PyUnicode_get_wstr_length’ is deprecated [-Wdeprecated-declarations]
       5824 |                         (PyUnicode_GET_SIZE(**argname) != PyUnicode_GET_SIZE(key)) ? 1 :
            |                         ^
      In file included from /home/ubuntu/anaconda3/envs/vlogger/include/python3.10/unicodeobject.h:1046,
                       from /home/ubuntu/anaconda3/envs/vlogger/include/python3.10/Python.h:96,
                       from hoedownpy/hoedown.c:4:
      /home/ubuntu/anaconda3/envs/vlogger/include/python3.10/cpython/unicodeobject.h:446:26: note: declared here
        446 | static inline Py_ssize_t _PyUnicode_get_wstr_length(PyObject *op) {
            |                          ^~~~~~~~~~~~~~~~~~~~~~~~~~
      hoedownpy/hoedown.c:5824:25: warning: ‘_PyUnicode_get_wstr_length’ is deprecated [-Wdeprecated-declarations]
       5824 |                         (PyUnicode_GET_SIZE(**argname) != PyUnicode_GET_SIZE(key)) ? 1 :
            |                         ^
      In file included from /home/ubuntu/anaconda3/envs/vlogger/include/python3.10/unicodeobject.h:1046,
                       from /home/ubuntu/anaconda3/envs/vlogger/include/python3.10/Python.h:96,
                       from hoedownpy/hoedown.c:4:
      /home/ubuntu/anaconda3/envs/vlogger/include/python3.10/cpython/unicodeobject.h:446:26: note: declared here
        446 | static inline Py_ssize_t _PyUnicode_get_wstr_length(PyObject *op) {
            |                          ^~~~~~~~~~~~~~~~~~~~~~~~~~
      hoedownpy/hoedown.c:5824:25: warning: ‘PyUnicode_AsUnicode’ is deprecated [-Wdeprecated-declarations]
       5824 |                         (PyUnicode_GET_SIZE(**argname) != PyUnicode_GET_SIZE(key)) ? 1 :
            |                         ^
      In file included from /home/ubuntu/anaconda3/envs/vlogger/include/python3.10/unicodeobject.h:1046,
                       from /home/ubuntu/anaconda3/envs/vlogger/include/python3.10/Python.h:96,
                       from hoedownpy/hoedown.c:4:
      /home/ubuntu/anaconda3/envs/vlogger/include/python3.10/cpython/unicodeobject.h:580:45: note: declared here
        580 | Py_DEPRECATED(3.3) PyAPI_FUNC(Py_UNICODE *) PyUnicode_AsUnicode(
            |                                             ^~~~~~~~~~~~~~~~~~~
      hoedownpy/hoedown.c:5824:25: warning: ‘_PyUnicode_get_wstr_length’ is deprecated [-Wdeprecated-declarations]
       5824 |                         (PyUnicode_GET_SIZE(**argname) != PyUnicode_GET_SIZE(key)) ? 1 :
            |                         ^
      In file included from /home/ubuntu/anaconda3/envs/vlogger/include/python3.10/unicodeobject.h:1046,
                       from /home/ubuntu/anaconda3/envs/vlogger/include/python3.10/Python.h:96,
                       from hoedownpy/hoedown.c:4:
      /home/ubuntu/anaconda3/envs/vlogger/include/python3.10/cpython/unicodeobject.h:446:26: note: declared here
        446 | static inline Py_ssize_t _PyUnicode_get_wstr_length(PyObject *op) {
            |                          ^~~~~~~~~~~~~~~~~~~~~~~~~~
      hoedownpy/hoedown.c: In function ‘__Pyx_decode_c_string’:
      hoedownpy/hoedown.c:6213:9: warning: ‘PyUnicode_FromUnicode’ is deprecated [-Wdeprecated-declarations]
       6213 |         return PyUnicode_FromUnicode(NULL, 0);
            |         ^~~~~~
      In file included from /home/ubuntu/anaconda3/envs/vlogger/include/python3.10/unicodeobject.h:1046,
                       from /home/ubuntu/anaconda3/envs/vlogger/include/python3.10/Python.h:96,
                       from hoedownpy/hoedown.c:4:
      /home/ubuntu/anaconda3/envs/vlogger/include/python3.10/cpython/unicodeobject.h:551:42: note: declared here
        551 | Py_DEPRECATED(3.3) PyAPI_FUNC(PyObject*) PyUnicode_FromUnicode(
            |                                          ^~~~~~~~~~~~~~~~~~~~~
      error: command '/usr/bin/gcc' failed with exit code 1
      [end of output]

  note: This error originates from a subprocess, and is likely not a problem with pip.
  ERROR: Failed building wheel for hoedown
  Running setup.py clean for hoedown
  error: subprocess-exited-with-error

  × python setup.py clean did not run successfully.
  │ exit code: 1
  ╰─> [6 lines of output]
      usage: setup.py [global_opts] cmd1 [cmd1_opts] [cmd2 [cmd2_opts] ...]
         or: setup.py --help [cmd1 cmd2 ...]
         or: setup.py --help-commands
         or: setup.py cmd --help

      error: option --all not recognized
      [end of output]

  note: This error originates from a subprocess, and is likely not a problem with pip.
  ERROR: Failed cleaning build dir for hoedown
Failed to build hoedown
ERROR: Could not build wheels for hoedown, which is required to install pyproject.toml-based projects
zhuangshaobin commented 9 months ago

Because I currently don't have a machine with Ubuntu, I can only try my best to help you based on my experience. I speculate that it may be difficult to install certain packages. Fortunately, the core part of the project, the use of ShowMaker, requires only a few packages to be called. You can try running (T+I+Ref)2V and install the following simplified environment:

torch==2.0.1 torchaudio==2.0.2 torchvision==0.15.2 decord==0.6.0 diffusers==0.25.0 imageio==2.29.0 transformers==4.29.2 xformers==0.0.20 einops omegaconf tensorboard==2.15.1 timm==0.9.10 rotary-embedding-torch==0.3.5 natsort==8.4.0

After successfully running (T+I+ref)2V, if you want to experience the complete Vlogger, I suggest gradually improving your environment step by step when running the script generation and vlog generation scripts of Vlogger according to the missing packages. I hope it helps you configure smoothly. If you encounter any issues, feel free to continue the discussion.