SQL Server Tools Installation – How to Install Without Using Curl

installationlinuxsql serversqlcmd

Attempting to install mssql-tools, I get

$ sudo apt-get install mssql-tools 
Reading package lists... Done
Building dependency tree... 50%
Building dependency tree       
Reading state information... Done
Package mssql-tools is not available, but is referred to by another package.
This may mean that the package is missing, has been obsoleted, or
is only available from another source

E: Package 'mssql-tools' has no installation candidate

So, I go to add the repository,

curl https://packages.microsoft.com/config/ubuntu/16.04/prod.list | sudo tee /etc/apt/sources.list.d/msprod.list

Command 'curl' not found, but can be installed with:

apt install curl

But now I get an error about curl, trying to install curl

$ sudo apt-get install curl
Reading package lists... Done
Building dependency tree       
Reading state information... Done
The following packages were automatically installed and are no longer required:
  libc++1 libc++abi1 libsss-nss-idmap0
Use 'sudo apt autoremove' to remove them.
The following additional packages will be installed:
  libcurl4
The following packages will be REMOVED:
  libcurl3 mssql-server
The following NEW packages will be installed:
  curl libcurl4
0 upgraded, 2 newly installed, 2 to remove and 0 not upgraded.
Need to get 373 kB of archives.
After this operation, 929 MB disk space will be freed.
Do you want to continue? [Y/n] n 
Abort.

So in essence, you need curl to install mssql-tools, and installing curl uninstalls mssql-server because sql-server is build with libcurl3, and /bin/curl on Linux wants libcurl4. What do you do?

Best Answer

14.0.3038.14-2+

New versions of SQL Server (14.0.3038.14-2+) no longer conflicts with libcurl3.

Depends: libunwind8, libnuma1, libc6, adduser, libjemalloc1, libc++1, gdb, debconf, hostname, libssl1.0.0, openssl, python (>= 2.7.0), libgssapi-krb5-2, libsss-nss-idmap0, gawk, sed, libldap-2.4-2, libsasl2-2, libsasl2-modules-gssapi-mit

Versus 14.0.3037.1-2

Depends: libunwind8, libnuma1, libc6, adduser, libjemalloc1, libc++1, gdb, debconf, libcurl3, hostname, libssl1.0.0, openssl, python (>= 2.7.0), libgssapi-krb5-2, libsss-nss-idmap0, gawk, sed, libldap-2.4-2, libsasl2-2, libsasl2-modules-gssapi-mit