简体   繁体   中英

Heroku fails to install av (pyav)

I have been trying to set up my Python web app that uses opencv, tensorflow and av modules but keeps failing. I have tried using the Aptfile to install several Ubuntu libraries ( libsm6, libxrender1 , etc.) and the install still fails.

After failing the install, the heroku server resolves to building the av module from source which fails as well, with gcc failing here:

src/av/codec/codec.c:4003:19: warning: implicit declaration of function ‘av_codec_iterate’; did you mean ‘av_codec_next’? [-Wimplicit-function-declaration]
    __pyx_v_ptr = av_codec_iterate((&__pyx_v_opaque));
                ^~~~~~~~~~~~~~~~
                av_codec_next
src/av/codec/codec.c:4003:17: warning: assignment makes pointer from integer without a cast [-Wint-conversion]
    __pyx_v_ptr = av_codec_iterate((&__pyx_v_opaque));
                ^
src/av/codec/codec.c: In function ‘__pyx_pymod_exec_codec’:
src/av/codec/codec.c:6117:36: error: ‘AV_CODEC_CAP_HARDWARE’ undeclared (first use in this function); did you mean ‘AV_CODEC_CAP_DR1’?
__pyx_t_7 = __Pyx_PyInt_From_int(AV_CODEC_CAP_HARDWARE); if (unlikely(!__pyx_t_7)) __PYX_ERR(0, 121, __pyx_L1_error)
                                    ^~~~~~~~~~~~~~~~~~~~~
                                    AV_CODEC_CAP_DR1
src/av/codec/codec.c:6117:36: note: each undeclared identifier is reported only once for each function it appears in
src/av/codec/codec.c:6138:36: error: ‘AV_CODEC_CAP_HYBRID’ undeclared (first use in this function); did you mean ‘AV_CODEC_CAP_DR1’?
__pyx_t_7 = __Pyx_PyInt_From_int(AV_CODEC_CAP_HYBRID); if (unlikely(!__pyx_t_7)) __PYX_ERR(0, 125, __pyx_L1_error)
                                    ^~~~~~~~~~~~~~~~~~~
                                    AV_CODEC_CAP_DR1
error: command 'gcc' failed with exit status 1

Has anyone experienced this? Or any experience with using av/pyav in Heroku? Please tell me anything that I missed. Thanks.

Turns out Heroku works better using requirements.txt than Pipfile . After changing the install file, the deployment process went fine.

The technical post webpages of this site follow the CC BY-SA 4.0 protocol. If you need to reprint, please indicate the site URL or the original address.Any question please contact:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM