According to the Lua Wiki, if Lua 5.1 or later is compiled as C++, it will use C++ exceptions. Since Lua is a C library it only references CC in the makefile. So, my idea was to redefine CC as "g++" so I don't have to modify the makefile.
make generic CC="g++"
I was able to build Lua without any problems. However, now when I link my C++ application to the Lua (static) library I receive undefined reference errors for many Lua functions (lua_checklstring, lua_pushinteger, etc).
When I build Lua using using gcc my application links successfully.
make generic CC="gcc"
Am I compiling Lua for C++ incorrectly? I assume I need to use g++ somehow since the Lua source code contains preprocessor checking for cplusplus to determine if C++ exceptions should be enabled.