Unable to load interface VEngineCvar003 from bin/engine_i686.so

hlds@ahl:~/server$ ./srcds_run
Auto detecting CPU
Using SSE2 Optimised binary.
Server will auto-restart if there is a crash.
AppFramework : Unable to load module bin/engine_i686.so!
Unable to load interface VEngineCvar003 from bin/engine_i686.so Mon Dec 21 23:25:29 PST 2009: Server Quit

hlds@ahl:~/server$ ls -l engine_i686.so bin/engine_i686.so 
-rw-r--r-- 1 hlds hlds 5227386 2009-12-21 23:09 bin/engine_i686.so
-rw-r--r-- 1 hlds hlds  964376 2009-08-06 20:27 engine_i686.so

Source and GoldSrc libraries, respectively.

hlds@ahl:~/server$ grep LD_LIBRARY srcds_run 
export LD_LIBRARY_PATH=".:bin:$LD_LIBRARY_PATH"

hlds@ahl:~/server$ export LD_LIBRARY_PATH=.:bin
hlds@ahl:~/server$ ./srcds_amd 
AppFramework : Unable to load module bin/engine_amd.so!
Unable to load interface VEngineCvar003 from bin/engine_amd.so

hlds@ahl:~/server$ export LD_LIBRARY_PATH=bin
hlds@ahl:~/server$ ./srcds_amd 
Warning: falling back to auto detection of vproject directory.
Unable to find gameinfo.txt. Solutions:

1. Read http://www.valve-erc.com/srcsdk/faq.html#NoGameDir
2. Run vconfig to specify which game you're working on.
3. Add -game <path> on the command line where <path> is the directory that gameinfo.txt is in.
Unable to find gameinfo.txt. Solutions:

1. Read http://www.valve-erc.com/srcsdk/faq.html#NoGameDir
2. Run vconfig to specify which game you're working on.
3. Add -game <path> on the command line where <path> is the directory that gameinfo.txt is in.

Conclusion

Avoid srcds_run. You will have a less stressful time reimplementing it yourself than expecting it to work.