Git Product home page Git Product logo

Comments (6)

metaskills avatar metaskills commented on May 17, 2024

Well, if it is a matter of the server compiled gem not being able to find the freetds.conf file, then you may want to use the FREETDS environment variable to point the place it is located. This is described on the FreeTDS site. If however you are not able to pass down the extra needed arguments to even compile the native gem, then I am at a loss. Is this a bundler issue? What do other gems do like mysql2, etc? Can you find out and propose a patch?

Lastly, our project includes a way to build a static gem specific for your env using rake-compiler and miniportile. Check out the read me. You could vendor/install a specific gem for TinyTDS that includes all the reps and just install it on the server. That way there does not even need to be a system FreeTDS installed. So you should have a few alternatives, but I am interested in know what else we can do to make your issues go away. Especially if this has been solved in other places.

from tiny_tds.

metaskills avatar metaskills commented on May 17, 2024

Should I close this ticket?

from tiny_tds.

kendagriff avatar kendagriff commented on May 17, 2024

Is there any way to ask TinyTds what build of FreeTDS it is using? Does TinyTds install its own version of FreeTDS?

I'm mystified, because I've compiled FreeTDS from source, (built with GnuTLS support, which is what I need), however, TinyTds acts like it's not using that version. For example, I can connect via 'tsql', but when I go to the 'rails console', it acts like there is no encryption, and refuses the connections.

For Miniportile, would there be a way to compile a GnuTLS enabled version of FreeTDS into the project?

from tiny_tds.

metaskills avatar metaskills commented on May 17, 2024

There is a simple answer to this, but your question has a few crossed wires and makes it hard to untangle a concise answer. Let me try tho and if you want to, I can always be fund in #rails-sqlserver on irc freenode.

  1. When you install TinyTDS from rubygems, it will search your PATH and look for headers and includes to use. This typically goes along the same method of other native gems. The first found will be the winner. Where that is on your system and your PATH is anyone's guess.

  2. The process above is moot for Windows, since TinyTDS via rubygems is precompiled for their architecture and includes static versions of FreeTDS 0.91 and Libiconv.

  3. If you install from rubygems, you can use the configure args via ruby gems to help find and point the gem install to a particular place to find the freetds headers/includes. See the README.

  4. All of this goes out the window if you are compiling TinyTDS via the project. By default rake-compiler and miniportile will download FreeTDS 0.91 and Libiconv and create a gem that statically links in those libs. This all happens locally to the project and aids in development and testing.

  5. You can bypass that behavior above by using the TINYTDS_SKIP_PORTS which will make TinyTDS compile to your system FreeTDS using the same rules it does when it installs from rubygems.

from tiny_tds.

kendagriff avatar kendagriff commented on May 17, 2024

It worked! I think it was a combination of problems: me trying to use OpenSSL instead of GnuTLS, and not installing with the PATH set properly.

Thanks for the help!

from tiny_tds.

metaskills avatar metaskills commented on May 17, 2024

Cool, glad I could help!

from tiny_tds.

Related Issues (20)

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. 📊📈🎉

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google ❤️ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.