igvShiny Package failing to build in Ubuntu only.

I'm not sure where to start here. This is only happening on the Ubuntu test.

# Workflow derived from https://github.com/r-lib/actions/tree/master/examples
# Need help debugging build failures? Start at https://github.com/r-lib/actions#where-to-find-help
    branches: [main, master, staging, develop]
    branches: [main, master, staging, develop]

name: R-CMD-check

    runs-on: ${{ matrix.config.os }}

    name: ${{ matrix.config.os }} (${{ matrix.config.r }})

      fail-fast: false
          - {os: macOS-latest,   r: '4.1.0'}
          - {os: windows-latest, r: '4.1.0'}
          - {os: ubuntu-20.04, r: '4.1.0', rspm: "https://packagemanager.rstudio.com/cran/__linux__/focal/latest"}

      RSPM: ${{ matrix.config.rspm }}
      GITHUB_PAT: ${{ secrets.GITHUB_TOKEN }}

      - uses: actions/checkout@v2

      - uses: r-lib/actions/setup-pandoc@v1

      - uses: r-lib/actions/setup-r@v1
          r-version: ${{ matrix.config.r }}
          http-user-agent: ${{ matrix.config.http-user-agent }}
          use-public-rspm: true

      - uses: r-lib/actions/setup-r-dependencies@v1
          extra-packages: rcmdcheck

      - uses: r-lib/actions/check-r-package@v1

      - name: Show testthat output
        if: always()
        run: find check -name 'testthat.Rout*' -exec cat '{}' \; || true
        shell: bash

      - name: Upload check results
        if: failure()
        uses: actions/upload-artifact@main
          name: ${{ runner.os }}-r${{ matrix.config.r }}-results
          path: check


Error: Error: <callr_remote_error: Failed to build source package 'igvShiny'>
   in process 9165 
  Failed to build source package 'igvShiny', stdout + stderr:
  OE> * installing *source* package ‘igvShiny’ ...
  OE> staged installation is only possible with locking
  OE> ** using non-staged installation
  OE> ** R
  OE> ** inst
  OE> ** byte-compile and prepare package for lazy loading
  OE> Error in dyn.load(file, DLLpath = DLLpath, ...) : 
  OE>   unable to load shared object '/home/runner/work/iatlas-app/iatlas-app/renv/library/R-4.1/x86_64-pc-linux-gnu/V8/libs/V8.so':
  OE>   libnode.so.64: cannot open shared object file: No such file or directory
  OE> Calls: <Anonymous> ... namespaceImport -> loadNamespace -> library.dynam -> dyn.load
  OE> Execution halted
  OE> ERROR: lazy loading failed for package ‘igvShiny’
  OE> * removing ‘/tmp/RtmpJBCATb/pkg-lib23cd693f40b4/igvShiny’
   Stack trace:
   12. (function (...)  ...
   13. base:::withCallingHandlers(cli_message = function(msg) { ...
   14. get("pkg_install_do_plan", asNamespace("pak"))(...)
   15. pkgdepends::install_package_plan(plan = plan, lib = lib, num_workers = num_ ...
   16. base:::withCallingHandlers({ ...
   17. pkgdepends:::handle_events(state, events)
   18. pkgdepends:::handle_event(state, i)
   19. pkgdepends:::stop_task(state, worker)
   20. pkgdepends:::stop_task_build(state, worker)
   21. base:::throw(new_pkg_build_error("Failed to build source package {pkg}",  ...
   22. base:::signalCondition(cond)
   23. (function (e)  ...
   24. base:::stop(e)
   25. (function (e)  ...
   x Failed to build source package 'igvShiny' 
  Execution halted
  Error: Process completed with exit code 1.

An Ubuntu package is needed for V8, which is needed by your package. Look at the log to see why it was not installed.

Btw. it seems that you are using renv. If you want to install the same package versions as in your renv lock file, then I think you'll need to use the setup-renv action, instead of setup-r-dependencies.

1 Like