slyfox1186 / ffmpeg-build-script

The FFmpeg build script build's the most up to date version of FFmpeg by using API calls to download the latest source code available.
GNU General Public License v3.0
45 stars 9 forks source link

Error using NDI script #18

Closed sfahadshahzad closed 9 months ago

sfahadshahzad commented 10 months ago

$ sudo git am /home/encoder/ffmpeg-build-script/ffmpeg-build-script/packages/FFMPEG-NDI-git/libndi.patch $ sudo cp /home/encoder/ffmpeg-build-script/ffmpeg-build-script/packages/FFMPEG-NDI-git/libavdevice/libndi_newtek_common.h /home/encoder/ffmpeg-build-script/ffmpeg-build-script/packages/FFMPEG-NDI-git/libavdevice/libndi_newtek_dec.c /home/encoder/ffmpeg-build-script/ffmpeg-build-script/packages/FFMPEG-NDI-git/libavdevice/libndi_newtek_enc.c libavdevice/ $ sudo bash /home/encoder/ffmpeg-build-script/ffmpeg-build-script/packages/FFMPEG-NDI-git/preinstall.sh $ sed -i s/FFMPEG-NDI/FFMPEG-NDI-git/g /home/encoder/ffmpeg-build-script/ffmpeg-build-script/packages/FFMPEG-NDI-git/install-ndi-x86_64.sh $ sudo bash /home/encoder/ffmpeg-build-script/ffmpeg-build-script/packages/FFMPEG-NDI-git/install-ndi-x86_64.sh $ sed -i s/ { VK_EXT_VIDEO_DECODE_H264_EXTENSION_NAME, FF_VK_EXT_NO_FLAG },//g libavutil/hwcontext_vulkan.c $ sed -i s/ { VK_EXT_VIDEO_DECODE_H265_EXTENSION_NAME, FF_VK_EXT_NO_FLAG },//g libavutil/hwcontext_vulkan.c gcc is unable to create an executable file. If gcc is a cross-compiler, use the --enable-cross-compile option. Only do this if you know what cross compiling means. C compiler test failed.

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.libera.chat. Include the log file "ffbuild/config.log" produced by configure as this will help solve the problem. $ make -j8

Failed to execute: make -j8

To report a bug create an issue at: https://github.com/slyfox1186/script-repo/issues

slyfox1186 commented 10 months ago

send me your config.log file please

brutus009 commented 9 months ago

--enable-cross-compile you have the answer in the error message no ? why we dont put our effort to make a full static bin ? its possible ?

slyfox1186 commented 9 months ago

I tried to make a full static bin. Certain libraries refused to build like cyanrip.

brutus009 commented 9 months ago

i can help you , can you share your working static build config ??

slyfox1186 commented 9 months ago

you need to take the script and find lines like this -DBUILD_SHARED_LIBS=ON and turn them into this -DBUILD_SHARED_LIBS=OFF

for make commands you can find libraries and add code that looks like this --disable-shared

for each .configure command you can find all of the options by running this command ./configure --help

for cmake you can install cmake-gui by this command sudo apt -y install cmake-gui then run the cmake GUI and point it to the library files and press the configure button

brutus009 commented 9 months ago

so i start making other way cause your script never finich correctly i think the problem are in my side , but i start making full static bin with this result : /bin# ldd ./ffmpeg not a dynamic executable

/bin# ./ffmpeg -buildconf ffmpeg version cdd0c5f-Brutus_Core_Full_Static_FFmpeg_By_Rocma_Brutus Copyright (c) 2000-2023 the FFmpeg developers built with gcc 11 (Ubuntu 11.4.0-1ubuntu1~22.04) configuration: --prefix=/root/ffmpeg-static/target --pkg-config=pkg-config --pkg-config-flags=--static --arch=x86_64 --target-os=linux --bindir=/root/ffmpeg-static/bin --enable-cross-compile --enable-nonfree --enable-pic --enable-ffplay --enable-frei0r --enable-gpl --enable-version3 --disable-debug --enable-iconv --enable-libxml2 --enable-zlib --enable-libfreetype --enable-libfribidi --enable-gmp --enable-openssl --enable-lzma --enable-fontconfig --enable-libvorbis --enable-libvmaf --enable-libxcb --enable-xlib --enable-libsrt --enable-libaom --enable-libaribb24 --enable-avisynth --enable-chromaprint --enable-libdav1d --enable-libdavs2 --enable-libfdk-aac --enable-libass --enable-libsvtav1 --enable-libmp3lame --enable-libopencore-amrnb --enable-libopencore-amrwb --enable-libopenjpeg --enable-libopus --enable-librtmp --enable-libsoxr --enable-libspeex --enable-libtheora --enable-libvidstab --enable-libvo-amrwbenc --enable-libvpx --enable-libwebp --enable-libx264 --enable-libx265 --enable-sdl2 --enable-libxvid --enable-libzimg --enable-cuda-nvcc --enable-cuda-llvm --enable-cuvid --enable-nvdec --enable-nvenc --enable-ffnvcodec --extra-cflags=-DLIBTWOLAME_STATIC --extra-ldflags='-ldavs2 -lz -ldav1d -pthread -ldl -lfdk-aac -lm' --extra-libs='-ldavs2 -lcrypt -ldl -lzimg -lpthread -lvmaf -lm -lz -lstdc++ -lz -lfftw3 -lchromaprint' --extra-ldexeflags=-static --extra-version=Brutus_Core_Full_Static_FFmpeg_By_Rocma_Brutus libavutil 58. 29.100 / 58. 29.100 libavcodec 60. 31.102 / 60. 31.102 libavformat 60. 16.100 / 60. 16.100 libavdevice 60. 3.100 / 60. 3.100 libavfilter 9. 12.100 / 9. 12.100 libswscale 7. 5.100 / 7. 5.100 libswresample 4. 12.100 / 4. 12.100 libpostproc 57. 3.100 / 57. 3.100

configuration: --prefix=/root/ffmpeg-static/target --pkg-config=pkg-config --pkg-config-flags=--static --arch=x86_64 --target-os=linux --bindir=/root/ffmpeg-static/bin --enable-cross-compile --enable-nonfree --enable-pic --enable-ffplay --enable-frei0r --enable-gpl --enable-version3 --disable-debug --enable-iconv --enable-libxml2 --enable-zlib --enable-libfreetype --enable-libfribidi --enable-gmp --enable-openssl --enable-lzma --enable-fontconfig --enable-libvorbis --enable-libvmaf --enable-libxcb --enable-xlib --enable-libsrt --enable-libaom --enable-libaribb24 --enable-avisynth --enable-chromaprint --enable-libdav1d --enable-libdavs2 --enable-libfdk-aac --enable-libass --enable-libsvtav1 --enable-libmp3lame --enable-libopencore-amrnb --enable-libopencore-amrwb --enable-libopenjpeg --enable-libopus --enable-librtmp --enable-libsoxr --enable-libspeex --enable-libtheora --enable-libvidstab --enable-libvo-amrwbenc --enable-libvpx --enable-libwebp --enable-libx264 --enable-libx265 --enable-sdl2 --enable-libxvid --enable-libzimg --enable-cuda-nvcc --enable-cuda-llvm --enable-cuvid --enable-nvdec --enable-nvenc --enable-ffnvcodec --extra-cflags=-DLIBTWOLAME_STATIC --extra-ldflags='-ldavs2 -lz -ldav1d -pthread -ldl -lfdk-aac -lm' --extra-libs='-ldavs2 -lcrypt -ldl -lzimg -lpthread -lvmaf -lm -lz -lstdc++ -lz -lfftw3 -lchromaprint' --extra-ldexeflags=-static --extra-version=Brutus_Core_Full_Static_FFmpeg_By_Rocma_Brutus

i have a lot of option to add lol , you think with your script we can have a final result like this ? : /bin# ldd ./ffmpeg

    not a dynamic executable
slyfox1186 commented 9 months ago

I can't change the script the way you are asking me to. This would really mess up how I have things so far. Hopefully you can take my script as inspiration and even fork my repo and try to customize your own.