2

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?

2

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

0

Wget

Or, instead of curl you can use wget instead,

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

Don't forget to sudo apt-get update

If they packaged for the distro rather than throwing packages for all distros in a directory named xenial, you could use apt-add-ppa to greatly simplify this.

Your Answer

By clicking “Post Your Answer”, you agree to our terms of service, privacy policy and cookie policy

Not the answer you're looking for? Browse other questions tagged or ask your own question.