Closed erisco closed 3 years ago
Turns out, wasm-ld is expected to be called even with WASM=0, but ffmpeg.bc was not expected to be a JavaScript file.
There was some change to emcc. To produce an object file, the -r
linking flag is required and the output file must have a non-executable extension.
Thanks to sbc on the WebAssembly channel on Discord for the help on this.
still get error like this:
nm: /tmp/ffconf.bMB3JO1u/test.o: file format not recognized ERROR: libx264 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. make: *** [Makefile:203: build/ffmpeg-mp4/ffmpeg.bc] Error 1
@erisco do you know why?
so, what's the final solution? anyone help? I meet the same issue.
wasm-ld: error: unknown file type: build/ffmpeg-webm/ffmpeg.bc
build/ffmpeg-mp4/ffmpeg.bc: $(MP4_SHARED_DEPS)
cd build/ffmpeg-mp4 && \
EM_PKG_CONFIG_PATH=$(FFMPEG_MP4_PC_PATH) emconfigure ./configure \
$(FFMPEG_COMMON_ARGS) \
$(addprefix --enable-encoder=,$(MP4_ENCODERS)) \
$(addprefix --enable-muxer=,$(MP4_MUXERS)) \
--enable-gpl \
--enable-libmp3lame \
--enable-libx264 \
--extra-cflags="-s USE_ZLIB=1 -I../lame/dist/include" \
--extra-ldflags="-L../lame/dist/lib" \
&& \
emmake make -j EXESUF=.bc && \
cp ffmpeg ffmpeg.bc
I already put the exesuf=.bc there
Same question. Anyone know what to do here?
https://github.com/Kagami/ffmpeg.js/pull/149 this patch fix this issue
It seems to me like emcc is trying to build ffmpeg.bc as WASM even though
-s WASM=0
is set. I have tried:-s WASM_ASYNC_COMPILATION=0