Linux vlc:R_X86_64_32对`.rodata';制作共享对象时不能使用;用-fPIC重新编译

Linux vlc:R_X86_64_32对`.rodata';制作共享对象时不能使用;用-fPIC重新编译,linux,shared-libraries,vlc,Linux,Shared Libraries,Vlc,当我构建VLC时,我运行make,并得到以下错误: /usr/bin/ld: /opt/ffmpeg/lib/libavformat.a(rmsipr.o): relocation R_X86_64_32 against `.rodata' can not be used when making a shared object; recompile with -fPIC 因此,我尝试在CFLAGS和CXXFLAGS中添加-fPIC,但在make之后,我仍然得到相同的错误 谁能解释这一点?`?为

当我构建VLC时,我运行make,并得到以下错误:

/usr/bin/ld: /opt/ffmpeg/lib/libavformat.a(rmsipr.o): relocation R_X86_64_32 against `.rodata' can not be used when making a shared object; recompile with -fPIC
因此,我尝试在CFLAGS和CXXFLAGS中添加-fPIC,但在make之后,我仍然得到相同的错误


谁能解释这一点?`

?为什么不使用“包管理”工具安装“vlc”(和ffmpeg)。。。。以及:您使用的是哪种“Linux操作系统”?关于构建ffmpeg:您必须使用
/configure--enable shared
投诉是
ffmpeg
不是使用
-fPIC
构建的,在编译应用程序之前,您需要使用
-fPIC
对其进行编译。当我使用/configure--enable shared and build with-fPIC时,我得到了一个简单的错误:/usr/bin/ld:libavutil/color\utils.o:relocation R\u X86\u 64\u 32S与`。在创建共享对象时不能使用rodata;使用-fPICRepeat重新编译:您正在使用哪个“Linux操作系统”。。。。。。FFMPEG:
/configure--help
将显示一个选项=--enable picI正在使用fedora22,其核心是4.2.5-201.fc22.x86_64。我运行./configure--enable pic,我就可以使安装成功。我是说,我是说。但当我做vlc时,我仍然得到同样的错误。为什么?为什么不使用“包管理”工具安装“vlc”(和ffmpeg)。。。。以及:您使用的是哪种“Linux操作系统”?关于构建ffmpeg:您必须使用
/configure--enable shared
投诉是
ffmpeg
不是使用
-fPIC
构建的,在编译应用程序之前,您需要使用
-fPIC
对其进行编译。当我使用/configure--enable shared and build with-fPIC时,我得到了一个简单的错误:/usr/bin/ld:libavutil/color\utils.o:relocation R\u X86\u 64\u 32S与`。在创建共享对象时不能使用rodata;使用-fPICRepeat重新编译:您正在使用哪个“Linux操作系统”。。。。。。FFMPEG:
/configure--help
将显示一个选项=--enable picI正在使用fedora22,其核心是4.2.5-201.fc22.x86_64。我运行./configure--enable pic,我就可以使安装成功。我是说,我是说。但当我做vlc时,我仍然得到同样的错误。为什么?