Yes, I do have! But, let me upload here the latest code that I have built. I haven't updated the SVN as I cannot totally get it pushed. So, below is the attachment.
There is one tricky thing for you. This gem is a Driver for CUBRID Database. Which means that you can install it (make and then install) if you have CUBRID installed, as there is a C API which it links to and the header files in its include directory.
So, if you wish to test it directly, you are welcome to download the CUBRID installer (http://www.cubrid.org/downloads). If not, I would be happy if you could point me to the reason why the gem cannot get installed properly.
I found the reason. Actually, by default Ubuntu is configured sudoer setting env_reset to ON, which means that when running sudo all non-system (safe) variables, including user paths, will be reset, that is cleared off. Only system variables and their save values will remain. There are several solutions:
To set that env_reset to OFF, manually.
Manually, set the necessary paths to the safe_path.
Manually, add -E flag right after the sudo command and before the rest command "gem install....".
Manually, create alias for sudo so that it always runs -E or safe_path together.
-E was exactly what I did and it worked for me just fine. However, since I am building a gem for global users and don't want to make every one of them to type -E after the sudo in order to get my gem installed.
I looked at other gems how they solve this problem, as I can install them without -E. For instance, I have attached the sample code found in mysql's extconf.rb file, which somehow deals with this problem as it also extracts ENV['PATH'] variable, just like me. But when installing mysql, I do not need to type -E.
I saw in mysql's code it adds the -E flag to the cpp_command and prints it out to the "system", but somehow I cannot replicate it.
Could you please look at the code and point me to the possible solution? I would be unbelievable grateful for your help! There should be some way to set this -E in runtime as if I added it manually.