Hi all,
i wanted to package AirSane.
But the build failed with the following message:
nix-build --show-trace
this derivation will be built:
/nix/store/yjag5vqwxdark3nymkpa5lnfffzpjkp0-airsane-v0.3.2.drv
these 6 paths will be fetched (9.24 MiB download, 37.70 MiB unpacked):
/nix/store/bbcia12cv22icfa11i8q9q91rc48cjfq-patchelf-0.13
/nix/store/cxfgrmc14hd8dji8dhbbzrbyrdkdai91-stdenv-linux
/nix/store/h240v616x2b9j3sbsiw7m58df47q91vn-cmake-3.19.7
/nix/store/ny73gmasqrrsx7nk71qnffgn2jh87kv5-rhash-1.4.1
/nix/store/qirh7zw1qidj4f128nq3hj3hxv8svksr-gnumake-4.3
/nix/store/xsqb95lgab77sryzcicamd7qpwz427r9-curl-7.76.1
copying path '/nix/store/xsqb95lgab77sryzcicamd7qpwz427r9-curl-7.76.1' from 'https://cache.nixos.org'...
copying path '/nix/store/qirh7zw1qidj4f128nq3hj3hxv8svksr-gnumake-4.3' from 'https://cache.nixos.org'...
copying path '/nix/store/bbcia12cv22icfa11i8q9q91rc48cjfq-patchelf-0.13' from 'https://cache.nixos.org'...
copying path '/nix/store/ny73gmasqrrsx7nk71qnffgn2jh87kv5-rhash-1.4.1' from 'https://cache.nixos.org'...
copying path '/nix/store/cxfgrmc14hd8dji8dhbbzrbyrdkdai91-stdenv-linux' from 'https://cache.nixos.org'...
copying path '/nix/store/h240v616x2b9j3sbsiw7m58df47q91vn-cmake-3.19.7' from 'https://cache.nixos.org'...
building '/nix/store/yjag5vqwxdark3nymkpa5lnfffzpjkp0-airsane-v0.3.2.drv'...
unpacking sources
unpacking source archive /nix/store/bxv4n4is4y1i4jyk3dc5h0xzrkxg1ddx-source
source root is source
patching sources
configuring
fixing cmake files...
cmake flags: -DCMAKE_FIND_USE_SYSTEM_PACKAGE_REGISTRY=OFF -DCMAKE_FIND_USE_PACKAGE_REGISTRY=OFF -DCMAKE_EXPORT_NO_PACKAGE_REGISTRY=ON -DCMAKE_BUILD_TYPE=Release -DCMAKE_SKIP_BUILD_RPATH=ON -DBUILD_TESTING=OFF -DCMAKE_INSTALL_LOCALEDIR=/nix/store/q41f7knih003s159qll747pvbd7yx0m9-airsane-v0.3.2/share/locale -DCMAKE_INSTALL_LIBEXECDIR=/nix/store/q41f7knih003s159qll747pvbd7yx0m9-airsane-v0.3.2/libexec -DCMAKE_INSTALL_LIBDIR=/nix/store/q41f7knih003s159qll747pvbd7yx0m9-airsane-v0.3.2/lib -DCMAKE_INSTALL_DOCDIR=/nix/store/q41f7knih003s159qll747pvbd7yx0m9-airsane-v0.3.2/share/doc/airsaned -DCMAKE_INSTALL_INFODIR=/nix/store/q41f7knih003s159qll747pvbd7yx0m9-airsane-v0.3.2/share/info -DCMAKE_INSTALL_MANDIR=/nix/store/q41f7knih003s159qll747pvbd7yx0m9-airsane-v0.3.2/share/man -DCMAKE_INSTALL_OLDINCLUDEDIR=/nix/store/q41f7knih003s159qll747pvbd7yx0m9-airsane-v0.3.2/include -DCMAKE_INSTALL_INCLUDEDIR=/nix/store/q41f7knih003s159qll747pvbd7yx0m9-airsane-v0.3.2/include -DCMAKE_INSTALL_SBINDIR=/nix/store/q41f7knih003s159qll747pvbd7yx0m9-airsane-v0.3.2/sbin -DCMAKE_INSTALL_BINDIR=/nix/store/q41f7knih003s159qll747pvbd7yx0m9-airsane-v0.3.2/bin -DCMAKE_INSTALL_NAME_DIR=/nix/store/q41f7knih003s159qll747pvbd7yx0m9-airsane-v0.3.2/lib -DCMAKE_POLICY_DEFAULT_CMP0025=NEW -DCMAKE_OSX_SYSROOT= -DCMAKE_FIND_FRAMEWORK=LAST -DCMAKE_STRIP=/nix/store/jp5synlw78ggp69rrdch6aknb4j3bxr7-binutils-2.35.1/bin/strip -DCMAKE_RANLIB=/nix/store/jp5synlw78ggp69rrdch6aknb4j3bxr7-binutils-2.35.1/bin/ranlib -DCMAKE_AR=/nix/store/jp5synlw78ggp69rrdch6aknb4j3bxr7-binutils-2.35.1/bin/ar -DCMAKE_C_COMPILER=gcc -DCMAKE_CXX_COMPILER=g++ -DCMAKE_INSTALL_PREFIX=/nix/store/q41f7knih003s159qll747pvbd7yx0m9-airsane-v0.3.2
-- The C compiler identification is GNU 10.3.0
-- The CXX compiler identification is GNU 10.3.0
-- Detecting C compiler ABI info
-- Detecting C compiler ABI info - done
-- Check for working C compiler: /nix/store/f9592ghi61h9q590f6hav7vw1nykl5h8-gcc-wrapper-10.3.0/bin/gcc - skipped
-- Detecting C compile features
-- Detecting C compile features - done
-- Detecting CXX compiler ABI info
-- Detecting CXX compiler ABI info - done
-- Check for working CXX compiler: /nix/store/f9592ghi61h9q590f6hav7vw1nykl5h8-gcc-wrapper-10.3.0/bin/g++ - skipped
-- Detecting CXX compile features
-- Detecting CXX compile features - done
-- Looking for pthread.h
-- Looking for pthread.h - found
-- Performing Test CMAKE_HAVE_LIBC_PTHREAD
-- Performing Test CMAKE_HAVE_LIBC_PTHREAD - Failed
-- Check if compiler accepts -pthread
-- Check if compiler accepts -pthread - yes
-- Found Threads: TRUE
-- Configuring done
-- Generating done
CMake Warning:
Manually-specified variables were not used by the project:
BUILD_TESTING
CMAKE_EXPORT_NO_PACKAGE_REGISTRY
CMAKE_INSTALL_BINDIR
CMAKE_INSTALL_DOCDIR
CMAKE_INSTALL_INCLUDEDIR
CMAKE_INSTALL_INFODIR
CMAKE_INSTALL_LIBDIR
CMAKE_INSTALL_LIBEXECDIR
CMAKE_INSTALL_LOCALEDIR
CMAKE_INSTALL_MANDIR
CMAKE_INSTALL_OLDINCLUDEDIR
CMAKE_INSTALL_SBINDIR
CMAKE_POLICY_DEFAULT_CMP0025
-- Build files have been written to: /build/source/build
cmake: enabled parallel building
building
build flags: -j16 -l16 SHELL=/nix/store/3365c8gpdcw0vzyk2n4zdzmmns3z6p8x-bash-4.4-p23/bin/bash
[ 4%] Generating version.cpp, _version.cpp
Scanning dependencies of target airsaned
[ 12%] Building CXX object CMakeFiles/airsaned.dir/server/main.cpp.o
[ 12%] Building CXX object CMakeFiles/airsaned.dir/server/optionsfile.cpp.o
[ 12%] Generating version.cpp, _version.cpp
[ 20%] Building CXX object CMakeFiles/airsaned.dir/server/mainserver.cpp.o
[ 20%] Building CXX object CMakeFiles/airsaned.dir/server/mainpage.cpp.o
[ 24%] Building CXX object CMakeFiles/airsaned.dir/server/scanner.cpp.o
[ 32%] Building CXX object CMakeFiles/airsaned.dir/server/scannerserver.cpp.o
[ 36%] Building CXX object CMakeFiles/airsaned.dir/server/scannerpage.cpp.o
[ 36%] Building CXX object CMakeFiles/airsaned.dir/server/scanjob.cpp.o
[ 40%] Building CXX object CMakeFiles/airsaned.dir/sanecpp/sanecpp.cpp.o
[ 44%] Building CXX object CMakeFiles/airsaned.dir/basic/uuid.cpp.o
[ 48%] Building CXX object CMakeFiles/airsaned.dir/basic/dictionary.cpp.o
[ 52%] Building CXX object CMakeFiles/airsaned.dir/basic/fdbuf.cpp.o
[ 60%] Building CXX object CMakeFiles/airsaned.dir/web/httpserver.cpp.o
[ 60%] Building CXX object CMakeFiles/airsaned.dir/web/webpage.cpp.o
[ 64%] Building CXX object CMakeFiles/airsaned.dir/web/errorpage.cpp.o
[ 68%] Building CXX object CMakeFiles/airsaned.dir/imageformats/imageencoder.cpp.o
[ 72%] Building CXX object CMakeFiles/airsaned.dir/imageformats/jpegencoder.cpp.o
[ 76%] Building CXX object CMakeFiles/airsaned.dir/imageformats/pdfencoder.cpp.o
[ 80%] Building CXX object CMakeFiles/airsaned.dir/imageformats/pngencoder.cpp.o
[ 84%] Building CXX object CMakeFiles/airsaned.dir/zeroconf/mdnspublisher.cpp.o
[ 88%] Building CXX object CMakeFiles/airsaned.dir/zeroconf/hotplugnotifier.cpp.o
/build/source/imageformats/pngencoder.cpp:20:10: fatal error: libpng/png.h: No such file or directory
20 | #include <libpng/png.h>
| ^~~~~~~~~~~~~~
compilation terminated.
make[2]: *** [CMakeFiles/airsaned.dir/build.make:336: CMakeFiles/airsaned.dir/imageformats/pngencoder.cpp.o] Error 1
make[2]: *** Waiting for unfinished jobs....
make[1]: *** [CMakeFiles/Makefile2:95: CMakeFiles/airsaned.dir/all] Error 2
make: *** [Makefile:149: all] Error 2
error: builder for '/nix/store/yjag5vqwxdark3nymkpa5lnfffzpjkp0-airsane-v0.3.2.drv' failed with exit code 2;
last 10 log lines:
> [ 84%] Building CXX object CMakeFiles/airsaned.dir/zeroconf/mdnspublisher.cpp.o
> [ 88%] Building CXX object CMakeFiles/airsaned.dir/zeroconf/hotplugnotifier.cpp.o
> /build/source/imageformats/pngencoder.cpp:20:10: fatal error: libpng/png.h: No such file or directory
> 20 | #include <libpng/png.h>
> | ^~~~~~~~~~~~~~
> compilation terminated.
> make[2]: *** [CMakeFiles/airsaned.dir/build.make:336: CMakeFiles/airsaned.dir/imageformats/pngencoder.cpp.o] Error 1
> make[2]: *** Waiting for unfinished jobs....
> make[1]: *** [CMakeFiles/Makefile2:95: CMakeFiles/airsaned.dir/all] Error 2
> make: *** [Makefile:149: all] Error 2
For full logs, run 'nix log /nix/store/yjag5vqwxdark3nymkpa5lnfffzpjkp0-airsane-v0.3.2.drv'.
The full log:
@nix { "action": "setPhase", "phase": "unpackPhase" }
unpacking sources
unpacking source archive /nix/store/bxv4n4is4y1i4jyk3dc5h0xzrkxg1ddx-source
source root is source
@nix { "action": "setPhase", "phase": "patchPhase" }
patching sources
@nix { "action": "setPhase", "phase": "configurePhase" }
configuring
fixing cmake files...
cmake flags: -DCMAKE_FIND_USE_SYSTEM_PACKAGE_REGISTRY=OFF -DCMAKE_FIND_USE_PACKAGE_REGISTRY=OFF -DCMAKE_EXPORT_NO_PACKAGE_REGISTRY=ON -DCMAKE_BUILD_TYPE=Release -DCMAKE_SKIP_BUILD_RPATH=ON -DBUILD_TESTING=OFF -DCMAKE_INSTALL_LOCALEDIR=/nix/store/q41f7knih003s159qll747pvbd7yx0m9-airsane-v0.3.2/share/locale -DCMAKE_INSTALL_LIBEXECDIR=/nix/store/q41f7knih003s159qll747pvbd7yx0m9-airsane-v0.3.2/libexec -DCMAKE_INSTALL_LIBDIR=/nix/store/q41f7knih003s159qll747pvbd7yx0m9-airsane-v0.3.2/lib -DCMAKE_INSTALL_DOCDIR=/nix/store/q41f7knih003s159qll747pvbd7yx0m9-airsane-v0.3.2/share/doc/airsaned -DCMAKE_INSTALL_INFODIR=/nix/store/q41f7knih003s159qll747pvbd7yx0m9-airsane-v0.3.2/share/info -DCMAKE_INSTALL_MANDIR=/nix/store/q41f7knih003s159qll747pvbd7yx0m9-airsane-v0.3.2/share/man -DCMAKE_INSTALL_OLDINCLUDEDIR=/nix/store/q41f7knih003s159qll747pvbd7yx0m9-airsane-v0.3.2/include -DCMAKE_INSTALL_INCLUDEDIR=/nix/store/q41f7knih003s159qll747pvbd7yx0m9-airsane-v0.3.2/include -DCMAKE_INSTALL_SBINDIR=/nix/store/q41f7knih003s159qll747pvbd7yx0m9-airsane-v0.3.2/sbin -DCMAKE_INSTALL_BINDIR=/nix/store/q41f7knih003s159qll747pvbd7yx0m9-airsane-v0.3.2/bin -DCMAKE_INSTALL_NAME_DIR=/nix/store/q41f7knih003s159qll747pvbd7yx0m9-airsane-v0.3.2/lib -DCMAKE_POLICY_DEFAULT_CMP0025=NEW -DCMAKE_OSX_SYSROOT= -DCMAKE_FIND_FRAMEWORK=LAST -DCMAKE_STRIP=/nix/store/jp5synlw78ggp69rrdch6aknb4j3bxr7-binutils-2.35.1/bin/strip -DCMAKE_RANLIB=/nix/store/jp5synlw78ggp69rrdch6aknb4j3bxr7-binutils-2.35.1/bin/ranlib -DCMAKE_AR=/nix/store/jp5synlw78ggp69rrdch6aknb4j3bxr7-binutils-2.35.1/bin/ar -DCMAKE_C_COMPILER=gcc -DCMAKE_CXX_COMPILER=g++ -DCMAKE_INSTALL_PREFIX=/nix/store/q41f7knih003s159qll747pvbd7yx0m9-airsane-v0.3.2
-- The C compiler identification is GNU 10.3.0
-- The CXX compiler identification is GNU 10.3.0
-- Detecting C compiler ABI info
-- Detecting C compiler ABI info - done
-- Check for working C compiler: /nix/store/f9592ghi61h9q590f6hav7vw1nykl5h8-gcc-wrapper-10.3.0/bin/gcc - skipped
-- Detecting C compile features
-- Detecting C compile features - done
-- Detecting CXX compiler ABI info
-- Detecting CXX compiler ABI info - done
-- Check for working CXX compiler: /nix/store/f9592ghi61h9q590f6hav7vw1nykl5h8-gcc-wrapper-10.3.0/bin/g++ - skipped
-- Detecting CXX compile features
-- Detecting CXX compile features - done
-- Looking for pthread.h
-- Looking for pthread.h - found
-- Performing Test CMAKE_HAVE_LIBC_PTHREAD
-- Performing Test CMAKE_HAVE_LIBC_PTHREAD - Failed
-- Check if compiler accepts -pthread
-- Check if compiler accepts -pthread - yes
-- Found Threads: TRUE
-- Configuring done
-- Generating done
CMake Warning:
Manually-specified variables were not used by the project:
BUILD_TESTING
CMAKE_EXPORT_NO_PACKAGE_REGISTRY
CMAKE_INSTALL_BINDIR
CMAKE_INSTALL_DOCDIR
CMAKE_INSTALL_INCLUDEDIR
CMAKE_INSTALL_INFODIR
CMAKE_INSTALL_LIBDIR
CMAKE_INSTALL_LIBEXECDIR
CMAKE_INSTALL_LOCALEDIR
CMAKE_INSTALL_MANDIR
CMAKE_INSTALL_OLDINCLUDEDIR
CMAKE_INSTALL_SBINDIR
CMAKE_POLICY_DEFAULT_CMP0025
-- Build files have been written to: /build/source/build
cmake: enabled parallel building
@nix { "action": "setPhase", "phase": "buildPhase" }
building
build flags: -j16 -l16 SHELL=/nix/store/3365c8gpdcw0vzyk2n4zdzmmns3z6p8x-bash-4.4-p23/bin/bash
[ 4%] e[34me[1mGenerating version.cpp, _version.cppe[0m
e[35me[1mScanning dependencies of target airsanede[0m
[ 12%] e[32mBuilding CXX object CMakeFiles/airsaned.dir/server/main.cpp.oe[0m
[ 12%] e[32mBuilding CXX object CMakeFiles/airsaned.dir/server/optionsfile.cpp.oe[0m
[ 12%] e[34me[1mGenerating version.cpp, _version.cppe[0m
[ 20%] e[32mBuilding CXX object CMakeFiles/airsaned.dir/server/mainserver.cpp.oe[0m
[ 20%] e[32mBuilding CXX object CMakeFiles/airsaned.dir/server/mainpage.cpp.oe[0m
[ 24%] e[32mBuilding CXX object CMakeFiles/airsaned.dir/server/scanner.cpp.oe[0m
[ 32%] e[32mBuilding CXX object CMakeFiles/airsaned.dir/server/scannerserver.cpp.oe[0m
[ 36%] e[32mBuilding CXX object CMakeFiles/airsaned.dir/server/scannerpage.cpp.oe[0m
[ 36%] e[32mBuilding CXX object CMakeFiles/airsaned.dir/server/scanjob.cpp.oe[0m
[ 40%] e[32mBuilding CXX object CMakeFiles/airsaned.dir/sanecpp/sanecpp.cpp.oe[0m
[ 44%] e[32mBuilding CXX object CMakeFiles/airsaned.dir/basic/uuid.cpp.oe[0m
[ 48%] e[32mBuilding CXX object CMakeFiles/airsaned.dir/basic/dictionary.cpp.oe[0m
[ 52%] e[32mBuilding CXX object CMakeFiles/airsaned.dir/basic/fdbuf.cpp.oe[0m
[ 60%] e[32mBuilding CXX object CMakeFiles/airsaned.dir/web/httpserver.cpp.oe[0m
[ 60%] e[32mBuilding CXX object CMakeFiles/airsaned.dir/web/webpage.cpp.oe[0m
[ 64%] e[32mBuilding CXX object CMakeFiles/airsaned.dir/web/errorpage.cpp.oe[0m
[ 68%] e[32mBuilding CXX object CMakeFiles/airsaned.dir/imageformats/imageencoder.cpp.oe[0m
[ 72%] e[32mBuilding CXX object CMakeFiles/airsaned.dir/imageformats/jpegencoder.cpp.oe[0m
[ 76%] e[32mBuilding CXX object CMakeFiles/airsaned.dir/imageformats/pdfencoder.cpp.oe[0m
[ 80%] e[32mBuilding CXX object CMakeFiles/airsaned.dir/imageformats/pngencoder.cpp.oe[0m
[ 84%] e[32mBuilding CXX object CMakeFiles/airsaned.dir/zeroconf/mdnspublisher.cpp.oe[0m
[ 88%] e[32mBuilding CXX object CMakeFiles/airsaned.dir/zeroconf/hotplugnotifier.cpp.oe[0m
e[01me[K/build/source/imageformats/pngencoder.cpp:20:10:e[me[K e[01;31me[Kfatal error: e[me[Klibpng/png.h: No such file or directory
20 | #include e[01;31me[K<libpng/png.h>e[me[K
| e[01;31me[K^~~~~~~~~~~~~~e[me[K
compilation terminated.
make[2]: *** [CMakeFiles/airsaned.dir/build.make:336: CMakeFiles/airsaned.dir/imageformats/pngencoder.cpp.o] Error 1
make[2]: *** Waiting for unfinished jobs....
make[1]: *** [CMakeFiles/Makefile2:95: CMakeFiles/airsaned.dir/all] Error 2
make: *** [Makefile:149: all] Error 2
My derivation file:
{ stdenv, lib, fetchFromGitHub, cmake, libjpeg, libpng, libusb1, sane-backends }:
stdenv.mkDerivation rec {
name = "airsane-${version}";
version = "v0.3.2";
src = fetchFromGitHub {
owner = "SimulPiscator";
repo = "AirSane";
rev = "${version}";
sha256 = "07wq7mwr2af54m6bfiyakjh12rhqsijd8ajg7qhzijjagl7hiiif";
};
buildInputs = [
sane-backends
libjpeg
libpng
libusb1
];
nativeBuildInputs = [
cmake
];
unpackPhase = "";
}
I included libpng
but cmake
does not find it.
I am using the channel nixos-21.11
to build.
Did I mess up my derivation file?
How can I track down the error, or import libpng
that the build process does not fail?