You are not logged in.

#1 2021-12-02 19:20:37

graysky
Wiki Maintainer
From: :wq
Registered: 2008-12-01
Posts: 10,595
Website

ffmpeg 4.3.2 build/ERROR: cuda_llvm requested but not found [solved]

I am maintaining ffmpeg-shinobi in the AUR.  It provides version 4.3.2 of ffmpeg.  Towards the end of October, the PKGBUILD I uploaded built fine.  Now, it fails with this:

==> Starting pkgver()...
==> Starting build()...
ERROR: cuda_llvm requested but not found

If you think configure made a mistake, make sure you are using the latest
version from Git.  If the latest version fails, report the problem to the
ffmpeg-user@ffmpeg.org mailing list or IRC #ffmpeg on irc.freenode.net.
Include the log file "ffbuild/config.log" produced by configure as this will help
solve the problem.

Did a bisect of sorts, stepping through various dates of packages thanks to ALA in an attempt to pin point the date it broke.  I then diffed the output of building and found that building from a snapshot of 11/12/2021 works, but building from one on 11/13/2021 does not work.

That is the clang 12 --> 13 update.  Is this a packaging bug against clang or do I need a new build dep?

Last edited by graysky (2021-12-02 20:54:06)


CPU-optimized Linux-ck packages @ Repo-ck  • AUR packagesZsh and other configs

Online

#2 2021-12-02 20:20:14

loqs
Member
Registered: 2014-03-06
Posts: 17,194

Re: ffmpeg 4.3.2 build/ERROR: cuda_llvm requested but not found [solved]

ffbuild/config.log

....
check_nvcc cuda_llvm
test_nvcc
BEGIN /tmp/ffconf.qrjbODyu/test.cu
    1	extern "C" {
    2	    __global__ void hello(unsigned char *data) {}
    3	}
END /tmp/ffconf.qrjbODyu/test.cu
clang --cuda-gpu-arch=sm_30 -O2 -m64 -S -nocudalib -nocudainc --cuda-device-only -include ./compat/cuda/cuda_runtime.h -o /tmp/ffconf.qrjbODyu/test.o /tmp/ffconf.qrjbODyu/test.cu
In file included from <built-in>:1:
././compat/cuda/cuda_runtime.h:113:27: error: non-constant-expression cannot be narrowed from type 'unsigned int' to 'unsigned char' in initializer list [-Wc++11-narrowing]
TEX2D(uchar2, make_uchar2(a & 0xFF, b & 0xFF))
                          ^~~~~~~~
././compat/cuda/cuda_runtime.h:103:42: note: expanded from macro 'make_uchar2'
#define make_uchar2(a, b) ((uchar2){.x = a, .y = b})
                                         ^
././compat/cuda/cuda_runtime.h:109:129: note: expanded from macro 'TEX2D'
#define TEX2D(type, ret) static inline __device__ void conv(type* out, unsigned a, unsigned b, unsigned c, unsigned d) {*out = (ret);}
                                                                                                                                ^~~
././compat/cuda/cuda_runtime.h:113:27: note: insert an explicit cast to silence this issue
TEX2D(uchar2, make_uchar2(a & 0xFF, b & 0xFF))
                          ^~~~~~~~
                          static_cast<unsigned char>(
././compat/cuda/cuda_runtime.h:103:42: note: expanded from macro 'make_uchar2'
#define make_uchar2(a, b) ((uchar2){.x = a, .y = b})
                                         ^
././compat/cuda/cuda_runtime.h:109:129: note: expanded from macro 'TEX2D'
#define TEX2D(type, ret) static inline __device__ void conv(type* out, unsigned a, unsigned b, unsigned c, unsigned d) {*out = (ret);}
                                                                                                                                ^~~
././compat/cuda/cuda_runtime.h:113:37: error: non-constant-expression cannot be narrowed from type 'unsigned int' to 'unsigned char' in initializer list [-Wc++11-narrowing]
TEX2D(uchar2, make_uchar2(a & 0xFF, b & 0xFF))
                                    ^~~~~~~~
././compat/cuda/cuda_runtime.h:103:50: note: expanded from macro 'make_uchar2'
#define make_uchar2(a, b) ((uchar2){.x = a, .y = b})
                                                 ^
././compat/cuda/cuda_runtime.h:109:129: note: expanded from macro 'TEX2D'
#define TEX2D(type, ret) static inline __device__ void conv(type* out, unsigned a, unsigned b, unsigned c, unsigned d) {*out = (ret);}
                                                                                                                                ^~~
././compat/cuda/cuda_runtime.h:113:37: note: insert an explicit cast to silence this issue
TEX2D(uchar2, make_uchar2(a & 0xFF, b & 0xFF))
                                    ^~~~~~~~
                                    static_cast<unsigned char>(
././compat/cuda/cuda_runtime.h:103:50: note: expanded from macro 'make_uchar2'
#define make_uchar2(a, b) ((uchar2){.x = a, .y = b})
                                                 ^
././compat/cuda/cuda_runtime.h:109:129: note: expanded from macro 'TEX2D'
#define TEX2D(type, ret) static inline __device__ void conv(type* out, unsigned a, unsigned b, unsigned c, unsigned d) {*out = (ret);}
                                                                                                                                ^~~
././compat/cuda/cuda_runtime.h:114:29: error: non-constant-expression cannot be narrowed from type 'unsigned int' to 'unsigned short' in initializer list [-Wc++11-narrowing]
TEX2D(ushort2, make_ushort2(a & 0xFFFF, b & 0xFFFF))
                            ^~~~~~~~~~
././compat/cuda/cuda_runtime.h:104:44: note: expanded from macro 'make_ushort2'
#define make_ushort2(a, b) ((ushort2){.x = a, .y = b})
                                           ^
././compat/cuda/cuda_runtime.h:109:129: note: expanded from macro 'TEX2D'
#define TEX2D(type, ret) static inline __device__ void conv(type* out, unsigned a, unsigned b, unsigned c, unsigned d) {*out = (ret);}
                                                                                                                                ^~~
././compat/cuda/cuda_runtime.h:114:29: note: insert an explicit cast to silence this issue
TEX2D(ushort2, make_ushort2(a & 0xFFFF, b & 0xFFFF))
                            ^~~~~~~~~~
                            static_cast<unsigned short>(
././compat/cuda/cuda_runtime.h:104:44: note: expanded from macro 'make_ushort2'
#define make_ushort2(a, b) ((ushort2){.x = a, .y = b})
                                           ^
././compat/cuda/cuda_runtime.h:109:129: note: expanded from macro 'TEX2D'
#define TEX2D(type, ret) static inline __device__ void conv(type* out, unsigned a, unsigned b, unsigned c, unsigned d) {*out = (ret);}
                                                                                                                                ^~~
././compat/cuda/cuda_runtime.h:114:41: error: non-constant-expression cannot be narrowed from type 'unsigned int' to 'unsigned short' in initializer list [-Wc++11-narrowing]
TEX2D(ushort2, make_ushort2(a & 0xFFFF, b & 0xFFFF))
                                        ^~~~~~~~~~
././compat/cuda/cuda_runtime.h:104:52: note: expanded from macro 'make_ushort2'
#define make_ushort2(a, b) ((ushort2){.x = a, .y = b})
                                                   ^
././compat/cuda/cuda_runtime.h:109:129: note: expanded from macro 'TEX2D'
#define TEX2D(type, ret) static inline __device__ void conv(type* out, unsigned a, unsigned b, unsigned c, unsigned d) {*out = (ret);}
                                                                                                                                ^~~
././compat/cuda/cuda_runtime.h:114:41: note: insert an explicit cast to silence this issue
TEX2D(ushort2, make_ushort2(a & 0xFFFF, b & 0xFFFF))
                                        ^~~~~~~~~~
                                        static_cast<unsigned short>(
././compat/cuda/cuda_runtime.h:104:52: note: expanded from macro 'make_ushort2'
#define make_ushort2(a, b) ((ushort2){.x = a, .y = b})
                                                   ^
././compat/cuda/cuda_runtime.h:109:129: note: expanded from macro 'TEX2D'
#define TEX2D(type, ret) static inline __device__ void conv(type* out, unsigned a, unsigned b, unsigned c, unsigned d) {*out = (ret);}
                                                                                                                                ^~~
././compat/cuda/cuda_runtime.h:115:27: error: non-constant-expression cannot be narrowed from type 'unsigned int' to 'unsigned char' in initializer list [-Wc++11-narrowing]
TEX2D(uchar4, make_uchar4(a & 0xFF, b & 0xFF, c & 0xFF, d & 0xFF))
                          ^~~~~~~~
././compat/cuda/cuda_runtime.h:105:48: note: expanded from macro 'make_uchar4'
#define make_uchar4(a, b, c, d) ((uchar4){.x = a, .y = b, .z = c, .w = d})
                                               ^
././compat/cuda/cuda_runtime.h:109:129: note: expanded from macro 'TEX2D'
#define TEX2D(type, ret) static inline __device__ void conv(type* out, unsigned a, unsigned b, unsigned c, unsigned d) {*out = (ret);}
                                                                                                                                ^~~
././compat/cuda/cuda_runtime.h:115:27: note: insert an explicit cast to silence this issue
TEX2D(uchar4, make_uchar4(a & 0xFF, b & 0xFF, c & 0xFF, d & 0xFF))
                          ^~~~~~~~
                          static_cast<unsigned char>(
././compat/cuda/cuda_runtime.h:105:48: note: expanded from macro 'make_uchar4'
#define make_uchar4(a, b, c, d) ((uchar4){.x = a, .y = b, .z = c, .w = d})
                                               ^
././compat/cuda/cuda_runtime.h:109:129: note: expanded from macro 'TEX2D'
#define TEX2D(type, ret) static inline __device__ void conv(type* out, unsigned a, unsigned b, unsigned c, unsigned d) {*out = (ret);}
                                                                                                                                ^~~
././compat/cuda/cuda_runtime.h:115:37: error: non-constant-expression cannot be narrowed from type 'unsigned int' to 'unsigned char' in initializer list [-Wc++11-narrowing]
TEX2D(uchar4, make_uchar4(a & 0xFF, b & 0xFF, c & 0xFF, d & 0xFF))
                                    ^~~~~~~~
././compat/cuda/cuda_runtime.h:105:56: note: expanded from macro 'make_uchar4'
#define make_uchar4(a, b, c, d) ((uchar4){.x = a, .y = b, .z = c, .w = d})
                                                       ^
././compat/cuda/cuda_runtime.h:109:129: note: expanded from macro 'TEX2D'
#define TEX2D(type, ret) static inline __device__ void conv(type* out, unsigned a, unsigned b, unsigned c, unsigned d) {*out = (ret);}
                                                                                                                                ^~~
././compat/cuda/cuda_runtime.h:115:37: note: insert an explicit cast to silence this issue
TEX2D(uchar4, make_uchar4(a & 0xFF, b & 0xFF, c & 0xFF, d & 0xFF))
                                    ^~~~~~~~
                                    static_cast<unsigned char>(
././compat/cuda/cuda_runtime.h:105:56: note: expanded from macro 'make_uchar4'
#define make_uchar4(a, b, c, d) ((uchar4){.x = a, .y = b, .z = c, .w = d})
                                                       ^
././compat/cuda/cuda_runtime.h:109:129: note: expanded from macro 'TEX2D'
#define TEX2D(type, ret) static inline __device__ void conv(type* out, unsigned a, unsigned b, unsigned c, unsigned d) {*out = (ret);}
                                                                                                                                ^~~
././compat/cuda/cuda_runtime.h:115:47: error: non-constant-expression cannot be narrowed from type 'unsigned int' to 'unsigned char' in initializer list [-Wc++11-narrowing]
TEX2D(uchar4, make_uchar4(a & 0xFF, b & 0xFF, c & 0xFF, d & 0xFF))
                                              ^~~~~~~~
././compat/cuda/cuda_runtime.h:105:64: note: expanded from macro 'make_uchar4'
#define make_uchar4(a, b, c, d) ((uchar4){.x = a, .y = b, .z = c, .w = d})
                                                               ^
././compat/cuda/cuda_runtime.h:109:129: note: expanded from macro 'TEX2D'
#define TEX2D(type, ret) static inline __device__ void conv(type* out, unsigned a, unsigned b, unsigned c, unsigned d) {*out = (ret);}
                                                                                                                                ^~~
././compat/cuda/cuda_runtime.h:115:47: note: insert an explicit cast to silence this issue
TEX2D(uchar4, make_uchar4(a & 0xFF, b & 0xFF, c & 0xFF, d & 0xFF))
                                              ^~~~~~~~
                                              static_cast<unsigned char>(
././compat/cuda/cuda_runtime.h:105:64: note: expanded from macro 'make_uchar4'
#define make_uchar4(a, b, c, d) ((uchar4){.x = a, .y = b, .z = c, .w = d})
                                                               ^
././compat/cuda/cuda_runtime.h:109:129: note: expanded from macro 'TEX2D'
#define TEX2D(type, ret) static inline __device__ void conv(type* out, unsigned a, unsigned b, unsigned c, unsigned d) {*out = (ret);}
                                                                                                                                ^~~
././compat/cuda/cuda_runtime.h:115:57: error: non-constant-expression cannot be narrowed from type 'unsigned int' to 'unsigned char' in initializer list [-Wc++11-narrowing]
TEX2D(uchar4, make_uchar4(a & 0xFF, b & 0xFF, c & 0xFF, d & 0xFF))
                                                        ^~~~~~~~
././compat/cuda/cuda_runtime.h:105:72: note: expanded from macro 'make_uchar4'
#define make_uchar4(a, b, c, d) ((uchar4){.x = a, .y = b, .z = c, .w = d})
                                                                       ^
././compat/cuda/cuda_runtime.h:109:129: note: expanded from macro 'TEX2D'
#define TEX2D(type, ret) static inline __device__ void conv(type* out, unsigned a, unsigned b, unsigned c, unsigned d) {*out = (ret);}
                                                                                                                                ^~~
././compat/cuda/cuda_runtime.h:115:57: note: insert an explicit cast to silence this issue
TEX2D(uchar4, make_uchar4(a & 0xFF, b & 0xFF, c & 0xFF, d & 0xFF))
                                                        ^~~~~~~~
                                                        static_cast<unsigned char>(
././compat/cuda/cuda_runtime.h:105:72: note: expanded from macro 'make_uchar4'
#define make_uchar4(a, b, c, d) ((uchar4){.x = a, .y = b, .z = c, .w = d})
                                                                       ^
././compat/cuda/cuda_runtime.h:109:129: note: expanded from macro 'TEX2D'
#define TEX2D(type, ret) static inline __device__ void conv(type* out, unsigned a, unsigned b, unsigned c, unsigned d) {*out = (ret);}
                                                                                                                                ^~~
././compat/cuda/cuda_runtime.h:116:29: error: non-constant-expression cannot be narrowed from type 'unsigned int' to 'unsigned char' in initializer list [-Wc++11-narrowing]
TEX2D(ushort4, make_ushort4(a & 0xFFFF, b & 0xFFFF, c & 0xFFFF, d & 0xFFFF))
                            ^~~~~~~~~~
././compat/cuda/cuda_runtime.h:106:50: note: expanded from macro 'make_ushort4'
#define make_ushort4(a, b, c, d) ((ushort4){.x = a, .y = b, .z = c, .w = d})
                                                 ^
././compat/cuda/cuda_runtime.h:109:129: note: expanded from macro 'TEX2D'
#define TEX2D(type, ret) static inline __device__ void conv(type* out, unsigned a, unsigned b, unsigned c, unsigned d) {*out = (ret);}
                                                                                                                                ^~~
././compat/cuda/cuda_runtime.h:116:29: note: insert an explicit cast to silence this issue
TEX2D(ushort4, make_ushort4(a & 0xFFFF, b & 0xFFFF, c & 0xFFFF, d & 0xFFFF))
                            ^~~~~~~~~~
                            static_cast<unsigned char>(
././compat/cuda/cuda_runtime.h:106:50: note: expanded from macro 'make_ushort4'
#define make_ushort4(a, b, c, d) ((ushort4){.x = a, .y = b, .z = c, .w = d})
                                                 ^
././compat/cuda/cuda_runtime.h:109:129: note: expanded from macro 'TEX2D'
#define TEX2D(type, ret) static inline __device__ void conv(type* out, unsigned a, unsigned b, unsigned c, unsigned d) {*out = (ret);}
                                                                                                                                ^~~
././compat/cuda/cuda_runtime.h:116:41: error: non-constant-expression cannot be narrowed from type 'unsigned int' to 'unsigned char' in initializer list [-Wc++11-narrowing]
TEX2D(ushort4, make_ushort4(a & 0xFFFF, b & 0xFFFF, c & 0xFFFF, d & 0xFFFF))
                                        ^~~~~~~~~~
././compat/cuda/cuda_runtime.h:106:58: note: expanded from macro 'make_ushort4'
#define make_ushort4(a, b, c, d) ((ushort4){.x = a, .y = b, .z = c, .w = d})
                                                         ^
././compat/cuda/cuda_runtime.h:109:129: note: expanded from macro 'TEX2D'
#define TEX2D(type, ret) static inline __device__ void conv(type* out, unsigned a, unsigned b, unsigned c, unsigned d) {*out = (ret);}
                                                                                                                                ^~~
././compat/cuda/cuda_runtime.h:116:41: note: insert an explicit cast to silence this issue
TEX2D(ushort4, make_ushort4(a & 0xFFFF, b & 0xFFFF, c & 0xFFFF, d & 0xFFFF))
                                        ^~~~~~~~~~
                                        static_cast<unsigned char>(
././compat/cuda/cuda_runtime.h:106:58: note: expanded from macro 'make_ushort4'
#define make_ushort4(a, b, c, d) ((ushort4){.x = a, .y = b, .z = c, .w = d})
                                                         ^
././compat/cuda/cuda_runtime.h:109:129: note: expanded from macro 'TEX2D'
#define TEX2D(type, ret) static inline __device__ void conv(type* out, unsigned a, unsigned b, unsigned c, unsigned d) {*out = (ret);}
                                                                                                                                ^~~
././compat/cuda/cuda_runtime.h:116:53: error: non-constant-expression cannot be narrowed from type 'unsigned int' to 'unsigned char' in initializer list [-Wc++11-narrowing]
TEX2D(ushort4, make_ushort4(a & 0xFFFF, b & 0xFFFF, c & 0xFFFF, d & 0xFFFF))
                                                    ^~~~~~~~~~
././compat/cuda/cuda_runtime.h:106:66: note: expanded from macro 'make_ushort4'
#define make_ushort4(a, b, c, d) ((ushort4){.x = a, .y = b, .z = c, .w = d})
                                                                 ^
././compat/cuda/cuda_runtime.h:109:129: note: expanded from macro 'TEX2D'
#define TEX2D(type, ret) static inline __device__ void conv(type* out, unsigned a, unsigned b, unsigned c, unsigned d) {*out = (ret);}
                                                                                                                                ^~~
././compat/cuda/cuda_runtime.h:116:53: note: insert an explicit cast to silence this issue
TEX2D(ushort4, make_ushort4(a & 0xFFFF, b & 0xFFFF, c & 0xFFFF, d & 0xFFFF))
                                                    ^~~~~~~~~~
                                                    static_cast<unsigned char>(
././compat/cuda/cuda_runtime.h:106:66: note: expanded from macro 'make_ushort4'
#define make_ushort4(a, b, c, d) ((ushort4){.x = a, .y = b, .z = c, .w = d})
                                                                 ^
././compat/cuda/cuda_runtime.h:109:129: note: expanded from macro 'TEX2D'
#define TEX2D(type, ret) static inline __device__ void conv(type* out, unsigned a, unsigned b, unsigned c, unsigned d) {*out = (ret);}
                                                                                                                                ^~~
././compat/cuda/cuda_runtime.h:116:65: error: non-constant-expression cannot be narrowed from type 'unsigned int' to 'unsigned char' in initializer list [-Wc++11-narrowing]
TEX2D(ushort4, make_ushort4(a & 0xFFFF, b & 0xFFFF, c & 0xFFFF, d & 0xFFFF))
                                                                ^~~~~~~~~~
././compat/cuda/cuda_runtime.h:106:74: note: expanded from macro 'make_ushort4'
#define make_ushort4(a, b, c, d) ((ushort4){.x = a, .y = b, .z = c, .w = d})
                                                                         ^
././compat/cuda/cuda_runtime.h:109:129: note: expanded from macro 'TEX2D'
#define TEX2D(type, ret) static inline __device__ void conv(type* out, unsigned a, unsigned b, unsigned c, unsigned d) {*out = (ret);}
                                                                                                                                ^~~
././compat/cuda/cuda_runtime.h:116:65: note: insert an explicit cast to silence this issue
TEX2D(ushort4, make_ushort4(a & 0xFFFF, b & 0xFFFF, c & 0xFFFF, d & 0xFFFF))
                                                                ^~~~~~~~~~
                                                                static_cast<unsigned char>(
././compat/cuda/cuda_runtime.h:106:74: note: expanded from macro 'make_ushort4'
#define make_ushort4(a, b, c, d) ((ushort4){.x = a, .y = b, .z = c, .w = d})
                                                                         ^
././compat/cuda/cuda_runtime.h:109:129: note: expanded from macro 'TEX2D'
#define TEX2D(type, ret) static inline __device__ void conv(type* out, unsigned a, unsigned b, unsigned c, unsigned d) {*out = (ret);}
                                                                                                                                ^~~
12 errors generated when compiling for sm_30.
....

https://git.ffmpeg.org/gitweb/ffmpeg.gi … 6e35c76eb2

Offline

#3 2021-12-02 20:53:37

graysky
Wiki Maintainer
From: :wq
Registered: 2008-12-01
Posts: 10,595
Website

Re: ffmpeg 4.3.2 build/ERROR: cuda_llvm requested but not found [solved]

Thanks loqs, you're the boss.  Applying that worked.


CPU-optimized Linux-ck packages @ Repo-ck  • AUR packagesZsh and other configs

Online

Board footer

Powered by FluxBB