Missing jszip.min.js when generating report (MultiQC v1.18)

I am encountering an issue when running MultiQC on FastQC reports. The report is generated, but I receive the following error:

Could not include file ‘assets/js/packages/jszip.min.js’: [Errno 2] No such file or directory: ‘/tmp/tmpXXXX/assets/js/packages/jszip.min.js

MultiQC output:

Report : multiqc_report.html Data : multiqc_data MultiQC complete

Details:

MultiQC version: v1.18

Installed using: sudo install (system-wide installation)

OS: Ubuntu (Linux)

Running inside: standard terminal (not conda/venv)

The HTML report is created, but I am concerned that some assets may not be properly embedded.

Questions

?Is this caused by an incomplete installation

?Is this related to system-wide installation with sudo

?Would reinstalling inside a virtual environment (venv or conda) resolve the issue

Thank you for your help.

Hi @mahsa

You’re making this easy for me with the questions at the end!

  1. Yes
  2. Possibly
  3. Very likely

There’s definitely something weird going on with your installation, I can think of no reason why you’d have asset files within your /tmp directory. And using sudo is generally a big no-no.

While you’re at it, I’d recommend upgrading to the latest version, version 1.18 is 2.5 years old now.

Hope that helps!

Thank you very much for your clarification and for pointing out the installation issue. I really appreciate your help.

I have one additional question. When I tried to install MultiQC using pip install multiqc, I received the following error:

error: externally-managed-environment This environment is externally managed. 

It suggests that the Python installation is managed by the system (Debian/Ubuntu) and recommends using apt, a virtual environment, or --break-system-packages.

Could you please clarify why this happens when using pip?
Is this related to PEP 668 restrictions in newer Ubuntu/Debian versions?

Hi @mahsa,

There are many answers to this question. As you said, trying to install with your system Python is almost always problematic and you should definitely not do that.

I would instead try to use any of the following options:

  • Docker / Singularity (if running within a pipeline)
  • Astral’s uv (uv tool install multiqc)
  • Conda (miniforge)
  • Python virtual environments

In all cases, MultiQC won’t be trying to install into / use your system version of Python and you shouldn’t get these conflicts.

Phil

This topic was automatically closed 7 days after the last reply. New replies are no longer allowed.