sminterpolate icon indicating copy to clipboard operation
sminterpolate copied to clipboard

Build errors on Manjaro Linux

Open unfa opened this issue 4 years ago • 4 comments

Hi! I'm running Manajro, and I'm tring to install butterflow using the instructions provided here.

I've installed opencv2 from AUR, and this is where I'm at:

$ sudo python setup.py install
running install
running bdist_egg
running egg_info
writing butterflow.egg-info/PKG-INFO
writing dependency_links to butterflow.egg-info/dependency_links.txt
writing entry points to butterflow.egg-info/entry_points.txt
writing top-level names to butterflow.egg-info/top_level.txt
reading manifest file 'butterflow.egg-info/SOURCES.txt'
reading manifest template 'MANIFEST.in'
warning: no previously-included files matching '*.pyc' found under directory 'tests'
writing manifest file 'butterflow.egg-info/SOURCES.txt'
installing library code to build/bdist.linux-x86_64/egg
running install_lib
running build_py
running build_ext
building 'butterflow.ocl' extension
gcc -pthread -Wno-unused-result -Wsign-compare -DNDEBUG -g -fwrapv -O3 -Wall -march=x86-64 -mtune=generic -O3 -pipe -fno-plt -fno-semantic-interposition -march=x86-64 -mtune=generic -O3 -pipe -fno-plt -march=x86-64 -mtune=generic -O3 -pipe -fno-plt -fPIC -I/usr/include/python3.8 -c /data/Applications/butterflow/butterflow/ocl.cpp -o build/temp.linux-x86_64-3.8/data/Applications/butterflow/butterflow/ocl.o -Wno-unused-variable -Wno-unused-function -Wno-cpp
/data/Applications/butterflow/butterflow/ocl.cpp: In function ‘PyObject* print_ocl_devices(PyObject*, PyObject*)’:
/data/Applications/butterflow/butterflow/ocl.cpp:71:23: warning: comparison of integer expressions of different signedness: ‘int’ and ‘cl_uint’ {aka ‘unsigned int’} [-Wsign-compare]
   71 |     for (int i = 0; i < n_platforms; i++) {
      |                     ~~^~~~~~~~~~~~~
/data/Applications/butterflow/butterflow/ocl.cpp:89:27: warning: comparison of integer expressions of different signedness: ‘int’ and ‘cl_uint’ {aka ‘unsigned int’} [-Wsign-compare]
   89 |         for (int j = 0; j < n_devices; j++) {
      |                         ~~^~~~~~~~~~~
/data/Applications/butterflow/butterflow/ocl.cpp:117:48: warning: format ‘%lx’ expects argument of type ‘long unsigned int’, but argument 5 has type ‘cl_uint’ {aka ‘unsigned int’} [-Wformat=]
  117 |                    "\n      Vendor Id\t\t: 0x%lx"
      |                                              ~~^
      |                                                |
      |                                                long unsigned int
      |                                              %x
......
  122 |                    selected_string, d_num, d_name, d_vendor_id, d_vers, d_dver,
      |                                                    ~~~~~~~~~~~
      |                                                    |
      |                                                    cl_uint {aka unsigned int}
/data/Applications/butterflow/butterflow/ocl.cpp: In function ‘int ocl_device_is_compatible(char*, char*, char*, size_t, size_t*)’:
/data/Applications/butterflow/butterflow/ocl.cpp:147:42: warning: comparison of integer expressions of different signedness: ‘size_t’ {aka ‘long unsigned int’} and ‘const int’ [-Wsign-compare]
  147 |   compatible &= d_max_work_item_sizes[0] >= MIN_FB_WORK_ITEM_SIZES[0];
      |                 ~~~~~~~~~~~~~~~~~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~
/data/Applications/butterflow/butterflow/ocl.cpp:148:42: warning: comparison of integer expressions of different signedness: ‘size_t’ {aka ‘long unsigned int’} and ‘const int’ [-Wsign-compare]
  148 |   compatible &= d_max_work_item_sizes[1] >= MIN_FB_WORK_ITEM_SIZES[1];
      |                 ~~~~~~~~~~~~~~~~~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~
/data/Applications/butterflow/butterflow/ocl.cpp:149:42: warning: comparison of integer expressions of different signedness: ‘size_t’ {aka ‘long unsigned int’} and ‘const int’ [-Wsign-compare]
  149 |   compatible &= d_max_work_item_sizes[2] >= MIN_FB_WORK_ITEM_SIZES[2];
      |                 ~~~~~~~~~~~~~~~~~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~
/data/Applications/butterflow/butterflow/ocl.cpp: In function ‘PyObject* compat_ocl_device_available(PyObject*, PyObject*)’:
/data/Applications/butterflow/butterflow/ocl.cpp:168:23: warning: comparison of integer expressions of different signedness: ‘int’ and ‘cl_uint’ {aka ‘unsigned int’} [-Wsign-compare]
  168 |     for (int i = 0; i < n_platforms; i++) {
      |                     ~~^~~~~~~~~~~~~
/data/Applications/butterflow/butterflow/ocl.cpp:179:27: warning: comparison of integer expressions of different signedness: ‘int’ and ‘cl_uint’ {aka ‘unsigned int’} [-Wsign-compare]
  179 |         for (int j = 0; j < n_devices; j++) {
      |                         ~~^~~~~~~~~~~
/data/Applications/butterflow/butterflow/ocl.cpp: In function ‘PyObject* select_ocl_device(PyObject*, PyObject*)’:
/data/Applications/butterflow/butterflow/ocl.cpp:205:32: error: ‘PyInt_AsLong’ was not declared in this scope; did you mean ‘PyLong_AsLong’?
  205 |     int preferred_device_num = PyInt_AsLong(arg);
      |                                ^~~~~~~~~~~~
      |                                PyLong_AsLong
/data/Applications/butterflow/butterflow/ocl.cpp:221:23: warning: comparison of integer expressions of different signedness: ‘int’ and ‘cl_uint’ {aka ‘unsigned int’} [-Wsign-compare]
  221 |     for (int i = 0; i < n_platforms; i++) {
      |                     ~~^~~~~~~~~~~~~
/data/Applications/butterflow/butterflow/ocl.cpp:232:27: warning: comparison of integer expressions of different signedness: ‘int’ and ‘cl_uint’ {aka ‘unsigned int’} [-Wsign-compare]
  232 |         for (int j = 0; j < n_devices; j++) {
      |                         ~~^~~~~~~~~~~
/data/Applications/butterflow/butterflow/ocl.cpp: In function ‘PyObject* set_cache_path(PyObject*, PyObject*)’:
/data/Applications/butterflow/butterflow/ocl.cpp:282:24: error: ‘PyString_AsString’ was not declared in this scope
  282 |     char *cache_path = PyString_AsString(arg);
      |                        ^~~~~~~~~~~~~~~~~
/data/Applications/butterflow/butterflow/ocl.cpp: In function ‘PyObject* set_num_threads(PyObject*, PyObject*)’:
/data/Applications/butterflow/butterflow/ocl.cpp:290:21: error: ‘PyInt_AsLong’ was not declared in this scope; did you mean ‘PyLong_AsLong’?
  290 |     int n_threads = PyInt_AsLong(arg);
      |                     ^~~~~~~~~~~~
      |                     PyLong_AsLong
/data/Applications/butterflow/butterflow/ocl.cpp: In function ‘PyObject* get_current_ocl_device_name(PyObject*, PyObject*)’:
/data/Applications/butterflow/butterflow/ocl.cpp:299:12: error: ‘PyString_FromString’ was not declared in this scope; did you mean ‘PyLong_FromString’?
  299 |     return PyString_FromString(currentDevice.deviceName.c_str());
      |            ^~~~~~~~~~~~~~~~~~~
      |            PyLong_FromString
/data/Applications/butterflow/butterflow/ocl.cpp: In function ‘PyObject* initocl()’:
/data/Applications/butterflow/butterflow/ocl.cpp:320:12: error: ‘Py_InitModule’ was not declared in this scope
  320 |     (void) Py_InitModule("ocl", module_methods);
      |            ^~~~~~~~~~~~~
/data/Applications/butterflow/butterflow/ocl.cpp:321:1: warning: no return statement in function returning non-void [-Wreturn-type]
  321 | }
      | ^
error: command 'gcc' failed with exit status 1

What am I doing wrong?

unfa avatar Apr 28 '20 15:04 unfa

https://github.com/dthpham/butterflow/issues/101

also use command python2 instead of python. Good luck :smile:

ghost avatar May 16 '20 09:05 ghost

but then the best youll get is an error:

[snip@KDesktop butterflow]$ butterflow -h Traceback (most recent call last): File "/usr/bin/butterflow", line 11, in <module> load_entry_point('butterflow==0.2.4a4', 'console_scripts', 'butterflow')() File "/usr/lib/python2.7/site-packages/pkg_resources/__init__.py", line 489, in load_entry_point return get_distribution(dist).load_entry_point(group, name) File "/usr/lib/python2.7/site-packages/pkg_resources/__init__.py", line 2852, in load_entry_point return ep.load() File "/usr/lib/python2.7/site-packages/pkg_resources/__init__.py", line 2443, in load return self.resolve() File "/usr/lib/python2.7/site-packages/pkg_resources/__init__.py", line 2449, in resolve module = __import__(self.module_name, fromlist=['__name__'], level=0) File "build/bdist.linux-x86_64/egg/butterflow/__init__.py", line 6, in <module> ImportError: No module named _winreg

sad. I was really hoping for something like this to work.

ghost avatar May 16 '20 09:05 ghost

Try using ffmpeg -i source.mp4 -filter:v minterpolate -r 120 result.mp4! Im not sure how to speed it up but it essentially does the same thing as this.

ghost avatar May 16 '20 10:05 ghost

sudo ln -s /usr/lib/python2.7/site-packages/numpy/core/include/numpy/ /usr/include/numpy sudo rm -rf ./butterflow/__init__.py

ghost avatar Oct 10 '21 18:10 ghost