Repeating what the error message already tells you: The function toString<unsigned int>(unsigned int const &) is not defined, or its definition is not visible to the linker.
Since this is a function template, you have to ensure that the definition is provided in the header -- the book uses .inl for it, don't use .cpp files. Templates must always be defined in header files if they are used across translation units.