build issue E: cannot canonicalize filename /var/cache/pbuilder/base.cow_amd64, does not exist

No, I didnt.

Added these options, now it fails with:

+ make_cowbuilder_distribution=stretch
+ '[' '!' http : //HTTPS// /deb. debian. org/debian = '' ']'
+ '[' -n http : //HTTPS/ //deb. debian. org/debian ']'
+ '[' all = all ']'
+ cow_folder=/var/cache/pbuilder/cow.cow_amd64
+ base_folder=/var/cache/pbuilder/base.cow_amd64
+ '[' all = all ']'
+ true
+ sudo env http_proxy=http : // 127. 0.0.1 : 3142 cowbuilder --build /home/debian/whonix_binary/genmkfile-packages-result/anon-apps-config_2.9-1.dsc --basepath /var/cache/pbuilder/base.cow_amd64 --buildplace /var/cache/pbuilder/cow.cow_amd64 --distribution stretch --mirror http : //HTTPS ///deb . debian . org/debian --extrapackages ' debhelper  genmkfile config-package-dev' --buildresult /home/debian/whonix_binary/genmkfile-packages-result
**E: cannot canonicalize filename /var/cache/pbuilder/base.cow_amd64, does not exist**
/usr/share/genmkfile/makefile-full:59: recipe for target 'deb-pkg' failed
make: *** [deb-pkg] Error 1
++ retry_last_failed_bash_command_exit_code=2
++ true
++ '[' 2 = 0 ']'
++ true 'INFO: Retry failed. exit code of last_failed_bash_command: 2 '
++ last_failed_exit_code=2
++ last_failed_bash_command='sudo $SUDO_OPTS -E make -f "$make_file" deb-pkg'
++ '[' '!' '' = '' ']'
++ true 'INFO: Skipping whonix_build_dispatch_after_retry (--retry-after), because empty, ok.'
++ '[' 2 = 0 ']'
++ errorhandlerprocessshared 'NONE_(called_by_errorhandlerretry)'
++ last_script=././build-steps.d/1200_create-debian-packages
++ trap_signal_type_previous=ERR
++ '[' ERR = '' ']'
++ trap_signal_type_last='NONE_(called_by_errorhandlerretry)'
++ whonix_build_error_counter=2
+++ benchmarktimeend 1568538197
++++ date +%s
+++ benchmarktimeend=1568538205
+++ benchmark_took_seconds=8
++++ convertsecs 8
++++ local h m s
++++ (( h=8/3600 ))
++++ true
++++ (( m=(8%3600)/60 ))
++++ true
++++ (( s=8%60 ))
++++ printf '%02d:%02d:%02d\n' 0 0 8
+++ echo 00:00:08
++ benchmark_took_time=00:00:08
++ processbacktracefunction
++ true 'INFO: BEGIN: processbacktracefunction'
++ '[' -o xtrace ']'
++ set +x
++ true 'INFO: END  : processbacktracefunction'
++ functiontracefunction
++ true 'INFO: BEGIN: functiontracefunction'
++ '[' -o xtrace ']'
++ set +x
++ true 'INFO: END  : functiontracefunction'
++ output_cmd_set
++ '[' -o xtrace ']'
++ output_cmd=true
++ true '
############################################################
ERROR in ././build-steps.d/1200_create-debian-packages detected!
anon_dist_build_version: 15.0.0.3.3
(whonix_build_error_counter: 2)
(benchmark: 00:00:08)
trap_signal_type_previous: ERR
trap_signal_type_last    : NONE_(called_by_errorhandlerretry)
process_backtrace_result:
1: : /sbin/init 
2: : xfce4-terminal 
3: : bash 
4: : sudo ./whonix_build --target raw --flavor whonix-gateway-rpi --build --arch arm64 --kernel linux-image-arm64 --headers linux-headers-arm64 --allow-untagged true --allow-uncommitted true 
5: : /bin/bash ./whonix_build --target raw --flavor whonix-gateway-rpi --build --arch arm64 --kernel linux-image-arm64 --headers linux-headers-arm64 --allow-untagged true --allow-uncommitted true 
6: : /bin/bash ././build-steps.d/1200_create-debian-packages 
function_trace_result:
main (line number: 212)
main (line number: 208)
create-debian-packages (line number: 200)
create_whonix_debian_packages (line number: 172)
errorhandlergeneral (line number: 334)
errorhandlerprocessshared (line number: 220)
errorhandlerretry (line number: 154)
errorhandlerprocessshared (line number: 169)
errorhandlerprocessshared (line number: 169)
errorhandlergeneral (line number: 334)
create_whonix_debian_packages (line number: 172)
create-debian-packages (line number: 200)
main (line number: 208)
main (line number: 212)
last_failed_bash_command: sudo $SUDO_OPTS -E make -f "$make_file" deb-pkg
last_failed_exit_code: 2
ERROR in ././build-steps.d/1200_create-debian-packages detected!
############################################################
'
++ '[' 'NONE_(called_by_errorhandlerretry)' = INT ']'
++ '[' 'NONE_(called_by_errorhandlerretry)' = TERM ']'
++ '[' 'NONE_(called_by_errorhandlerretry)' = ERR ']'
++ '[' 'NONE_(called_by_errorhandlerretry)' = 'NONE_(called_by_errorhandlerretry)' ']'
++ true 'INFO: trap_signal_type_last: NONE_(called_by_errorhandlerretry), considering auto retry...'
++ '[' '!' 1 = 0 ']'
++ '[' 2 = '' ']'
++ '[' -n 1 ']'
++ '[' -n 5 ']'
++ local first
++ read -r first _
++ '[' sudo = error_ ']'
++ '[' 2 -gt 1 ']'
++ true 'INFO: Auto retried (--retry-max) already 1 times. No more auto retry. '
++ unset whonix_build_auto_retry_counter
++ true
++ ignore_error=false
++ answer=
++ '[' 'NONE_(called_by_errorhandlerretry)' = ERR ']'
++ '[' 'NONE_(called_by_errorhandlerretry)' = 'NONE_(called_by_errorhandlerretry)' ']'
++ true 'INFO: whonix_build_non_interactive: '
++ '[' '' = true ']'
++ '[' -t 0 ']'
++ true 'INFO: stdin connected to terminal, using interactive error handler.'
++ true '   ERROR in ././build-steps.d/1200_create-debian-packages detected!
   Please have a look above (the block within ###...), note the command that failed, last_failed_exit_code and its output (further above).
   - Please enter c and press enter to ignore the error and continue building. (Recommended against!)
   - Please press r and enter to retry.
   - Please press s and enter to open an chroot interactive shell.
   - Please press a and enter to abort.'

Building on Debian stretch is unsupported.

As per build documentation, building on Debian buster is required.

1 Like

https://forums.whonix.org/t/whonix-for-arm64-raspberry-pi-rpi/1788/126?u=patrick

Some bug. Architecture variable does not propagate to GitHub - Kicksecure/genmkfile: Simplifies Debian Packaging and Maintenance

This got probably broken when implementing support for building packages for multiple platforms at the same time.

There is no amd64 cowfolder. To no big surprise since trying to build for arm64.
I assume there is a arm64 cowfolder.

Architecture is “all” since that package is not a compiled package.

I wonder why I wrote that back then. For architecture independent packages it shouldn’t matter what cowbuilder folder is being used build host (amd64) vs target platform (arm64). I wonder why I thought these would be better created in the cowbuilder folder of the build host.



1 Like

As a workaround meanwhile try building a amd64 cowbuilder chroot.

sudo ./build-steps.d/1130_cowbuilder-setup --target raw --flavor whonix-gateway-rpi --build --arch amd64
1 Like

Low RAM issue.
4 GB RAM works for me.

I’m not 100% sure, but I think those changes have been made after my latest rpi builds, so these probably need some rpi related fixes.

Probably a low disk space issue in cowbuilder chroot.

I suggest the manually add that change.

https://github.com/Whonix/Whonix/commit/80852842123d63f094728837c4b1be767c989ed5

And then use

--allow-uncommitted true
1 Like

Emulate that commit that I linked to in my previous post.

Before:

  if mount | grep /var/cache/pbuilder | grep tmpfs ; then
     true "INFO: /var/cache/pbuilder already tmpfs."
  else
     mount -t tmpfs -o size=2G none /var/cache/pbuilder
  fi

After:

   if [ "$whonix_build_unsafe_io" = "true" ]; then
      if mount | grep /var/cache/pbuilder | grep tmpfs ; then
         true "INFO: /var/cache/pbuilder already tmpfs."
      else
         mount -t tmpfs -o size=2G none /var/cache/pbuilder
      fi
   fi

Did you reboot?

Forgot to mention. Required to get rid of previous mount.

1 Like

New lintian warning that didn’t happen to me before. Wondering if Debian introduces new ones in stable releases.

This one can be safely ignored. Continue as offered by the build script.

Will fix in next git tag.

1 Like

Actually it’s correct in the source code already. Dunno why the file is not executable for you.

Did you mount /home with noexec?

1 Like

The permission issue: I suggest to re-download Whonix source code. If permissions of random files fail, something is wrong.

Try to download a specific git tag rather than master

Or run git status and delete superfluous folders.

This one I don’t know. Image likely won’t boot. Bootloader issue.

See Whonix arm64 forum thread. (Link above already.) It’s unmaintained.

1 Like

On the very issue of using the wrong cowbuilder chroot folder.

Maybe fixed in git master.

Will test later.

1 Like

That very issue is fixed. But more to do. Watch the (non-)progress here: Whonix for arm64 / Raspberry Pi ( RPi ) - duplicate forum topic - #139

1 Like