Appendices:FreeTDS

From Wiki_dbSQWare
Jump to navigation Jump to search
The printable version is no longer supported and may have rendering errors. Please update your browser bookmarks and please use the default browser print function instead.

Download and put the sources in /tmp :

# https://www.freetds.org/
# ftp://ftp.freetds.org/pub/freetds/stable/
# https://www.freetds.org/files/stable/freetds-1.4.17.tar.gz

[root@vmsqwarebox ~]# su - mssql
mssql@vmsqwarebox:/home/mssql () $ cd /applis/mssql/
mssql@vmsqwarebox:/applis/mssql () $ tar zxvf /tmp/freetds-1.4.17.tar.gz


Compilation (with openssl, "yum install openssl-devel openssl" or "dnf install openssl-devel openssl") :

mssql@vmsqwarebox:/applis/mssql () $ cd /applis/mssql/freetds-1.4.17

#Command for CentOS 7
mssql@vmsqwarebox:/applis/mssql/freetds-1.4.17 () $ ./configure --prefix=/applis/mssql/freetds --with-openssl=/usr/lib64/openssl/engines

#Command for Rocky Linux 8
mssql@vmsqwarebox:/applis/mssql/freetds-1.4.17 () $ ./configure --prefix=/applis/mssql/freetds --with-openssl=/usr/lib64/engines-1.1

#Command for Linux 9
mssql@vmsqwarebox:/applis/mssql/freetds-1.4.17 () $ ./configure --prefix=/applis/mssql/freetds --with-openssl=/usr/lib64/engines-3


checking for a BSD-compatible install... /usr/bin/install -c
checking whether build environment is sane... yes
checking for a thread-safe mkdir -p... /usr/bin/mkdir -p
checking for gawk... gawk
checking whether make sets $(MAKE)... yes
...

mssql@vmsqwarebox:/applis/mssql/freetds-1.4.17 () $ make
Making all in include
make[1]: Entering directory `/applis/mssql/freetds-1.4.17/include'
make  all-recursive
make[2]: Entering directory `/applis/mssql/freetds-1.4.17/include'
Making all in freetds
make[3]: Entering directory `/applis/mssql/freetds-1.4.17/include/freetds'

...

mssql@vmsqwarebox:/applis/mssql/freetds-1.4.17 () $ make install
Making install in include
make[1]: Entering directory `/applis/mssql/freetds-1.4.17/include'
Making install in freetds
make[2]: Entering directory `/applis/mssql/freetds-1.4.17/include/freetds'

...


Cleanup :

$ rm -rf /applis/mssql/freetds-1.4.17
$ rm -f /tmp/freetds-1.4.17.tar.gz


Links lib 64bits :

$ cd /applis/mssql/freetds
$ ln -s lib lib64
$ ls -l |grep lib
drwxr-xr-x 2 mssql dba 4096 Nov 23 09:38 lib
lrwxrwxrwx 1 mssql dba    3 Nov 23 09:41 lib64 -> lib

Link to the automatically generated freetds.conf :

cd /applis/mssql/freetds/etc
mv freetds.conf freetds.conf.org
ln -s /home/dbsqware/dbSQWare/SQWareCentral/etc_cust/freetds_dbsqware.conf freetds.conf


Changes for ~mssql/.bash_profile :

# env FreeTDS (pour connexion MsSql)
export PATH=/applis/mssql/freetds/bin:$PATH
export LD_LIBRARY_PATH=/applis/mssql/freetds/lib:$LD_LIBRARY_PATH

lvsqw_InstanceParam=$(echo "$1"|tr [a-z] [A-Z])

# env dbSQWare for mssql, must stay at end of .bash_profile
export gvsqw_Env='PRD'
export gvsqw_MsqBin=$HOME/SQWareProduction/mssql/bin
lvsqw_IsTerminal=$(tty 2>&1 >/dev/null;echo $?)
if [ "$lvsqw_IsTerminal" = "0" ] && [ -r $gvsqw_MsqBin/../etc/.profile_confort ]
then
. $gvsqw_MsqBin/../etc/.profile_confort
fi