Probably you've got an old version of the library, or are mixing a debug and release library, or are mixing C and C++ code with different name mangling.
Those functions are implemented as intrinsics on modern Visual Studio versions. That means when the compiler generates them they're not functions at all, but the code is generated directly inline. Your SOIL library is expecting them to exist as standalone functions, but your compiler has optimized them away so there's nothing to link against.
The best option is to compile the library with settings that match your project. Then the library will have the more optimized version.
Another option is to attempt to get MSVC to generate the functions is to place a #pragma in one of your implementation files. This would possibly do it:
#pragma function(alloca, sqrtf)
The fact that the C++ name mangling isn't present means you might also be mixing it in with extern “C” blocks. It isn't pretty and is usually only managed by library maintainers. That's why the best option is to compile the library with the same settings you are using on your project.