Skip to content

Generator can't find any of the structs of methods from time.h #79

@Mbucari

Description

@Mbucari

I've tested both ffmpeg v6.0.1 and v7.1.1 with the following command:

./project_generate --disable-swscale --disable-avdevice --disable-doc --disable-v4l2-m2m --disable-vaapi --disable-vdpau --disable-network --disable-libxcb --disable-libxcb-xfixes --disable-libxcb-shape --disable-zlib --disable-iconv --disable-alsa --disable-shared --enable-static --disable-doc --disable-symver --disable-programs --disable-debug --enable-pic --disable-everything --enable-decoder=aac --enable-decoder=pcm_f32le --enable-decoder=pcm_s16le --enable-encoder=aac --enable-encoder=pcm_f32le --enable-encoder=pcm_s16le --enable-parser=aac --enable-demuxer=aac --enable-demuxer=pcm_f32le --enable-demuxer=pcm_s16le --enable-muxer=pcm_f32le --enable-muxer=pcm_s16le --enable-filter=aresample --enable-filter=asetnsamples --enable-muxer=mov --enable-muxer=mp4 --enable-demuxer=mov

And here's the error from the ffvs_log.txt file:

adler32.c
aes.c
aes_ctr.c
ambient_viewing_environment.c
audio_fifo.c
avstring.c
avsscanf.c
base64.c
blowfish.c
bprint.c
buffer.c
cast5.c
camellia.c
channel_layout.c
cpu.c
crc.c
csp.c
des.c
detection_bbox.c
dict.c
display.c
dovi_meta.c
downmix_info.c
encryption_info.c
error.c
eval.c
executor.c
fifo.c
ffmpeg/libavutil/dict.c(281): error C2079: 'tmbuf' uses undefined struct 'tm'
file.c
file_open.c
float_dsp.c
fixed_dsp.c
./ffmpeg/compat/w32pthreads.h(173): error C2037: left of 'tv_sec' specifies undefined struct/union 'timespec' (compiling source file ffmpeg/libavutil/crc.c)
./ffmpeg/compat/w32pthreads.h(173): error C2037: left of 'tv_nsec' specifies undefined struct/union 'timespec' (compiling source file ffmpeg/libavutil/crc.c)
./ffmpeg/compat/w32pthreads.h(173): error C2037: left of 'tv_sec' specifies undefined struct/union 'timespec' (compiling source file ffmpeg/libavutil/executor.c)
./ffmpeg/compat/w32pthreads.h(173): error C2037: left of 'tv_nsec' specifies undefined struct/union 'timespec' (compiling source file ffmpeg/libavutil/executor.c)
./ffmpeg/compat/w32pthreads.h(173): error C2037: left of 'tv_sec' specifies undefined struct/union 'timespec' (compiling source file ffmpeg/libavutil/buffer.c)
./ffmpeg/compat/w32pthreads.h(173): error C2037: left of 'tv_nsec' specifies undefined struct/union 'timespec' (compiling source file ffmpeg/libavutil/buffer.c)

I tried adding a copy of the tm and timespec structs to ffmpeg/libavutil/time.internal.h and adding #include "libavutil/time_internal.h" to w32pthreads.h, and that gets the generator past w32pthreads.h, but then it fails at time_internal.h with a type re-definition error.

./ffmpeg/libavutil/time_internal.h(26): error C2011: 'tm': 'struct' type redefinition (compiling source file ffmpeg/libavcodec/allcodecs.c)
C:\Program Files (x86)\Windows Kits\10\include\10.0.26100.0\ucrt\corecrt_wtime.h(26): note: see declaration of 'tm' (compiling source file ffmpeg/libavcodec/allcodecs.c)
./ffmpeg/libavutil/time_internal.h(40): error C2011: 'timespec': 'struct' type redefinition (compiling source file ffmpeg/libavcodec/allcodecs.c)
C:\Program Files (x86)\Windows Kits\10\include\10.0.26100.0\ucrt\time.h(45): note: see declaration of 'timespec' (compiling source file ffmpeg/libavcodec/allcodecs.c)
./ffmpeg/libavutil/time_internal.h(26): error C2011: 'tm': 'struct' type redefinition (compiling source file ffmpeg/libavcodec/avcodec.c)
C:\Program Files (x86)\Windows Kits\10\include\10.0.26100.0\ucrt\corecrt_wtime.h(26): note: see declaration of 'tm' (compiling source file ffmpeg/libavcodec/avcodec.c)
./ffmpeg/libavutil/time_internal.h(40): error C2011: 'timespec': 'struct' type redefinition (compiling source file ffmpeg/libavcodec/avcodec.c)
C:\Program Files (x86)\Windows Kits\10\include\10.0.26100.0\ucrt\time.h(45): note: see declaration of 'timespec' (compiling source file ffmpeg/libavcodec/avcodec.c)
./ffmpeg/libavutil/time_internal.h(26): error C2011: 'tm': 'struct' type redefinition (compiling source file ffmpeg/libavcodec/decode.c)
C:\Program Files (x86)\Windows Kits\10\include\10.0.26100.0\ucrt\corecrt_wtime.h(26): note: see declaration of 'tm' (compiling source file ffmpeg/libavcodec/decode.c)
./ffmpeg/libavutil/time_internal.h(40): error C2011: 'timespec': 'struct' type redefinition (compiling source file ffmpeg/libavcodec/decode.c)
C:\Program Files (x86)\Windows Kits\10\include\10.0.26100.0\ucrt\time.h(45): note: see declaration of 'timespec' (compiling source file ffmpeg/libavcodec/decode.c)
./ffmpeg/libavutil/time_internal.h(26): error C2011: 'tm': 'struct' type redefinition (compiling source file ffmpeg/libavcodec/refstruct.c)
C:\Program Files (x86)\Windows Kits\10\include\10.0.26100.0\ucrt\corecrt_wtime.h(26): note: see declaration of 'tm' (compiling source file ffmpeg/libavcodec/refstruct.c)
./ffmpeg/libavutil/time_internal.h(40): error C2011: 'timespec': 'struct' type redefinition (compiling source file ffmpeg/libavcodec/refstruct.c)
C:\Program Files (x86)\Windows Kits\10\include\10.0.26100.0\ucrt\time.h(45): note: see declaration of 'timespec' (compiling source file ffmpeg/libavcodec/refstruct.c)
./ffmpeg/libavutil/time_internal.h(26): error C2011: 'tm': 'struct' type redefinition (compiling source file ffmpeg/libavcodec/threadprogress.c)
C:\Program Files (x86)\Windows Kits\10\include\10.0.26100.0\ucrt\corecrt_wtime.h(26): note: see declaration of 'tm' (compiling source file ffmpeg/libavcodec/threadprogress.c)
./ffmpeg/libavutil/time_internal.h(40): error C2011: 'timespec': 'struct' type redefinition (compiling source file ffmpeg/libavcodec/threadprogress.c)
C:\Program Files (x86)\Windows Kits\10\include\10.0.26100.0\ucrt\time.h(45): note: see declaration of 'timespec' (compiling source file ffmpeg/libavcodec/threadprogress.c)

Metadata

Metadata

Assignees

No one assigned

    Labels

    No labels
    No labels

    Type

    No type

    Projects

    No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions