साथ संकलन नहीं है मैं इस प्रकार FFmpeg के ./configure
स्क्रिप्ट चलाने:FFmpeg साझा पुस्तकालयों
PATH="$HOME/bin:$PATH" PKG_CONFIG_PATH="$HOME/ffmpeg_build/lib/pkgconfig" ./configure --prefix="$HOME/ffmpeg_build" --pkg-config-flags="--static" --extra-cflags="-fPIC -m64 -I$HOME/ffmpeg_build/include" --extra-ldflags="-L$HOME/ffmpeg_build/lib" --bindir="$HOME/bin" --enable-gpl --enable-libass --enable-libfdk-aac --enable-libfreetype --enable-libmp3lame --enable-libopus --enable-libtheora --enable-libvorbis --enable-libvpx --enable-libx264 --enable-libx265 --enable-nonfree --enable-pic --extra-ldexeflags=-pie --enable-shared
जब मैं ऊपर के रूप में --enable-shared
विकल्प के साथ FFmpeg संकलित करने के लिए प्रयास करते हैं, मैं इस त्रुटि मिलती है
/usr/bin/ld: /home/guel/ffmpeg_build/lib/libx264.a(common.o): relocation R_X86_64_32 against '.rodata.str1.1' can not be used when making a shared object; recompile with -fPIC /home/guel/ffmpeg_build/lib/libx264.a: error adding symbols: Bad value collect2: error: ld returned 1 exit status
मैं क्रम में --extra-cflags
को --enable-pic
, --extra-ldexeflags=-pie
के साथ-साथ -fPIC -m64
जोड़ा था से छुटकारा पाने के यह स्थानान्तरण त्रुटि यहां सुझाई गई है: https://www.ffmpeg.org/platform.html
लेकिन मुझे अभी भी वही त्रुटि मिल रही है। मुझे ओपनसीवी के साथ इंटरफ़ेस करने के लिए --enable-shared
विकल्प के साथ ffmpeg को संकलित करने की आवश्यकता है, इसलिए मुझे यहां एक समाधान मिलना है।
मुझे यह समस्या थी और केवल मेरे लिए गिथब ने इसे बंद कर दिया। – brian