Zum einen musst Du den Befehl natürlich richtig schreiben, also `\storeRGBofWavelength` und zum anderen gehört sowohl nach diesem Befehl als auch nach `\definecolor` kein Semikolon hin.
Mir Hier ist jetzt auch nicht klar, ob Du nur Spektrallinien zeichnen möchtest oder das gesamte Lichtspektrum. Deshalb ist hier ein Vorschlag für beides:
Spektalllinien und das gesamte Lichtspektrum:
\documentclass[margin=5pt,varwidth]{standalone}
\usepackage{tikz}
\usepackage{colorwav}
\usepackage{etoolbox}
\renewcommand*{\do}[1]{
\storeRGBofWavelength{\Rval}{\Gval}{\Bval}{#1}
\definecolor{wl#1}{rgb}{\Rval, \Gval, \Bval}
}
\docsvlist{380,400,450,500,550,600,650,700,750,780}
\begin{document}
\begin{tikzpicture}
\fill(3.8,0)rectangle(7.8,2);
\foreach[evaluate={\x=\wl/100}]\wl in {400,450,...,750}
\draw[line width=1pt,wl\wl] (\x,0)--(\x,2);
\end{tikzpicture}
\pgfdeclarehorizontalshading{myshadingA}{2cm}{
color(0cm)=(wl380);
color({0.2cm})=(wl400); color(0.7cm)=(wl450);
color(1.2cm)=(wl500); color(1.7cm)=(wl550);
color(2.2cm)=(wl600); color(2.7cm)=(wl650);
color(3.2cm)=(wl700); color(3.7cm)=(wl750);
color(4cm)=(wl780)
}
\tikz\node[inner sep=0pt]{\pgfuseshading{myshadingA}};
\end{document}
![alt text][1]
[1]: http://texwelt.de/wissen/upfiles/tl_spektrum.PNG