Question / Help Error linking libobs (Ubuntu 14.04 LTS)

Eagerestwolf

New Member
While building OBS Studio on Ubuntu 14.04, I get the console output shown below
Code:
[ 0%] [ 1%] [ 1%] [ 1%] [ 2%] [ 3%] [ 4%] Building C object deps/glad/CMakeFiles/glad.dir/src/glad.c.o
Building C object deps/jansson/CMakeFiles/jansson.dir/src/load.c.o
Building C object deps/jansson/CMakeFiles/jansson.dir/src/dump.c.o
Automoc for target obs
Building C object deps/jansson/CMakeFiles/jansson.dir/src/strbuffer.c.o
Building C object deps/glad/CMakeFiles/glad.dir/src/glad_glx.c.o
Building C object deps/jansson/CMakeFiles/jansson.dir/src/error.c.o
[ 5%] Building C object deps/jansson/CMakeFiles/jansson.dir/src/strconv.c.o
[ 5%] [ 6%] Building C object deps/jansson/CMakeFiles/jansson.dir/src/memory.c.o
[ 7%] Building C object deps/jansson/CMakeFiles/jansson.dir/src/utf.c.o
Building C object deps/jansson/CMakeFiles/jansson.dir/src/hashtable.c.o
[ 7%] Building C object deps/jansson/CMakeFiles/jansson.dir/src/value.c.o
[ 8%] Building C object deps/jansson/CMakeFiles/jansson.dir/src/pack_unpack.c.o
Linking C static library lib/libjansson.a
[ 8%] Built target jansson
[ 9%] [ 9%] [ 10%] Building C object libobs/CMakeFiles/libobs.dir/callback/calldata.c.o
Building C object libobs/CMakeFiles/libobs.dir/callback/decl.c.o
Building C object libobs/CMakeFiles/libobs.dir/callback/signal.c.o
[ 11%] Building C object libobs/CMakeFiles/libobs.dir/callback/proc.c.o
[ 11%] [ 12%] Building C object libobs/CMakeFiles/libobs.dir/graphics/graphics-ffmpeg.c.o
Building C object libobs/CMakeFiles/libobs.dir/graphics/quat.c.o
[ 12%] Building C object libobs/CMakeFiles/libobs.dir/graphics/effect-parser.c.o
[ 13%] Building C object libobs/CMakeFiles/libobs.dir/graphics/axisang.c.o
[ 14%] Building C object libobs/CMakeFiles/libobs.dir/graphics/vec4.c.o
[ 14%] [ 15%] Building C object libobs/CMakeFiles/libobs.dir/graphics/vec2.c.o
Building C object libobs/CMakeFiles/libobs.dir/graphics/texture-render.c.o
[ 16%] Building C object libobs/CMakeFiles/libobs.dir/graphics/bounds.c.o
[ 16%] [ 17%] Building C object libobs/CMakeFiles/libobs.dir/graphics/matrix4.c.o
[ 18%] Building C object libobs/CMakeFiles/libobs.dir/graphics/matrix3.c.o
[ 18%] Building C object libobs/CMakeFiles/libobs.dir/graphics/vec3.c.o
Building C object libobs/CMakeFiles/libobs.dir/graphics/graphics.c.o
Generating moc_obs-app.cpp
Generating moc_properties-view.cpp
Generating moc_qt-display.cpp
Generating moc_volume-control.cpp
Generating moc_window-basic-interaction.cpp
Generating moc_window-basic-main.cpp
Generating moc_window-basic-preview.cpp
Generating moc_window-basic-properties.cpp
Generating moc_window-basic-settings.cpp
Generating moc_window-basic-source-select.cpp
Generating moc_window-basic-status-bar.cpp
Generating moc_window-basic-transform.cpp
Generating moc_window-license-agreement.cpp
Generating moc_window-log-reply.cpp
Generating moc_window-main.cpp
Generating moc_window-namedialog.cpp
Generating moc_window-remux.cpp
[ 18%] Built target obs_automoc
[ 19%] Building C object libobs/CMakeFiles/libobs.dir/graphics/shader-parser.c.o
[ 20%] Building C object libobs/CMakeFiles/libobs.dir/graphics/plane.c.o
[ 20%] Building C object libobs/CMakeFiles/libobs.dir/graphics/effect.c.o
[ 21%] Building C object libobs/CMakeFiles/libobs.dir/graphics/math-extra.c.o
[ 22%] Building C object libobs/CMakeFiles/libobs.dir/graphics/graphics-imports.c.o
[ 22%] Building C object libobs/CMakeFiles/libobs.dir/media-io/video-io.c.o
[ 23%] Building C object libobs/CMakeFiles/libobs.dir/media-io/video-fourcc.c.o
[ 24%] Building C object libobs/CMakeFiles/libobs.dir/media-io/video-matrices.c.o
[ 24%] [ 25%] Building C object libobs/CMakeFiles/libobs.dir/media-io/audio-io.c.o
Building C object libobs/CMakeFiles/libobs.dir/media-io/video-frame.c.o
[ 25%] [ 26%] Building C object libobs/CMakeFiles/libobs.dir/media-io/format-conversion.c.o
[ 27%] Building C object libobs/CMakeFiles/libobs.dir/media-io/audio-resampler-ffmpeg.c.o
Building C object libobs/CMakeFiles/libobs.dir/media-io/video-scaler-ffmpeg.c.o
[ 27%] [ 28%] Building C object libobs/CMakeFiles/libobs.dir/media-io/media-remux.c.o
Building C object libobs/CMakeFiles/libobs.dir/util/array-serializer.c.o
[ 29%] [ 29%] Building C object libobs/CMakeFiles/libobs.dir/util/base.c.o
Building C object libobs/CMakeFiles/libobs.dir/util/platform.c.o
[ 30%] [ 31%] Building C object libobs/CMakeFiles/libobs.dir/util/cf-lexer.c.o
Building C object libobs/CMakeFiles/libobs.dir/util/bmem.c.o
[ 31%] Building C object libobs/CMakeFiles/libobs.dir/util/config-file.c.o
[ 32%] Building C object libobs/CMakeFiles/libobs.dir/util/lexer.c.o
[ 33%] Building C object libobs/CMakeFiles/libobs.dir/util/dstr.c.o
[ 33%] Building C object libobs/CMakeFiles/libobs.dir/util/utf8.c.o
[ 34%] Building C object libobs/CMakeFiles/libobs.dir/util/text-lookup.c.o
Linking C shared library libobsglad.so
[ 35%] [ 35%] Building C object libobs/CMakeFiles/libobs.dir/util/cf-parser.c.o
Building C object libobs/CMakeFiles/libobs.dir/obs-nix.c.o
[ 35%] Built target glad
[ 36%] Building C object libobs/CMakeFiles/libobs.dir/util/threading-posix.c.o
[ 37%] [ 37%] Building C object libobs/CMakeFiles/libobs.dir/util/platform-nix.c.o
Building C object libobs/CMakeFiles/libobs.dir/obs-avc.c.o
[ 38%] [ 38%] Building C object libobs/CMakeFiles/libobs.dir/obs-encoder.c.o
[ 39%] Building C object libobs/CMakeFiles/libobs.dir/obs-service.c.o
Building C object libobs/CMakeFiles/libobs.dir/obs-source.c.o
[ 40%] Building C object libobs/CMakeFiles/libobs.dir/obs-output.c.o
[ 40%] [ 41%] Building C object libobs/CMakeFiles/libobs.dir/obs.c.o
Building C object libobs/CMakeFiles/libobs.dir/obs-properties.c.o
[ 42%] Building C object libobs/CMakeFiles/libobs.dir/obs-data.c.o
[ 42%] Building C object libobs/CMakeFiles/libobs.dir/obs-module.c.o
[ 43%] Building C object libobs/CMakeFiles/libobs.dir/obs-display.c.o
[ 44%] Building C object libobs/CMakeFiles/libobs.dir/obs-view.c.o
[ 44%] Building C object libobs/CMakeFiles/libobs.dir/obs-scene.c.o
[ 45%] Building C object libobs/CMakeFiles/libobs.dir/obs-video.c.o
Linking C shared library libobs.so
/usr/bin/ld: /usr/local/lib/../lib/libavcodec.a(avpacket.o): relocation R_X86_64_32 against `.rodata.str1.1' can not be used when making a shared object; recompile with -fPIC
/usr/local/lib/../lib/libavcodec.a: error adding symbols: Bad value
collect2: error: ld returned 1 exit status
make[2]: *** [libobs/libobs.so.0] Error 1
make[1]: *** [libobs/CMakeFiles/libobs.dir/all] Error 2
make: *** [all] Error 2

Below is my output from cmake
Code:
-- Jansson >=2.5 not found, building bundled version
-- Found FFMpeg: /usr/local/lib/../lib/libavformat.a (found version "56.11.101") found components:  avformat avutil swscale swresample avcodec
-- Using libavcodec for image loading in libobs
-- Found FFMpeg: /usr/local/lib/../lib/libavcodec.a (found version "56.10.100") found components:  avcodec avutil swscale avformat swresample
-- Configuring done
-- Generating done
-- Build files have been written to: /build/obs-studio/build

I'm not entirely sure what the problem is. I'm not necessarily C++ illiterate, but I have never seen this error before. I think I need to rebuild ffmpeg or install libavcodec (Ubuntu's version I guess) as a shared library.
 

Eagerestwolf

New Member
Well I seem to have fixed everything on my own, turns out I forgot to enable shared libraries when I compiled ffmpeg. n00b mistakes ftw.
 
Top