Bonjour,
je souhaite attaquer nativement une base SQL Server, au lieu d’un driver
générique comme ODBC.
Il semble qu’il suffit d’utiliser le driver Sybase, il fonctionne très
bien
avec PHP (php5-sybase)
Je vois dans Rails un adapter Sybase :
/usr/lib/ruby/gems/1.8/gems/activerecord-1.14.2
/lib/active_record/connection_adapters/sybase_adapter.rb
Cependant il ne fonctionne pas tel quel. Il fait une inclusion du
fichier :
require ‘sybsql’
D’après mes recherches il s’agit du driver Ruby pour Sybase :
http://raa.ruby-lang.org/project/sybase-ctlib
Ce driver nécessite les sources du client Sybase. Pour Linux il suffit
d’installer le paquet freetds-dev.
j’ai modifié le extconf.rb dans sybct-ruby-0.2.8 pour qu’il créé un
Makefile
utilisant les sources de freetds :
sybase = “/usr/include”
$CFLAGS = “-g -Wall -I#{sybase}/”
$LDFLAGS = " -L#{sybase}/"
Le problème est lors du make, il ne trouve pas les librairies en
question :
fred@flogier:~/sources/sybct-ruby-0.2.8$ make
gcc -fPIC -g -Wall -I/usr/include/ -I. -I/usr/lib/ruby/1.8/i486-linux
-I/usr/lib/ruby/1.8/i486-linux -I. -c sybct.c
sybct.c: Dans la fonction «raise_timeout_cb» :
sybct.c:151: erreur: «CS_FIRST_CHUNK» undeclared (first use in this
function)
sybct.c:151: erreur: (Chaque identificateur non déclaré est rapporté une
seule fois
sybct.c:151: erreur: pour chaque fonction dans laquelle il apparaît.)
sybct.c:151: erreur: «CS_LAST_CHUNK» undeclared (first use in this
function)
Quelqu’un aurait déjà compilé ce driver ?