Bug Report Unable to compile on Arch

A month or so ago (I'm not certain exactly when, as I've had little time behind the keyboard these past 2 months), OBS stopped compiling on my Arch box. I get the same error whether I try to compile manually, or through the "obs-studio-git" package in the AUR.


Code:
Linking CXX executable obs
/usr/bin/ld: /usr/local/sbin/../lib/libcurl.a(libcurl_la-content_encoding.o): undefined reference to symbol 'inflateInit2_'
/usr/bin/../lib64/libz.so.1: error adding symbols: DSO missing from command line
collect2: error: ld returned 1 exit status
obs/CMakeFiles/obs.dir/build.make:1035: recipe for target 'obs/obs' failed
make[2]: *** [obs/obs] Error 1
CMakeFiles/Makefile2:333: recipe for target 'obs/CMakeFiles/obs.dir/all' failed
make[1]: *** [obs/CMakeFiles/obs.dir/all] Error 2
Makefile:136: recipe for target 'all' failed
make: *** [all] Error 2

GCC version is 5.1.0-4, if that matters, and I added "-DUNIX_STRUCTURE=1" to the pkgbuild as suggested by one of the comments in the AUR, but I still get the same error.
 

Lain

Forum Admin
Lain
Forum Moderator
Developer
Looks like a dependency issue. I don't quite know how to help in most of these cases on different linux distributions, but I'm guessing there's an issue with the lubcurl dependency.
 
Looks like a dependency issue. I don't quite know how to help in most of these cases on different linux distributions, but I'm guessing there's an issue with the lubcurl dependency.
I didn't even see that in the error text the first time I read it. But even rolling the curl package (there is no libcurl in Arch) back to the version that last successfully compiled didn't succeed.

If "obs-studio-git" didn't make it, have you tried with "obs-studio" instead in AUR ?
I tried that just now, and unfortunately, same error.
 
Suspecting bitrot, I installed a fresh copy of Arch in a VM, and tried compiling there, which succeeded, but I got a core dump trying to run it. (error: ARB_GLX_create_context not supported!) I kind've expected that running in a VM without any hardware pass-through, but not sure if that's supposed to be that way.

Anyway, I looked at the list of dependencies obs-studio-git pulls in on a fresh, bare-bones install, and deleted my package cache and had pacman re-install all of these packages on my main system, but still no change in the compile error.

I then copied the built pkg.tar.xz file over from the VM to my main system, and installed that with pacman, and strangely enough it works just fine.
 
Well, I fixed this, and managed to build on my machine, and I don't understand why this was a thing.
Code:
/usr/bin/ld: /usr/local/sbin/../lib/libcurl.a(libcurl_la-content_encoding.o): undefined reference to symbol 'inflateInit2_'
libcurl.a is not owned by any package on my system, Google doesn't give me a clear answer of what this was supposed to have been owned by, and renaming it allowed the build to complete successfully.
 
Top