Atterratio / obs-gphoto

Allows connect DSLR cameras with obs-studio through gPhoto on Linux
GNU General Public License v2.0
43 stars 16 forks source link

ERROR: A failure occurred in build() Arch linux #17

Open angelini75 opened 4 years ago

angelini75 commented 4 years ago
yaourt -S obs-gphoto

==> Downloading obs-gphoto PKGBUILD from AUR...
x .SRCINFO
x PKGBUILD
Atterratio commented on <a href="#comment-617638" class="date">2017-10-22 19:02</a>          
At now it's tested only on Canon cameras see bug: https://github.com/Atterratio/obs-gphoto/issues/1

IdleGandalf commented on <a href="#comment-634626" class="date">2018-02-20 17:54</a>             

archmylinux commented on <a href="#comment-734262" class="date">2020-03-17 18:43</a>             

obs-gphoto 0.3.0-1  (2017-10-24 15:49)
( Unsupported package: Potentially dangerous ! )
==> Edit PKGBUILD ? [Y/n] ("A" to abort)
==> ------------------------------------
==> 
Please add $VISUAL to your environment variables
for example:
export VISUAL="vim" (in ~/.bashrc)
(replace vim with your favorite editor)

==> Edit PKGBUILD with:  
/usr/lib/yaourt/util.sh: line 227: PKGBUILD: command not found
==> obs-gphoto dependencies:
 - obs-studio (already installed)
 - libgphoto2 (already installed)
 - imagemagick (already installed)
 - cmake (already installed) [makedepend]

==> Continue building obs-gphoto ? [Y/n]
==> ------------------------------------
==> 
==> Building and installing package
==> Making package: obs-gphoto 0.3.0-1 (Fri 20 Mar 2020 19:55:25 CET)
==> Checking runtime dependencies...
==> Checking buildtime dependencies...
==> Retrieving sources...
  -> Downloading v0.3.0.tar.gz...
  % Total    % Received % Xferd  Average Speed   Time    Time     Time  Current
                                 Dload  Upload   Total   Spent    Left  Speed
100   129  100   129    0     0    116      0  0:00:01  0:00:01 --:--:--   116
100 22556    0 22556    0     0   8722      0 --:--:--  0:00:02 --:--:-- 22623
==> Validating source files with sha256sums...
    v0.3.0.tar.gz ... Passed
==> Extracting sources...
  -> Extracting v0.3.0.tar.gz with bsdtar
==> Starting build()...
-- The C compiler identification is GNU 9.3.0
-- The CXX compiler identification is GNU 9.3.0
-- Check for working C compiler: /usr/bin/cc
-- Check for working C compiler: /usr/bin/cc -- works
-- Detecting C compiler ABI info
-- Detecting C compiler ABI info - done
-- Detecting C compile features
-- Detecting C compile features - done
-- Check for working CXX compiler: /usr/bin/c++
-- Check for working CXX compiler: /usr/bin/c++ -- works
-- Detecting CXX compiler ABI info
-- Detecting CXX compiler ABI info - done
-- Detecting CXX compile features
-- Detecting CXX compile features - done
-- LibObs FOUND
-- Found GPHOTO2: /usr/lib/libgphoto2.so  
-- Gphoto2 FOUND
-- Found ImageMagick: /usr/lib/libMagickCore-6.Q16HDRI.so (found version "7.0.10-1") 
-- MagickCore FOUND
-- Checking for module 'libudev'
--   Found libudev, version 245
-- Found UDEV: /usr/lib/libudev.so  
-- Configuring done
-- Generating done
-- Build files have been written to: /tmp/yaourt-tmp-marcos/aur-obs-gphoto/src/obs-gphoto-0.3.0
make[1]: Entering directory '/tmp/yaourt-tmp-marcos/aur-obs-gphoto/src/obs-gphoto-0.3.0'
make[2]: Entering directory '/tmp/yaourt-tmp-marcos/aur-obs-gphoto/src/obs-gphoto-0.3.0'
Scanning dependencies of target obs-gphoto
make[2]: Leaving directory '/tmp/yaourt-tmp-marcos/aur-obs-gphoto/src/obs-gphoto-0.3.0'
make[2]: Entering directory '/tmp/yaourt-tmp-marcos/aur-obs-gphoto/src/obs-gphoto-0.3.0'
[ 16%] Building C object CMakeFiles/obs-gphoto.dir/src/obs-gphoto.c.o
[ 33%] Building C object CMakeFiles/obs-gphoto.dir/src/gphoto-utils.c.o
/tmp/yaourt-tmp-marcos/aur-obs-gphoto/src/obs-gphoto-0.3.0/src/gphoto-utils.c:4:10: fatal error: magick/MagickCore.h: No such file or directory
    4 | #include <magick/MagickCore.h>
      |          ^~~~~~~~~~~~~~~~~~~~~
compilation terminated.
make[2]: *** [CMakeFiles/obs-gphoto.dir/build.make:76: CMakeFiles/obs-gphoto.dir/src/gphoto-utils.c.o] Error 1
make[2]: Leaving directory '/tmp/yaourt-tmp-marcos/aur-obs-gphoto/src/obs-gphoto-0.3.0'
make[1]: *** [CMakeFiles/Makefile2:76: CMakeFiles/obs-gphoto.dir/all] Error 2
make[1]: Leaving directory '/tmp/yaourt-tmp-marcos/aur-obs-gphoto/src/obs-gphoto-0.3.0'
make: *** [Makefile:130: all] Error 2
==> ERROR: A failure occurred in build().
    Aborting...
==> ERROR: Makepkg was unable to build obs-gphoto.
==> Restart building obs-gphoto ? [y/N]
==> -----------------------------------
angelini75 commented 4 years ago

It seems a problem with magick

[ 33%] Building C object CMakeFiles/obs-gphoto.dir/src/gphoto-utils.c.o
/tmp/yaourt-tmp-marcos/aur-obs-gphoto/src/obs-gphoto-0.3.0/src/gphoto-utils.c:4:10: fatal error: magick/MagickCore.h: No such file or directory
    4 | #include <magick/MagickCore.h>
      |          ^~~~~~~~~~~~~~~~~~~~~

Magick version

pacman -Q imagemagick-full
imagemagick-full 7.0.10.1-1
angelini75 commented 4 years ago

MagickCore.h is in /usr/include/ImageMagick-7/MagickCore/MagickCore.h and /usr/include/ImageMagick-6/magick/MagickCore.h

HarlemSquirrel commented 4 years ago

I was able to get a bit farther by modifying the PKGBUILD with

build() {
  cd ${srcdir}/${pkgname}-${pkgver}

  for filename in src/*.c; do
      echo "==> FILE: $filename"
    [ -e "$filename" ] || continue
    sed -i 's/include <magick\/MagickCore.h>/include <ImageMagick-7\/magick\/MagickCore.h>/g' "$filename"
  done

  cmake . -DSYSTEM_INSTALL=1
  make
}

But now I'm getting this so it seems I may be missing a library. I see above that angelini75 has imagemagick-full installed but that seems like a lot to install for this small package.

/home/hs/builds/obs-gphoto/src/obs-gphoto-0.3.0/src/gphoto-preview.c:1:10: fatal error: ImageMagick-7/magick/MagickCore.h: No such file or directory
    1 | #include <ImageMagick-7/magick/MagickCore.h>
      |          ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~