gpt4 book ai didi

shared-libraries - 缺少libsourcey -fPIC编译错误

转载 作者:行者123 更新时间:2023-12-02 10:30:11 27 4
gpt4 key购买 nike

我正在尝试运行LibSourcey以使用Webrtc流服务器。

问题是我似乎无法使其正常工作。
我很难在我的Ubuntu 16.04(cmake文件中的Regexp)上对该项目进行cmake,但现在已修复。
我实际上遇到的问题是在编译时出现一个共享对象错误:

usr/bin/ld: /home/kimmie/ffmpeg_build/lib/libswresample.a(options.o): 
relocation R_X86_64_32 against `.rodata.str1.1' can not be used when making a shared object;
recompile with -fPIC

/home/kimmie/ffmpeg_build/lib/libswresample.a: error adding symbols: Bad value
collect2: error: ld returned 1 exit status

av/CMakeFiles/av.dir/build.make:783: recipe for target 'av/libscy_av.so.1.0.2' failed

任何帮助将不胜感激,因为我现在不知道该怎么办。

最佳答案

我在Ubuntu 16.04上遇到了同样的错误。

我最终用标志重新编译FFmpeg来构建共享库。在FFmpeg Compilation Guide中的代码示例框之后,我在适用的./configure行中添加了以下两个标志:

  • --enable-pic
  • -启用共享的

  • 我也删除了 --disable-shared标志。

    我向每个组件添加了 --enable-pic--enable-shared,并删除了该标志(如果该标志返回了该组件无法识别的消息)。至少需要--enable-shared libx264,libfdk-acc和libmp3lame。然后是最终的FFmpeg(复制并粘贴到上面的FFmpeg指南中):
    PATH="$HOME/bin:$PATH" PKG_CONFIG_PATH="$HOME/ffmpeg_build/lib/pkgconfig" ./configure \
    --prefix="$HOME/ffmpeg_build" \
    --pkg-config-flags="--static" \
    --extra-cflags="-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 \
    --enable-shared

    Note the last two lines in my example are different than the FFmpeg guide.



    完成所有这些操作之后,最好删除Libsourcey源并构建文件夹并重新开始。

    我花了大约4-5天的时间才能最终编译并成功建立具有FFmpeg和WebRTC依赖关系的Libsourcey。我也遇到了其他障碍,因此,如果您还有其他问题,请务必标记我。注意:我对Linux的构建不了解,并且对所有概念都不了解;这就是对我有用的方法,也许对您有用。

    关于shared-libraries - 缺少libsourcey -fPIC编译错误,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/62549337/

    27 4 0
    Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
    广告合作:1813099741@qq.com 6ren.com