TeX - LaTeX Stack Exchange is a question and answer site for users of TeX, LaTeX, ConTeXt, and related typesetting systems. Join them; it only takes a minute:

Sign up
Here's how it works:
  1. Anybody can ask a question
  2. Anybody can answer
  3. The best answers are voted up and rise to the top

My real problem is that I am trying to use a package which depends on siunitx, and it complains on compiling with the following error:

! Package siunitx Error: Support package expl3 too old.. 
See the siunitx package documentation for explanation.
Type H <return> for immediate help. ... l.29 }

I would really rather install the package using a package manager. I'm on Gentoo, which has a nice little tool called g-ctan that creates distro packages from packages on CTAN.

expl3 isn't in the package database, even though it can be found on CTAN.

It says that it is a wrapper for experimental LaTeX 3... the package name is l3kernel. Eek! Experimental!

Is it safe for me to install l3kernel? Is it going to break my LaTeX installation?

share|improve this question
up vote 18 down vote accepted

In common with a number of other Linux distributions, Gentoo probably uses a rather old version of TeX Live (I would assume TL2009, but cannot be sure). You will therefore need to obtain the necessary support files from CTAN and install them locally.

The LaTeX3 support material is currently split into three parts

You will need l3kernel and l3packages to use siunitx. The links above are to the ready-to-install TDS-style .zip files. Download these, and unzip them inside your local TeX tree (usually ~/texmf), to create a structure. You should not need to run texhash for a local installation, unless Gentoo includes a really old TeX Live or if your ~ folder is not on the 'local' PC.

The 'experimental' nature of the code has been clarified a lot in the past couple of years. The l3kernel and l3packages code is stable for general use, while l3experimental may be more variable. However, none of them will have any impact on other LaTeX material (unless it uses LaTeX3).

share|improve this answer
It might be worth mentioning that if (like me) you put these in the regular TeX tree, the renaming/reorganization of the l3* packages (in 2010 or 2011, I think) required purging the tree of the older files because it led to package clashes. – jon Apr 25 '12 at 17:40
Yes, that's correct. Take a look at this question – Brent.Longborough Apr 25 '12 at 19:13
+1 for the links! – Johannes Bauer Jul 16 '14 at 13:21
I'm getting a new error after loading these packages: "! LaTeX Error: `cntformats.sty' not found." Anyone encountered this issue. I was just trying to use a new package to make a quick change - that was 2.5h ago. Now I'm losing it! :S – Rax Adaam Sep 20 '14 at 15:20

If you are using MiKTeX 2.9, try updating it. On Windows:

Start > Miktex 2.9 > Maintenance (Admin ) > Update (Admin)

That solved it for me. I found this suggestions after crawling the web for hours. So, I hope it helps.

share|improve this answer
it should (help, that is): cntformats is present in current miktex; if it doesn’t, ... i dunno. – wasteofspace Nov 30 '14 at 0:07

On Windows and for the case of MikTeX, it is possible that there are two installation: One under the user space and one for all users.

One solution could be that the user deletes all contents at


and then tries to compile their LaTeX file that will ask to re-installing all required packages.

share|improve this answer

Your Answer


By posting your answer, you agree to the privacy policy and terms of service.

Not the answer you're looking for? Browse other questions tagged or ask your own question.