Repository: rucio/rucio

Issue:
New M2Crypto 0.33 release (Dependency of fts3 REST) fails to install on CC7
Motivation
----------

Today (2019/04/29) I didn't manage to build the demo anymore due to some problem with rucio builds and the current versions of libraries in pip. Specifically, it seems M2Crypto fails to builld
```
    error: command 'gcc' failed with exit status 1
    ----------------------------------------
[0m[91mERROR: Command "/usr/bin/python2 -u -c 'import setuptools, tokenize;__file__='"'"'/tmp/pip-install-EOjVou/M2Crypto/setup.py'"'"';f=getattr(tokenize, '"'"'open'"'"', open)(__file__);code=f.read().replace('"'"'\r\n'"'"', '"'"'\n'"'"');f.close();exec(compile(code, __file__, '"'"'exec'"'"'))' install --record /tmp/pip-record-3foVk_/install-record.txt --single-version-externally-managed --compile" failed with error code 1 in /tmp/pip-install-EOjVou/M2Crypto/
[0mService 'rucio' failed to build: The command '/bin/sh -c pip install rucio rucio-webui' returned a non-zero code: 1
```

I attach the full output log of 

`sudo docker-compose --file etc/docker/demo/docker-compose.yml up -d`

```
Building rucio
Step 1/39 : FROM rucio/rucio-systemd-cc7
 ---> c221fab87755
Step 2/39 : ADD ca.repo /etc/yum.repos.d/ca.repo
 ---> Using cache
 ---> 34f6dd95d578
Step 3/39 : RUN pip install --upgrade pip
 ---> Using cache
 ---> f14e7dcc03e5
Step 4/39 : RUN pip install --upgrade setuptools
 ---> Using cache
 ---> d1aa1298bfce
Step 5/39 : RUN pip install --ignore-installed ipaddress
 ---> Using cache
 ---> 843a4038c325
Step 6/39 : RUN pip install rucio rucio-webui
 ---> Running in 0f266cde29bb
[91mDEPRECATION: Python 2.7 will reach the end of its life on January 1st, 2020. Please upgrade your Python as Python 2.7 won't be maintained after that date. A future version of pip will drop support for Python 2.7.
[0mCollecting rucio
  Downloading https://files.pythonhosted.org/packages/14/6f/6f4a148d5c8c354b8a8d1966ad04eff1381a4b8cd8d46fe741ea4ece06f7/rucio-1.19.6.tar.gz (5.7MB)
Collecting rucio-webui
  Downloading https://files.pythonhosted.org/packages/01/73/a35bad2b59474f8977d0a33896642e685df2c27762661de0a843b1b58f68/rucio-webui-1.19.6.tar.gz (460kB)
Collecting SQLAlchemy==1.2.16 (from rucio)
  Downloading https://files.pythonhosted.org/packages/05/d2/17fb194f4ae83577258ea1d81da3d5d5643f4957fa14fd0261d78d648bf5/SQLAlchemy-1.2.16.tar.gz (5.7MB)
Collecting alembic==1.0.6 (from rucio)
  Downloading https://files.pythonhosted.org/packages/50/7a/17bc17b3f5b01ebd3af38d71a15baa33beb241ab280b6ad0977ae24ec208/alembic-1.0.6.tar.gz (1.0MB)
Collecting Mako==1.0.7 (from rucio)
  Downloading https://files.pythonhosted.org/packages/eb/f3/67579bb486517c0d49547f9697e36582cd19dafb5df9e687ed8e22de57fa/Mako-1.0.7.tar.gz (564kB)
Collecting python-editor==1.0.3 (from rucio)
  Downloading https://files.pythonhosted.org/packages/65/1e/adf6e000ea5dc909aa420352d6ba37f16434c8a3c2fa030445411a1ed545/python-editor-1.0.3.tar.gz
Collecting flup==1.0.3 (from rucio)
  Downloading https://files.pythonhosted.org/packages/bb/b5/26cc8f7baf0ddebd3e61a354a2bcc692cfe8005123c37ee3d8507c4c7511/flup-1.0.3.tar.gz (52kB)
Collecting web.py==0.39 (from rucio)
  Downloading https://files.pythonhosted.org/packages/fc/58/21649fc1849b1f688f3d42e25e79615cc573469ea57eaa9e6af70b1e3b87/web.py-0.39.tar.gz (93kB)
Collecting python-memcached==1.59 (from rucio)
  Downloading https://files.pythonhosted.org/packages/f5/90/19d3908048f70c120ec66a39e61b92c253e834e6e895cd104ce5e46cbe53/python_memcached-1.59-py2.py3-none-any.whl
Collecting jsonschema==2.6.0 (from rucio)
  Downloading https://files.pythonhosted.org/packages/77/de/47e35a97b2b05c2fadbec67d44cfcdcd09b8086951b331d82de90d2912da/jsonschema-2.6.0-py2.py3-none-any.whl
Collecting python-dateutil==2.7.5 (from rucio)
  Downloading https://files.pythonhosted.org/packages/74/68/d87d9b36af36f44254a8d512cbfc48369103a3b9e474be9bdfe536abfc45/python_dateutil-2.7.5-py2.py3-none-any.whl (225kB)
Collecting pysftp==0.2.9 (from rucio)
  Downloading https://files.pythonhosted.org/packages/36/60/45f30390a38b1f92e0a8cf4de178cd7c2bc3f874c85430e40ccf99df8fe7/pysftp-0.2.9.tar.gz
Collecting pycrypto==2.6.1 (from rucio)
  Downloading https://files.pythonhosted.org/packages/60/db/645aa9af249f059cc3a368b118de33889219e0362141e75d4eaf6f80f163/pycrypto-2.6.1.tar.gz (446kB)
Collecting s3cmd==2.0.2 (from rucio)
  Downloading https://files.pythonhosted.org/packages/3a/f5/c70bfb80817c9d81b472e077e390d8c97abe130c9e86b61307a1d275532c/s3cmd-2.0.2.tar.gz (124kB)
Collecting stomp.py==4.1.21 (from rucio)
  Downloading https://files.pythonhosted.org/packages/44/eb/4c66c2d91dd10a99650fd679206632ca0190d482982063975abfc5dc83f4/stomp.py-4.1.21.tar.gz (49kB)
Collecting pygeoip==0.3.2 (from rucio)
  Downloading https://files.pythonhosted.org/packages/f2/48/a3ce59694fa05605fee44273fe2d8b7e9df0d808cdf3914de1771b8986c4/pygeoip-0.3.2-py2.py3-none-any.whl
Collecting geoip2==2.9.0 (from rucio)
  Downloading https://files.pythonhosted.org/packages/ed/17/bcbb7c0849492e218767e658c66fbf9e3420b6301072371547c4f7192d48/geoip2-2.9.0-py2.py3-none-any.whl
Requirement already satisfied: ipaddress==1.0.22 in /usr/lib/python2.7/site-packages (from rucio) (1.0.22)
Collecting maxminddb==1.4.1 (from rucio)
  Downloading https://files.pythonhosted.org/packages/83/35/6dc423e0ff354c326849d6d878d104b44be7eec491dcf26787ab3593cd81/maxminddb-1.4.1.tar.gz (264kB)
Collecting cffi==1.11.5 (from rucio)
  Downloading https://files.pythonhosted.org/packages/14/dd/3e7a1e1280e7d767bd3fa15791759c91ec19058ebe31217fe66f3e9a8c49/cffi-1.11.5-cp27-cp27mu-manylinux1_x86_64.whl (407kB)
Collecting pycparser==2.19 (from rucio)
  Downloading https://files.pythonhosted.org/packages/68/9e/49196946aee219aead1290e00d1e7fdeab8567783e83e1b9ab5585e6206a/pycparser-2.19.tar.gz (158kB)
Collecting gcloud==0.18.3 (from rucio)
  Downloading https://files.pythonhosted.org/packages/11/ab/d0cee58db2d8445c26e6f5db25d9b1f1aa14a3ab30eea8ce77ae808d10ef/gcloud-0.18.3.tar.gz (454kB)
Collecting googleapis-common-protos==1.5.6 (from rucio)
  Downloading https://files.pythonhosted.org/packages/61/29/1549f61917eadd11650e42b78b4afcfe9cb467157af4510ab8cb59535f14/googleapis-common-protos-1.5.6.tar.gz
Collecting httplib2==0.12.0 (from rucio)
  Downloading https://files.pythonhosted.org/packages/ce/ed/803905d670b52fa0edfdd135337e545b4496c2ab3a222f1449b7256eb99f/httplib2-0.12.0.tar.gz (218kB)
Collecting pyOpenSSL==19.0.0 (from rucio)
  Downloading https://files.pythonhosted.org/packages/01/c8/ceb170d81bd3941cbeb9940fc6cc2ef2ca4288d0ca8929ea4db5905d904d/pyOpenSSL-19.0.0-py2.py3-none-any.whl (53kB)
Collecting cryptography==2.4.2 (from rucio)
  Downloading https://files.pythonhosted.org/packages/7f/ba/383b51cc26e3141c689ce988814385c7659f5ba01c4b5f2de38233010b5f/cryptography-2.4.2-cp27-cp27mu-manylinux1_x86_64.whl (2.1MB)
Collecting oauth2client==4.1.3 (from rucio)
  Downloading https://files.pythonhosted.org/packages/95/a9/4f25a14d23f0786b64875b91784607c2277eff25d48f915e39ff0cff505a/oauth2client-4.1.3-py2.py3-none-any.whl (98kB)
Collecting protobuf==3.6.1 (from rucio)
  Downloading https://files.pythonhosted.org/packages/b8/c2/b7f587c0aaf8bf2201405e8162323037fe8d17aa21d3c7dda811b8d01469/protobuf-3.6.1-cp27-cp27mu-manylinux1_x86_64.whl (1.1MB)
Collecting grpcio==1.18.0 (from rucio)
  Downloading https://files.pythonhosted.org/packages/ab/13/b4f3d8551e0663ad1a6ba8539057ecd0715bcdf3f2eea235f67b248f37cb/grpcio-1.18.0-cp27-cp27mu-manylinux1_x86_64.whl (10.4MB)
Collecting enum34==1.1.6 (from rucio)
  Downloading https://files.pythonhosted.org/packages/c5/db/e56e6b4bbac7c4a06de1c50de6fe1ef3810018ae11732a50f15f62c7d050/enum34-1.1.6-py2-none-any.whl
Collecting pyasn1==0.4.5 (from rucio)
  Downloading https://files.pythonhosted.org/packages/7b/7c/c9386b82a25115cccf1903441bba3cbadcfae7b678a20167347fa8ded34c/pyasn1-0.4.5-py2.py3-none-any.whl (73kB)
Collecting pyasn1-modules==0.2.3 (from rucio)
  Downloading https://files.pythonhosted.org/packages/59/84/339c2de112d7448d7d4c500b8016783d9eac8981f89ec1d58fdd4685d97f/pyasn1_modules-0.2.3-py2.py3-none-any.whl (65kB)
Collecting rsa==4.0 (from rucio)
  Downloading https://files.pythonhosted.org/packages/02/e5/38518af393f7c214357079ce67a317307936896e961e35450b70fad2a9cf/rsa-4.0-py2.py3-none-any.whl
Collecting retrying==1.3.3 (from rucio)
  Downloading https://files.pythonhosted.org/packages/44/ef/beae4b4ef80902f22e3af073397f079c96969c69b2c7d52a57ea9ae61c9d/retrying-1.3.3.tar.gz
Collecting redis==3.0.1 (from rucio)
  Downloading https://files.pythonhosted.org/packages/f5/00/5253aff5e747faf10d8ceb35fb5569b848cde2fdc13685d42fcf63118bbc/redis-3.0.1-py2.py3-none-any.whl (61kB)
Collecting numpy==1.14.2 (from rucio)
  Downloading https://files.pythonhosted.org/packages/76/4d/418dda252cf92bad00ab82d6b2a856e7843b47a5c2f084aed34b14b67d64/numpy-1.14.2-cp27-cp27mu-manylinux1_x86_64.whl (12.1MB)
Collecting paramiko==2.4.2 (from rucio)
  Downloading https://files.pythonhosted.org/packages/cf/ae/94e70d49044ccc234bfdba20114fa947d7ba6eb68a2e452d89b920e62227/paramiko-2.4.2-py2.py3-none-any.whl (193kB)
Collecting Flask==1.0.2 (from rucio)
  Downloading https://files.pythonhosted.org/packages/7f/e7/08578774ed4536d3242b14dacb4696386634607af824ea997202cd0edb4b/Flask-1.0.2-py2.py3-none-any.whl (91kB)
Collecting idna==2.7 (from rucio)
  Downloading https://files.pythonhosted.org/packages/4b/2a/0276479a4b3caeb8a8c1af2f8e4355746a97fab05a372e4a2c6a6b876165/idna-2.7-py2.py3-none-any.whl (58kB)
Collecting fts3-rest-API==3.7.1 (from rucio)
  Downloading https://files.pythonhosted.org/packages/e1/4e/bc06cf96a9871b1b465ec0438a1cd32395b8709490b7fd0b4c063b018f1a/fts3-rest-API-3.7.1.tar.gz
Collecting MyProxyClient==2.1.0 (from rucio)
  Downloading https://files.pythonhosted.org/packages/85/c4/172e5516e7e7d7338f6b6026a604f9635ba4bea6e9ed5097354b7722d714/MyProxyClient-2.1.0.tar.gz
Collecting setuptools<37.0.0,>=36.8.0 (from rucio)
  Downloading https://files.pythonhosted.org/packages/27/f6/fabfc9c71c9b1b99d2ec4768a6e1f73b2e924f51c89d436302b8c2a25459/setuptools-36.8.0-py2.py3-none-any.whl (482kB)
Collecting argcomplete<1.10.0,>=1.9.0 (from rucio)
  Downloading https://files.pythonhosted.org/packages/2e/22/374114e3e3692002f6aad1038faa3ca062668942da9c43f25c04100cdfb1/argcomplete-1.9.5-py2.py3-none-any.whl
Collecting requests<2.20.0,>=2.6.0 (from rucio)
  Downloading https://files.pythonhosted.org/packages/65/47/7e02164a2a3db50ed6d8a6ab1d6d60b69c4c3fdf57a284257925dfc12bda/requests-2.19.1-py2.py3-none-any.whl (91kB)
Collecting urllib3<1.24,>=1.23 (from rucio)
  Downloading https://files.pythonhosted.org/packages/bd/c9/6fdd990019071a4a32a5e7cb78a1d92c53851ef4f56f62a3486e6a7d8ffb/urllib3-1.23-py2.py3-none-any.whl (133kB)
Collecting dogpile.cache<0.7.0,>=0.6.5 (from rucio)
  Downloading https://files.pythonhosted.org/packages/73/bf/0cbed594e4f0f9360bfb98e7276131bf32e1af1d15e6c11a9dd8bd93a12f/dogpile.cache-0.6.8.tar.gz (323kB)
Collecting nose>=1.3.7 (from rucio)
  Downloading https://files.pythonhosted.org/packages/99/4f/13fb671119e65c4dce97c60e67d3fd9e6f7f809f2b307e2611f4701205cb/nose-1.3.7-py2-none-any.whl (154kB)
Collecting tabulate<0.9.0,>=0.8.0 (from rucio)
  Downloading https://files.pythonhosted.org/packages/c2/fd/202954b3f0eb896c53b7b6f07390851b1fd2ca84aa95880d7ae4f434c4ac/tabulate-0.8.3.tar.gz (46kB)
Collecting progressbar2<3.39.0,>=3.37.1 (from rucio)
  Downloading https://files.pythonhosted.org/packages/4f/6f/acb2dd76f2c77527584bd3a4c2509782bb35c481c610521fc3656de5a9e0/progressbar2-3.38.0-py2.py3-none-any.whl
Collecting bz2file<0.99,>=0.98 (from rucio)
  Downloading https://files.pythonhosted.org/packages/61/39/122222b5e85cd41c391b68a99ee296584b2a2d1d233e7ee32b4532384f2d/bz2file-0.98.tar.gz
Collecting python-magic<0.5.0,>=0.4.15 (from rucio)
  Downloading https://files.pythonhosted.org/packages/42/a1/76d30c79992e3750dac6790ce16f056f870d368ba142f83f75f694d93001/python_magic-0.4.15-py2.py3-none-any.whl
Collecting six>=1.11.0 (from rucio)
  Downloading https://files.pythonhosted.org/packages/73/fb/00a976f728d0d1fecfe898238ce23f502a721c0ac0ecfedb80e0d88c64e9/six-1.12.0-py2.py3-none-any.whl
Collecting pystatsd==0.1.10 (from rucio)
  Downloading https://files.pythonhosted.org/packages/b9/7f/bbe2fe1dae9455ffe1611e1092d431071e06e3fdcb1ba117cb6a82ba48ff/pystatsd-0.1.10.tar.gz
Collecting functools32==3.2.3.post2 (from rucio)
  Downloading https://files.pythonhosted.org/packages/c5/60/6ac26ad05857c601308d8fb9e87fa36d0ebf889423f47c3502ef034365db/functools32-3.2.3-2.tar.gz
Collecting futures>=3.2.0 (from rucio)
  Downloading https://files.pythonhosted.org/packages/2d/99/b2c4e9d5a30f6471e410a146232b4118e697fa3ffc06d6a65efde84debd0/futures-3.2.0-py2-none-any.whl
Collecting boto>=2.48.0 (from rucio)
  Downloading https://files.pythonhosted.org/packages/23/10/c0b78c27298029e4454a472a1919bde20cb182dab1662cec7f2ca1dcc523/boto-2.49.0-py2.py3-none-any.whl (1.4MB)
Collecting MarkupSafe>=0.9.2 (from Mako==1.0.7->rucio)
  Downloading https://files.pythonhosted.org/packages/fb/40/f3adb7cf24a8012813c5edb20329eb22d5d8e2a0ecf73d21d6b85865da11/MarkupSafe-1.1.1-cp27-cp27mu-manylinux1_x86_64.whl
Collecting docopt>=0.6.2 (from stomp.py==4.1.21->rucio)
  Downloading https://files.pythonhosted.org/packages/a2/55/8f8cab2afd404cf578136ef2cc5dfb50baa1761b68c9da1fb1e4eed343c9/docopt-0.6.2.tar.gz
Collecting google-gax<0.13dev,>=0.12.3 (from gcloud==0.18.3->rucio)
  Downloading https://files.pythonhosted.org/packages/49/77/46fd88558e28768b1ce3bbb19c61f0b596f8cafbcc2356f236a6a6fa03ac/google-gax-0.12.5.tar.gz
Collecting gax-google-pubsub-v1<0.9dev,>=0.8.0 (from gcloud==0.18.3->rucio)
  Downloading https://files.pythonhosted.org/packages/7c/b4/183ca4e47f2d2d2f07040be305bf985b0dae7923f7c2df0b261975e46778/gax-google-pubsub-v1-0.8.3.tar.gz
Collecting grpc-google-pubsub-v1<0.9dev,>=0.8.0 (from gcloud==0.18.3->rucio)
  Downloading https://files.pythonhosted.org/packages/b7/98/b77bc4ace41b1804a2c124bda79f05b39e51a5b32904cb8840f61d2fe3c4/grpc-google-pubsub-v1-0.8.1.tar.gz
Collecting gax-google-logging-v2<0.9dev,>=0.8.0 (from gcloud==0.18.3->rucio)
  Downloading https://files.pythonhosted.org/packages/a9/fc/7c36d12946385c7bbf2e74140d2b7836ebc73f9e038b2bbf68a771d95e61/gax-google-logging-v2-0.8.3.tar.gz
Collecting grpc-google-logging-v2<0.9dev,>=0.8.0 (from gcloud==0.18.3->rucio)
  Downloading https://files.pythonhosted.org/packages/bc/41/898cedce619b553fe3a54d666a62e70119651befe05b22aa55476ac13757/grpc-google-logging-v2-0.8.1.tar.gz
Collecting asn1crypto>=0.21.0 (from cryptography==2.4.2->rucio)
  Downloading https://files.pythonhosted.org/packages/ea/cd/35485615f45f30a510576f1a56d1e0a7ad7bd8ab5ed7cdc600ef7cd06222/asn1crypto-0.24.0-py2.py3-none-any.whl (101kB)
Collecting pynacl>=1.0.1 (from paramiko==2.4.2->rucio)
  Downloading https://files.pythonhosted.org/packages/b3/25/e605574f24948a8a53b497744e93f061eb1dbe7c44b6465fc1c172d591aa/PyNaCl-1.3.0-cp27-cp27mu-manylinux1_x86_64.whl (762kB)
Collecting bcrypt>=3.1.3 (from paramiko==2.4.2->rucio)
  Downloading https://files.pythonhosted.org/packages/50/d8/95f7cb04344033bf9d1a12c5a7969a15999b6a710fbe1969c517333d9a62/bcrypt-3.1.6-cp27-cp27mu-manylinux1_x86_64.whl (59kB)
Collecting Werkzeug>=0.14 (from Flask==1.0.2->rucio)
  Downloading https://files.pythonhosted.org/packages/18/79/84f02539cc181cdbf5ff5a41b9f52cae870b6f632767e43ba6ac70132e92/Werkzeug-0.15.2-py2.py3-none-any.whl (328kB)
Collecting click>=5.1 (from Flask==1.0.2->rucio)
  Downloading https://files.pythonhosted.org/packages/fa/37/45185cb5abbc30d7257104c434fe0b07e5a195a6847506c074527aa599ec/Click-7.0-py2.py3-none-any.whl (81kB)
Collecting itsdangerous>=0.24 (from Flask==1.0.2->rucio)
  Downloading https://files.pythonhosted.org/packages/76/ae/44b03b253d6fade317f32c24d100b3b35c2239807046a4c953c7b89fa49e/itsdangerous-1.1.0-py2.py3-none-any.whl
Collecting Jinja2>=2.10 (from Flask==1.0.2->rucio)
  Downloading https://files.pythonhosted.org/packages/1d/e7/fd8b501e7a6dfe492a433deb7b9d833d39ca74916fa8bc63dd1a4947a671/Jinja2-2.10.1-py2.py3-none-any.whl (124kB)
Collecting M2Crypto>=0.16 (from fts3-rest-API==3.7.1->rucio)
  Using cached https://files.pythonhosted.org/packages/52/e3/85f7ad64cd50b4c361b6533baeaa4d3919087993f24a93b34ae841a42628/M2Crypto-0.33.0.tar.gz
Requirement already satisfied: pycurl>=7.19 in /usr/lib64/python2.7/site-packages (from fts3-rest-API==3.7.1->rucio) (7.19.0)
Collecting chardet<3.1.0,>=3.0.2 (from requests<2.20.0,>=2.6.0->rucio)
  Downloading https://files.pythonhosted.org/packages/bc/a9/01ffebfb562e4274b6487b4bb1ddec7ca55ec7510b22e4c51f14098443b8/chardet-3.0.4-py2.py3-none-any.whl (133kB)
Collecting certifi>=2017.4.17 (from requests<2.20.0,>=2.6.0->rucio)
  Downloading https://files.pythonhosted.org/packages/60/75/f692a584e85b7eaba0e03827b3d51f45f571c2e793dd731e598828d380aa/certifi-2019.3.9-py2.py3-none-any.whl (158kB)
Collecting python-utils>=2.3.0 (from progressbar2<3.39.0,>=3.37.1->rucio)
  Downloading https://files.pythonhosted.org/packages/eb/a0/19119d8b7c05be49baf6c593f11c432d571b70d805f2fe94c0585e55e4c8/python_utils-2.3.0-py2.py3-none-any.whl
Collecting argparse>=1.2 (from pystatsd==0.1.10->rucio)
  Downloading https://files.pythonhosted.org/packages/f2/94/3af39d34be01a24a6e65433d19e107099374224905f1e0cc6bbe1fd22a2f/argparse-1.4.0-py2.py3-none-any.whl
Collecting future>=0.15.2 (from google-gax<0.13dev,>=0.12.3->gcloud==0.18.3->rucio)
  Downloading https://files.pythonhosted.org/packages/90/52/e20466b85000a181e1e144fd8305caf2cf475e2f9674e797b222f8105f5f/future-0.17.1.tar.gz (829kB)
Collecting ply==3.8 (from google-gax<0.13dev,>=0.12.3->gcloud==0.18.3->rucio)
  Downloading https://files.pythonhosted.org/packages/96/e0/430fcdb6b3ef1ae534d231397bee7e9304be14a47a267e82ebcb3323d0b5/ply-3.8.tar.gz (157kB)
Requirement already satisfied: typing in /usr/lib/python2.7/site-packages (from M2Crypto>=0.16->fts3-rest-API==3.7.1->rucio) (3.6.6)
Installing collected packages: SQLAlchemy, MarkupSafe, Mako, python-editor, six, python-dateutil, alembic, flup, web.py, python-memcached, functools32, jsonschema, idna, enum34, pycparser, cffi, asn1crypto, cryptography, pynacl, pyasn1, bcrypt, paramiko, pysftp, pycrypto, python-magic, s3cmd, docopt, stomp.py, pygeoip, maxminddb, chardet, urllib3, certifi, requests, geoip2, httplib2, setuptools, protobuf, googleapis-common-protos, rsa, pyasn1-modules, oauth2client, futures, grpcio, future, ply, google-gax, grpc-google-pubsub-v1, gax-google-pubsub-v1, grpc-google-logging-v2, gax-google-logging-v2, gcloud, pyOpenSSL, retrying, redis, numpy, Werkzeug, click, itsdangerous, Jinja2, Flask, M2Crypto, fts3-rest-API, MyProxyClient, argcomplete, dogpile.cache, nose, tabulate, python-utils, progressbar2, bz2file, argparse, pystatsd, boto, rucio, rucio-webui
  Running setup.py install for SQLAlchemy: started
    Running setup.py install for SQLAlchemy: finished with status 'done'
  Running setup.py install for Mako: started
    Running setup.py install for Mako: finished with status 'done'
  Running setup.py install for python-editor: started
    Running setup.py install for python-editor: finished with status 'done'
  Running setup.py install for alembic: started
    Running setup.py install for alembic: finished with status 'done'
  Running setup.py install for flup: started
    Running setup.py install for flup: finished with status 'done'
  Running setup.py install for web.py: started
    Running setup.py install for web.py: finished with status 'done'
  Running setup.py install for functools32: started
    Running setup.py install for functools32: finished with status 'done'
  Running setup.py install for pycparser: started
    Running setup.py install for pycparser: finished with status 'done'
  Running setup.py install for pysftp: started
    Running setup.py install for pysftp: finished with status 'done'
  Running setup.py install for pycrypto: started
    Running setup.py install for pycrypto: finished with status 'done'
  Running setup.py install for s3cmd: started
    Running setup.py install for s3cmd: finished with status 'done'
  Running setup.py install for docopt: started
    Running setup.py install for docopt: finished with status 'done'
  Running setup.py install for stomp.py: started
    Running setup.py install for stomp.py: finished with status 'done'
  Running setup.py install for maxminddb: started
    Running setup.py install for maxminddb: finished with status 'done'
  Found existing installation: chardet 2.2.1
    Uninstalling chardet-2.2.1:
      Successfully uninstalled chardet-2.2.1
  Running setup.py install for httplib2: started
    Running setup.py install for httplib2: finished with status 'done'
  Found existing installation: setuptools 41.0.1
    Uninstalling setuptools-41.0.1:
      Successfully uninstalled setuptools-41.0.1
  Running setup.py install for googleapis-common-protos: started
    Running setup.py install for googleapis-common-protos: finished with status 'done'
  Running setup.py install for future: started
    Running setup.py install for future: finished with status 'done'
  Running setup.py install for ply: started
    Running setup.py install for ply: finished with status 'done'
  Running setup.py install for google-gax: started
    Running setup.py install for google-gax: finished with status 'done'
  Running setup.py install for grpc-google-pubsub-v1: started
    Running setup.py install for grpc-google-pubsub-v1: finished with status 'done'
  Running setup.py install for gax-google-pubsub-v1: started
    Running setup.py install for gax-google-pubsub-v1: finished with status 'done'
  Running setup.py install for grpc-google-logging-v2: started
    Running setup.py install for grpc-google-logging-v2: finished with status 'done'
  Running setup.py install for gax-google-logging-v2: started
    Running setup.py install for gax-google-logging-v2: finished with status 'done'
  Running setup.py install for gcloud: started
    Running setup.py install for gcloud: finished with status 'done'
  Running setup.py install for retrying: started
    Running setup.py install for retrying: finished with status 'done'
  Running setup.py install for M2Crypto: started
    Running setup.py install for M2Crypto: finished with status 'error'
[91m    ERROR: Complete output from command /usr/bin/python2 -u -c 'import setuptools, tokenize;__file__='"'"'/tmp/pip-install-EOjVou/M2Crypto/setup.py'"'"';f=getattr(tokenize, '"'"'open'"'"', open)(__file__);code=f.read().replace('"'"'\r\n'"'"', '"'"'\n'"'"');f.close();exec(compile(code, __file__, '"'"'exec'"'"'))' install --record /tmp/pip-record-3foVk_/install-record.txt --single-version-externally-managed --compile:
[0m[91m    ERROR: running install
    running build
    running build_py
    copying M2Crypto/httpslib.py -> build/lib.linux-x86_64-2.7/M2Crypto
    copying M2Crypto/EVP.py -> build/lib.linux-x86_64-2.7/M2Crypto
    copying M2Crypto/threading.py -> build/lib.linux-x86_64-2.7/M2Crypto
    copying M2Crypto/Rand.py -> build/lib.linux-x86_64-2.7/M2Crypto
    copying M2Crypto/ASN1.py -> build/lib.linux-x86_64-2.7/M2Crypto
    copying M2Crypto/ftpslib.py -> build/lib.linux-x86_64-2.7/M2Crypto
    copying M2Crypto/Err.py -> build/lib.linux-x86_64-2.7/M2Crypto
    copying M2Crypto/X509.py -> build/lib.linux-x86_64-2.7/M2Crypto
    copying M2Crypto/DH.py -> build/lib.linux-x86_64-2.7/M2Crypto
    copying M2Crypto/EC.py -> build/lib.linux-x86_64-2.7/M2Crypto
    copying M2Crypto/DSA.py -> build/lib.linux-x86_64-2.7/M2Crypto
    copying M2Crypto/util.py -> build/lib.linux-x86_64-2.7/M2Crypto
    copying M2Crypto/BIO.py -> build/lib.linux-x86_64-2.7/M2Crypto
    copying M2Crypto/Engine.py -> build/lib.linux-x86_64-2.7/M2Crypto
    copying M2Crypto/m2crypto.py -> build/lib.linux-x86_64-2.7/M2Crypto
    copying M2Crypto/m2urllib2.py -> build/lib.linux-x86_64-2.7/M2Crypto
    copying M2Crypto/m2.py -> build/lib.linux-x86_64-2.7/M2Crypto
    copying M2Crypto/six.py -> build/lib.linux-x86_64-2.7/M2Crypto
    copying M2Crypto/BN.py -> build/lib.linux-x86_64-2.7/M2Crypto
    copying M2Crypto/m2urllib.py -> build/lib.linux-x86_64-2.7/M2Crypto
    copying M2Crypto/AuthCookie.py -> build/lib.linux-x86_64-2.7/M2Crypto
    copying M2Crypto/__init__.py -> build/lib.linux-x86_64-2.7/M2Crypto
    copying M2Crypto/m2xmlrpclib.py -> build/lib.linux-x86_64-2.7/M2Crypto
    copying M2Crypto/callback.py -> build/lib.linux-x86_64-2.7/M2Crypto
    copying M2Crypto/RC4.py -> build/lib.linux-x86_64-2.7/M2Crypto
    copying M2Crypto/SMIME.py -> build/lib.linux-x86_64-2.7/M2Crypto
    copying M2Crypto/RSA.py -> build/lib.linux-x86_64-2.7/M2Crypto
    creating build/lib.linux-x86_64-2.7/M2Crypto/SSL
    copying M2Crypto/SSL/Connection.py -> build/lib.linux-x86_64-2.7/M2Crypto/SSL
    copying M2Crypto/SSL/Checker.py -> build/lib.linux-x86_64-2.7/M2Crypto/SSL
    copying M2Crypto/SSL/Context.py -> build/lib.linux-x86_64-2.7/M2Crypto/SSL
    copying M2Crypto/SSL/cb.py -> build/lib.linux-x86_64-2.7/M2Crypto/SSL
    copying M2Crypto/SSL/timeout.py -> build/lib.linux-x86_64-2.7/M2Crypto/SSL
    copying M2Crypto/SSL/ssl_dispatcher.py -> build/lib.linux-x86_64-2.7/M2Crypto/SSL
    copying M2Crypto/SSL/__init__.py -> build/lib.linux-x86_64-2.7/M2Crypto/SSL
    copying M2Crypto/SSL/SSLServer.py -> build/lib.linux-x86_64-2.7/M2Crypto/SSL
    copying M2Crypto/SSL/Cipher.py -> build/lib.linux-x86_64-2.7/M2Crypto/SSL
    copying M2Crypto/SSL/TwistedProtocolWrapper.py -> build/lib.linux-x86_64-2.7/M2Crypto/SSL
    copying M2Crypto/SSL/Session.py -> build/lib.linux-x86_64-2.7/M2Crypto/SSL
    running build_ext
    building 'M2Crypto._m2crypto' extension
    creating build/temp.linux-x86_64-2.7
    creating build/temp.linux-x86_64-2.7/SWIG
    gcc -pthread -fno-strict-aliasing -O2 -g -pipe -Wall -Wp,-D_FORTIFY_SOURCE=2 -fexceptions -fstack-protector-strong --param=ssp-buffer-size=4 -grecord-gcc-switches -m64 -mtune=generic -D_GNU_SOURCE -fPIC -fwrapv -DNDEBUG -O2 -g -pipe -Wall -Wp,-D_FORTIFY_SOURCE=2 -fexceptions -fstack-protector-strong --param=ssp-buffer-size=4 -grecord-gcc-switches -m64 -mtune=generic -D_GNU_SOURCE -fPIC -fwrapv -fPIC -I/usr/include/python2.7 -I/tmp/pip-install-EOjVou/M2Crypto/SWIG -c SWIG/_m2crypto_wrap.c -o build/temp.linux-x86_64-2.7/SWIG/_m2crypto_wrap.o -Wno-deprecated-declarations -DTHREADING
    SWIG/_m2crypto_wrap.c:4754:0: warning: "PyUnicode_FromString" redefined [enabled by default]
     #define PyUnicode_FromString(x) PyString_FromString(x)
     ^
    In file included from /usr/include/python2.7/Python.h:85:0,
                     from SWIG/_m2crypto_wrap.c:151:
    /usr/include/python2.7/unicodeobject.h:281:0: note: this is the location of the previous definition
     # define PyUnicode_FromString PyUnicodeUCS4_FromString
     ^
    SWIG/_m2crypto_wrap.c:4755:0: warning: "PyUnicode_Format" redefined [enabled by default]
     #define PyUnicode_Format(x, y) PyString_Format(x, y)
     ^
    In file included from /usr/include/python2.7/Python.h:85:0,
                     from SWIG/_m2crypto_wrap.c:151:
    /usr/include/python2.7/unicodeobject.h:275:0: note: this is the location of the previous definition
     # define PyUnicode_Format PyUnicodeUCS4_Format
     ^
    SWIG/_m2crypto_wrap.c: In function '_wrap_OPENSSL_sk_num':
    SWIG/_m2crypto_wrap.c:9882:3: error: unknown type name 'OPENSSL_STACK'
       OPENSSL_STACK *arg1 = (OPENSSL_STACK *) 0 ;
       ^
    SWIG/_m2crypto_wrap.c:9882:26: error: 'OPENSSL_STACK' undeclared (first use in this function)
       OPENSSL_STACK *arg1 = (OPENSSL_STACK *) 0 ;
                              ^
    SWIG/_m2crypto_wrap.c:9882:26: note: each undeclared identifier is reported only once for each function it appears in
    SWIG/_m2crypto_wrap.c:9882:41: error: expected expression before ')' token
       OPENSSL_STACK *arg1 = (OPENSSL_STACK *) 0 ;
                                             ^
    SWIG/_m2crypto_wrap.c:9893:26: error: expected expression before ')' token
       arg1 = (OPENSSL_STACK *)(argp1);
                              ^
    SWIG/_m2crypto_wrap.c:9894:3: warning: implicit declaration of function 'OPENSSL_sk_num' [-Wimplicit-function-declaration]
       result = (int)OPENSSL_sk_num((struct stack_st const *)arg1);
       ^
    SWIG/_m2crypto_wrap.c: In function '_wrap_OPENSSL_sk_value':
    SWIG/_m2crypto_wrap.c:9904:3: error: unknown type name 'OPENSSL_STACK'
       OPENSSL_STACK *arg1 = (OPENSSL_STACK *) 0 ;
       ^
    SWIG/_m2crypto_wrap.c:9904:26: error: 'OPENSSL_STACK' undeclared (first use in this function)
       OPENSSL_STACK *arg1 = (OPENSSL_STACK *) 0 ;
                              ^
    SWIG/_m2crypto_wrap.c:9904:41: error: expected expression before ')' token
       OPENSSL_STACK *arg1 = (OPENSSL_STACK *) 0 ;
                                             ^
    SWIG/_m2crypto_wrap.c:9919:26: error: expected expression before ')' token
       arg1 = (OPENSSL_STACK *)(argp1);
                              ^
    SWIG/_m2crypto_wrap.c:9925:3: warning: implicit declaration of function 'OPENSSL_sk_value' [-Wimplicit-function-declaration]
       result = (void *)OPENSSL_sk_value((struct stack_st const *)arg1,arg2);
       ^
    SWIG/_m2crypto_wrap.c:9925:12: warning: cast to pointer from integer of different size [-Wint-to-pointer-cast]
       result = (void *)OPENSSL_sk_value((struct stack_st const *)arg1,arg2);
                ^
    SWIG/_m2crypto_wrap.c: In function '_wrap_OPENSSL_sk_set':
    SWIG/_m2crypto_wrap.c:9935:3: error: unknown type name 'OPENSSL_STACK'
       OPENSSL_STACK *arg1 = (OPENSSL_STACK *) 0 ;
       ^
    SWIG/_m2crypto_wrap.c:9935:26: error: 'OPENSSL_STACK' undeclared (first use in this function)
       OPENSSL_STACK *arg1 = (OPENSSL_STACK *) 0 ;
                              ^
    SWIG/_m2crypto_wrap.c:9935:41: error: expected expression before ')' token
       OPENSSL_STACK *arg1 = (OPENSSL_STACK *) 0 ;
                                             ^
    SWIG/_m2crypto_wrap.c:9953:26: error: expected expression before ')' token
       arg1 = (OPENSSL_STACK *)(argp1);
                              ^
    SWIG/_m2crypto_wrap.c:9963:3: warning: implicit declaration of function 'OPENSSL_sk_set' [-Wimplicit-function-declaration]
       result = (void *)OPENSSL_sk_set(arg1,arg2,(void const *)arg3);
       ^
    SWIG/_m2crypto_wrap.c:9963:12: warning: cast to pointer from integer of different size [-Wint-to-pointer-cast]
       result = (void *)OPENSSL_sk_set(arg1,arg2,(void const *)arg3);
                ^
    SWIG/_m2crypto_wrap.c: In function '_wrap_OPENSSL_sk_new':
    SWIG/_m2crypto_wrap.c:9973:3: error: unknown type name 'OPENSSL_sk_compfunc'
       OPENSSL_sk_compfunc arg1 = (OPENSSL_sk_compfunc) 0 ;
       ^
    SWIG/_m2crypto_wrap.c:9973:31: error: 'OPENSSL_sk_compfunc' undeclared (first use in this function)
       OPENSSL_sk_compfunc arg1 = (OPENSSL_sk_compfunc) 0 ;
                                   ^
    SWIG/_m2crypto_wrap.c:9973:52: error: expected ',' or ';' before numeric constant
       OPENSSL_sk_compfunc arg1 = (OPENSSL_sk_compfunc) 0 ;
                                                        ^
    SWIG/_m2crypto_wrap.c:9975:3: error: unknown type name 'OPENSSL_STACK'
       OPENSSL_STACK *result = 0 ;
       ^
    SWIG/_m2crypto_wrap.c:9984:13: error: 'OPENSSL_STACK' undeclared (first use in this function)
       result = (OPENSSL_STACK *)OPENSSL_sk_new(arg1);
                 ^
    SWIG/_m2crypto_wrap.c:9984:28: error: expected expression before ')' token
       result = (OPENSSL_STACK *)OPENSSL_sk_new(arg1);
                                ^
    SWIG/_m2crypto_wrap.c: In function '_wrap_OPENSSL_sk_new_null':
    SWIG/_m2crypto_wrap.c:9994:3: error: unknown type name 'OPENSSL_STACK'
       OPENSSL_STACK *result = 0 ;
       ^
    SWIG/_m2crypto_wrap.c:9997:13: error: 'OPENSSL_STACK' undeclared (first use in this function)
       result = (OPENSSL_STACK *)OPENSSL_sk_new_null();
                 ^
    SWIG/_m2crypto_wrap.c:9997:28: error: expected expression before ')' token
       result = (OPENSSL_STACK *)OPENSSL_sk_new_null();
                                ^
    SWIG/_m2crypto_wrap.c: In function '_wrap_OPENSSL_sk_free':
    SWIG/_m2crypto_wrap.c:10007:3: error: unknown type name 'OPENSSL_STACK'
       OPENSSL_STACK *arg1 = (OPENSSL_STACK *) 0 ;
       ^
    SWIG/_m2crypto_wrap.c:10007:26: error: 'OPENSSL_STACK' undeclared (first use in this function)
       OPENSSL_STACK *arg1 = (OPENSSL_STACK *) 0 ;
                              ^
    SWIG/_m2crypto_wrap.c:10007:41: error: expected expression before ')' token
       OPENSSL_STACK *arg1 = (OPENSSL_STACK *) 0 ;
                                             ^
    SWIG/_m2crypto_wrap.c:10017:26: error: expected expression before ')' token
       arg1 = (OPENSSL_STACK *)(argp1);
                              ^
    SWIG/_m2crypto_wrap.c:10018:3: warning: implicit declaration of function 'OPENSSL_sk_free' [-Wimplicit-function-declaration]
       OPENSSL_sk_free(arg1);
       ^
    SWIG/_m2crypto_wrap.c: In function '_wrap_OPENSSL_sk_pop_free':
    SWIG/_m2crypto_wrap.c:10028:3: error: unknown type name 'OPENSSL_STACK'
       OPENSSL_STACK *arg1 = (OPENSSL_STACK *) 0 ;
       ^
    SWIG/_m2crypto_wrap.c:10028:26: error: 'OPENSSL_STACK' undeclared (first use in this function)
       OPENSSL_STACK *arg1 = (OPENSSL_STACK *) 0 ;
                              ^
    SWIG/_m2crypto_wrap.c:10028:41: error: expected expression before ')' token
       OPENSSL_STACK *arg1 = (OPENSSL_STACK *) 0 ;
                                             ^
    SWIG/_m2crypto_wrap.c:10040:26: error: expected expression before ')' token
       arg1 = (OPENSSL_STACK *)(argp1);
                              ^
    SWIG/_m2crypto_wrap.c:10047:3: warning: implicit declaration of function 'OPENSSL_sk_pop_free' [-Wimplicit-function-declaration]
       OPENSSL_sk_pop_free(arg1,arg2);
       ^
    SWIG/_m2crypto_wrap.c: In function '_wrap_OPENSSL_sk_deep_copy':
    SWIG/_m2crypto_wrap.c:10057:3: error: unknown type name 'OPENSSL_STACK'
       OPENSSL_STACK *arg1 = (OPENSSL_STACK *) 0 ;
       ^
    SWIG/_m2crypto_wrap.c:10057:26: error: 'OPENSSL_STACK' undeclared (first use in this function)
       OPENSSL_STACK *arg1 = (OPENSSL_STACK *) 0 ;
                              ^
    SWIG/_m2crypto_wrap.c:10057:41: error: expected expression before ')' token
       OPENSSL_STACK *arg1 = (OPENSSL_STACK *) 0 ;
                                             ^
    SWIG/_m2crypto_wrap.c:10058:3: error: unknown type name 'OPENSSL_sk_copyfunc'
       OPENSSL_sk_copyfunc arg2 = (OPENSSL_sk_copyfunc) 0 ;
       ^
    SWIG/_m2crypto_wrap.c:10058:31: error: 'OPENSSL_sk_copyfunc' undeclared (first use in this function)
       OPENSSL_sk_copyfunc arg2 = (OPENSSL_sk_copyfunc) 0 ;
                                   ^
    SWIG/_m2crypto_wrap.c:10058:52: error: expected ',' or ';' before numeric constant
       OPENSSL_sk_copyfunc arg2 = (OPENSSL_sk_copyfunc) 0 ;
                                                        ^
    SWIG/_m2crypto_wrap.c:10059:3: error: unknown type name 'OPENSSL_sk_freefunc'
       OPENSSL_sk_freefunc arg3 = (OPENSSL_sk_freefunc) 0 ;
       ^
    SWIG/_m2crypto_wrap.c:10059:31: error: 'OPENSSL_sk_freefunc' undeclared (first use in this function)
       OPENSSL_sk_freefunc arg3 = (OPENSSL_sk_freefunc) 0 ;
                                   ^
    SWIG/_m2crypto_wrap.c:10059:52: error: expected ',' or ';' before numeric constant
       OPENSSL_sk_freefunc arg3 = (OPENSSL_sk_freefunc) 0 ;
                                                        ^
    SWIG/_m2crypto_wrap.c:10065:18: error: 'result' undeclared (first use in this function)
       OPENSSL_STACK *result = 0 ;
                      ^
    SWIG/_m2crypto_wrap.c:10072:26: error: expected expression before ')' token
       arg1 = (OPENSSL_STACK *)(argp1);
                              ^
    SWIG/_m2crypto_wrap.c:10085:28: error: expected expression before ')' token
       result = (OPENSSL_STACK *)OPENSSL_sk_deep_copy((struct stack_st const *)arg1,arg2,arg3);
                                ^
    SWIG/_m2crypto_wrap.c:10057:18: warning: variable 'arg1' set but not used [-Wunused-but-set-variable]
       OPENSSL_STACK *arg1 = (OPENSSL_STACK *) 0 ;
                      ^
    SWIG/_m2crypto_wrap.c: In function '_wrap_OPENSSL_sk_insert':
    SWIG/_m2crypto_wrap.c:10095:3: error: unknown type name 'OPENSSL_STACK'
       OPENSSL_STACK *arg1 = (OPENSSL_STACK *) 0 ;
       ^
    SWIG/_m2crypto_wrap.c:10095:26: error: 'OPENSSL_STACK' undeclared (first use in this function)
       OPENSSL_STACK *arg1 = (OPENSSL_STACK *) 0 ;
                              ^
    SWIG/_m2crypto_wrap.c:10095:41: error: expected expression before ')' token
       OPENSSL_STACK *arg1 = (OPENSSL_STACK *) 0 ;
                                             ^
    SWIG/_m2crypto_wrap.c:10113:26: error: expected expression before ')' token
       arg1 = (OPENSSL_STACK *)(argp1);
                              ^
    SWIG/_m2crypto_wrap.c:10123:3: warning: implicit declaration of function 'OPENSSL_sk_insert' [-Wimplicit-function-declaration]
       result = (int)OPENSSL_sk_insert(arg1,(void const *)arg2,arg3);
       ^
    SWIG/_m2crypto_wrap.c: In function '_wrap_OPENSSL_sk_delete':
    SWIG/_m2crypto_wrap.c:10133:3: error: unknown type name 'OPENSSL_STACK'
       OPENSSL_STACK *arg1 = (OPENSSL_STACK *) 0 ;
       ^
    SWIG/_m2crypto_wrap.c:10133:26: error: 'OPENSSL_STACK' undeclared (first use in this function)
       OPENSSL_STACK *arg1 = (OPENSSL_STACK *) 0 ;
                              ^
    SWIG/_m2crypto_wrap.c:10133:41: error: expected expression before ')' token
       OPENSSL_STACK *arg1 = (OPENSSL_STACK *) 0 ;
                                             ^
    SWIG/_m2crypto_wrap.c:10148:26: error: expected expression before ')' token
       arg1 = (OPENSSL_STACK *)(argp1);
                              ^
    SWIG/_m2crypto_wrap.c:10154:3: warning: implicit declaration of function 'OPENSSL_sk_delete' [-Wimplicit-function-declaration]
       result = (void *)OPENSSL_sk_delete(arg1,arg2);
       ^
    SWIG/_m2crypto_wrap.c:10154:12: warning: cast to pointer from integer of different size [-Wint-to-pointer-cast]
       result = (void *)OPENSSL_sk_delete(arg1,arg2);
                ^
    SWIG/_m2crypto_wrap.c: In function '_wrap_OPENSSL_sk_delete_ptr':
    SWIG/_m2crypto_wrap.c:10164:3: error: unknown type name 'OPENSSL_STACK'
       OPENSSL_STACK *arg1 = (OPENSSL_STACK *) 0 ;
       ^
    SWIG/_m2crypto_wrap.c:10164:26: error: 'OPENSSL_STACK' undeclared (first use in this function)
       OPENSSL_STACK *arg1 = (OPENSSL_STACK *) 0 ;
                              ^
    SWIG/_m2crypto_wrap.c:10164:41: error: expected expression before ')' token
       OPENSSL_STACK *arg1 = (OPENSSL_STACK *) 0 ;
                                             ^
    SWIG/_m2crypto_wrap.c:10178:26: error: expected expression before ')' token
       arg1 = (OPENSSL_STACK *)(argp1);
                              ^
    SWIG/_m2crypto_wrap.c:10183:3: warning: implicit declaration of function 'OPENSSL_sk_delete_ptr' [-Wimplicit-function-declaration]
       result = (void *)OPENSSL_sk_delete_ptr(arg1,(void const *)arg2);
       ^
    SWIG/_m2crypto_wrap.c:10183:12: warning: cast to pointer from integer of different size [-Wint-to-pointer-cast]
       result = (void *)OPENSSL_sk_delete_ptr(arg1,(void const *)arg2);
                ^
    SWIG/_m2crypto_wrap.c: In function '_wrap_OPENSSL_sk_find':
    SWIG/_m2crypto_wrap.c:10193:3: error: unknown type name 'OPENSSL_STACK'
       OPENSSL_STACK *arg1 = (OPENSSL_STACK *) 0 ;
       ^
    SWIG/_m2crypto_wrap.c:10193:26: error: 'OPENSSL_STACK' undeclared (first use in this function)
       OPENSSL_STACK *arg1 = (OPENSSL_STACK *) 0 ;
                              ^
    SWIG/_m2crypto_wrap.c:10193:41: error: expected expression before ')' token
       OPENSSL_STACK *arg1 = (OPENSSL_STACK *) 0 ;
                                             ^
    SWIG/_m2crypto_wrap.c:10207:26: error: expected expression before ')' token
       arg1 = (OPENSSL_STACK *)(argp1);
                              ^
    SWIG/_m2crypto_wrap.c:10212:3: warning: implicit declaration of function 'OPENSSL_sk_find' [-Wimplicit-function-declaration]
       result = (int)OPENSSL_sk_find(arg1,(void const *)arg2);
       ^
    SWIG/_m2crypto_wrap.c: In function '_wrap_OPENSSL_sk_find_ex':
    SWIG/_m2crypto_wrap.c:10222:3: error: unknown type name 'OPENSSL_STACK'
       OPENSSL_STACK *arg1 = (OPENSSL_STACK *) 0 ;
       ^
    SWIG/_m2crypto_wrap.c:10222:26: error: 'OPENSSL_STACK' undeclared (first use in this function)
       OPENSSL_STACK *arg1 = (OPENSSL_STACK *) 0 ;
                              ^
    SWIG/_m2crypto_wrap.c:10222:41: error: expected expression before ')' token
       OPENSSL_STACK *arg1 = (OPENSSL_STACK *) 0 ;
                                             ^
    SWIG/_m2crypto_wrap.c:10236:26: error: expected expression before ')' token
       arg1 = (OPENSSL_STACK *)(argp1);
                              ^
    SWIG/_m2crypto_wrap.c:10241:3: warning: implicit declaration of function 'OPENSSL_sk_find_ex' [-Wimplicit-function-declaration]
       result = (int)OPENSSL_sk_find_ex(arg1,(void const *)arg2);
       ^
    SWIG/_m2crypto_wrap.c: In function '_wrap_OPENSSL_sk_push':
    SWIG/_m2crypto_wrap.c:10251:3: error: unknown type name 'OPENSSL_STACK'
       OPENSSL_STACK *arg1 = (OPENSSL_STACK *) 0 ;
       ^
    SWIG/_m2crypto_wrap.c:10251:26: error: 'OPENSSL_STACK' undeclared (first use in this function)
       OPENSSL_STACK *arg1 = (OPENSSL_STACK *) 0 ;
                              ^
    SWIG/_m2crypto_wrap.c:10251:41: error: expected expression before ')' token
       OPENSSL_STACK *arg1 = (OPENSSL_STACK *) 0 ;
                                             ^
    SWIG/_m2crypto_wrap.c:10265:26: error: expected expression before ')' token
       arg1 = (OPENSSL_STACK *)(argp1);
                              ^
    SWIG/_m2crypto_wrap.c:10270:3: warning: implicit declaration of function 'OPENSSL_sk_push' [-Wimplicit-function-declaration]
       result = (int)OPENSSL_sk_push(arg1,(void const *)arg2);
       ^
    SWIG/_m2crypto_wrap.c: In function '_wrap_OPENSSL_sk_unshift':
    SWIG/_m2crypto_wrap.c:10280:3: error: unknown type name 'OPENSSL_STACK'
       OPENSSL_STACK *arg1 = (OPENSSL_STACK *) 0 ;
       ^
    SWIG/_m2crypto_wrap.c:10280:26: error: 'OPENSSL_STACK' undeclared (first use in this function)
       OPENSSL_STACK *arg1 = (OPENSSL_STACK *) 0 ;
                              ^
    SWIG/_m2crypto_wrap.c:10280:41: error: expected expression before ')' token
       OPENSSL_STACK *arg1 = (OPENSSL_STACK *) 0 ;
                                             ^
    SWIG/_m2crypto_wrap.c:10294:26: error: expected expression before ')' token
       arg1 = (OPENSSL_STACK *)(argp1);
                              ^
    SWIG/_m2crypto_wrap.c:10299:3: warning: implicit declaration of function 'OPENSSL_sk_unshift' [-Wimplicit-function-declaration]
       result = (int)OPENSSL_sk_unshift(arg1,(void const *)arg2);
       ^
    SWIG/_m2crypto_wrap.c: In function '_wrap_OPENSSL_sk_shift':
    SWIG/_m2crypto_wrap.c:10309:3: error: unknown type name 'OPENSSL_STACK'
       OPENSSL_STACK *arg1 = (OPENSSL_STACK *) 0 ;
       ^
    SWIG/_m2crypto_wrap.c:10309:26: error: 'OPENSSL_STACK' undeclared (first use in this function)
       OPENSSL_STACK *arg1 = (OPENSSL_STACK *) 0 ;
                              ^
    SWIG/_m2crypto_wrap.c:10309:41: error: expected expression before ')' token
       OPENSSL_STACK *arg1 = (OPENSSL_STACK *) 0 ;
                                             ^
    SWIG/_m2crypto_wrap.c:10320:26: error: expected expression before ')' token
       arg1 = (OPENSSL_STACK *)(argp1);
                              ^
    SWIG/_m2crypto_wrap.c:10321:3: warning: implicit declaration of function 'OPENSSL_sk_shift' [-Wimplicit-function-declaration]
       result = (void *)OPENSSL_sk_shift(arg1);
       ^
    SWIG/_m2crypto_wrap.c:10321:12: warning: cast to pointer from integer of different size [-Wint-to-pointer-cast]
       result = (void *)OPENSSL_sk_shift(arg1);
                ^
    SWIG/_m2crypto_wrap.c: In function '_wrap_OPENSSL_sk_pop':
    SWIG/_m2crypto_wrap.c:10331:3: error: unknown type name 'OPENSSL_STACK'
       OPENSSL_STACK *arg1 = (OPENSSL_STACK *) 0 ;
       ^
    SWIG/_m2crypto_wrap.c:10331:26: error: 'OPENSSL_STACK' undeclared (first use in this function)
       OPENSSL_STACK *arg1 = (OPENSSL_STACK *) 0 ;
                              ^
    SWIG/_m2crypto_wrap.c:10331:41: error: expected expression before ')' token
       OPENSSL_STACK *arg1 = (OPENSSL_STACK *) 0 ;
                                             ^
    SWIG/_m2crypto_wrap.c:10342:26: error: expected expression before ')' token
       arg1 = (OPENSSL_STACK *)(argp1);
                              ^
    SWIG/_m2crypto_wrap.c:10343:3: warning: implicit declaration of function 'OPENSSL_sk_pop' [-Wimplicit-function-declaration]
       result = (void *)OPENSSL_sk_pop(arg1);
       ^
    SWIG/_m2crypto_wrap.c:10343:12: warning: cast to pointer from integer of different size [-Wint-to-pointer-cast]
       result = (void *)OPENSSL_sk_pop(arg1);
                ^
    SWIG/_m2crypto_wrap.c: In function '_wrap_OPENSSL_sk_zero':
    SWIG/_m2crypto_wrap.c:10353:3: error: unknown type name 'OPENSSL_STACK'
       OPENSSL_STACK *arg1 = (OPENSSL_STACK *) 0 ;
       ^
    SWIG/_m2crypto_wrap.c:10353:26: error: 'OPENSSL_STACK' undeclared (first use in this function)
       OPENSSL_STACK *arg1 = (OPENSSL_STACK *) 0 ;
                              ^
    SWIG/_m2crypto_wrap.c:10353:41: error: expected expression before ')' token
       OPENSSL_STACK *arg1 = (OPENSSL_STACK *) 0 ;
                                             ^
    SWIG/_m2crypto_wrap.c:10363:26: error: expected expression before ')' token
       arg1 = (OPENSSL_STACK *)(argp1);
                              ^
    SWIG/_m2crypto_wrap.c:10364:3: warning: implicit declaration of function 'OPENSSL_sk_zero' [-Wimplicit-function-declaration]
       OPENSSL_sk_zero(arg1);
       ^
    SWIG/_m2crypto_wrap.c: In function '_wrap_OPENSSL_sk_set_cmp_func':
    SWIG/_m2crypto_wrap.c:10374:3: error: unknown type name 'OPENSSL_STACK'
       OPENSSL_STACK *arg1 = (OPENSSL_STACK *) 0 ;
       ^
    SWIG/_m2crypto_wrap.c:10374:26: error: 'OPENSSL_STACK' undeclared (first use in this function)
       OPENSSL_STACK *arg1 = (OPENSSL_STACK *) 0 ;
                              ^
    SWIG/_m2crypto_wrap.c:10374:41: error: expected expression before ')' token
       OPENSSL_STACK *arg1 = (OPENSSL_STACK *) 0 ;
                                             ^
    SWIG/_m2crypto_wrap.c:10375:3: error: unknown type name 'OPENSSL_sk_compfunc'
       OPENSSL_sk_compfunc arg2 = (OPENSSL_sk_compfunc) 0 ;
       ^
    SWIG/_m2crypto_wrap.c:10375:31: error: 'OPENSSL_sk_compfunc' undeclared (first use in this function)
       OPENSSL_sk_compfunc arg2 = (OPENSSL_sk_compfunc) 0 ;
                                   ^
    SWIG/_m2crypto_wrap.c:10375:52: error: expected ',' or ';' before numeric constant
       OPENSSL_sk_compfunc arg2 = (OPENSSL_sk_compfunc) 0 ;
                                                        ^
    SWIG/_m2crypto_wrap.c:10380:23: error: expected ';' before 'result'
       OPENSSL_sk_compfunc result;
                           ^
    SWIG/_m2crypto_wrap.c:10387:26: error: expected expression before ')' token
       arg1 = (OPENSSL_STACK *)(argp1);
                              ^
    SWIG/_m2crypto_wrap.c:10394:3: error: 'result' undeclared (first use in this function)
       result = (OPENSSL_sk_compfunc)OPENSSL_sk_set_cmp_func(arg1,arg2);
       ^
    SWIG/_m2crypto_wrap.c:10394:33: error: expected ';' before 'OPENSSL_sk_set_cmp_func'
       result = (OPENSSL_sk_compfunc)OPENSSL_sk_set_cmp_func(arg1,arg2);
                                     ^
    SWIG/_m2crypto_wrap.c:10374:18: warning: variable 'arg1' set but not used [-Wunused-but-set-variable]
       OPENSSL_STACK *arg1 = (OPENSSL_STACK *) 0 ;
                      ^
    SWIG/_m2crypto_wrap.c: In function '_wrap_OPENSSL_sk_dup':
    SWIG/_m2crypto_wrap.c:10404:3: error: unknown type name 'OPENSSL_STACK'
       OPENSSL_STACK *arg1 = (OPENSSL_STACK *) 0 ;
       ^
    SWIG/_m2crypto_wrap.c:10404:26: error: 'OPENSSL_STACK' undeclared (first use in this function)
       OPENSSL_STACK *arg1 = (OPENSSL_STACK *) 0 ;
                              ^
    SWIG/_m2crypto_wrap.c:10404:41: error: expected expression before ')' token
       OPENSSL_STACK *arg1 = (OPENSSL_STACK *) 0 ;
                                             ^
    SWIG/_m2crypto_wrap.c:10408:18: error: 'result' undeclared (first use in this function)
       OPENSSL_STACK *result = 0 ;
                      ^
    SWIG/_m2crypto_wrap.c:10415:26: error: expected expression before ')' token
       arg1 = (OPENSSL_STACK *)(argp1);
                              ^
    SWIG/_m2crypto_wrap.c:10416:28: error: expected expression before ')' token
       result = (OPENSSL_STACK *)OPENSSL_sk_dup((struct stack_st const *)arg1);
                                ^
    SWIG/_m2crypto_wrap.c:10404:18: warning: variable 'arg1' set but not used [-Wunused-but-set-variable]
       OPENSSL_STACK *arg1 = (OPENSSL_STACK *) 0 ;
                      ^
    SWIG/_m2crypto_wrap.c: In function '_wrap_OPENSSL_sk_sort':
    SWIG/_m2crypto_wrap.c:10426:3: error: unknown type name 'OPENSSL_STACK'
       OPENSSL_STACK *arg1 = (OPENSSL_STACK *) 0 ;
       ^
    SWIG/_m2crypto_wrap.c:10426:26: error: 'OPENSSL_STACK' undeclared (first use in this function)
       OPENSSL_STACK *arg1 = (OPENSSL_STACK *) 0 ;
                              ^
    SWIG/_m2crypto_wrap.c:10426:41: error: expected expression before ')' token
       OPENSSL_STACK *arg1 = (OPENSSL_STACK *) 0 ;
                                             ^
    SWIG/_m2crypto_wrap.c:10436:26: error: expected expression before ')' token
       arg1 = (OPENSSL_STACK *)(argp1);
                              ^
    SWIG/_m2crypto_wrap.c:10437:3: warning: implicit declaration of function 'OPENSSL_sk_sort' [-Wimplicit-function-declaration]
       OPENSSL_sk_sort(arg1);
       ^
    SWIG/_m2crypto_wrap.c: In function '_wrap_OPENSSL_sk_is_sorted':
    SWIG/_m2crypto_wrap.c:10447:3: error: unknown type name 'OPENSSL_STACK'
       OPENSSL_STACK *arg1 = (OPENSSL_STACK *) 0 ;
       ^
    SWIG/_m2crypto_wrap.c:10447:26: error: 'OPENSSL_STACK' undeclared (first use in this function)
       OPENSSL_STACK *arg1 = (OPENSSL_STACK *) 0 ;
                              ^
    SWIG/_m2crypto_wrap.c:10447:41: error: expected expression before ')' token
       OPENSSL_STACK *arg1 = (OPENSSL_STACK *) 0 ;
                                             ^
    SWIG/_m2crypto_wrap.c:10458:26: error: expected expression before ')' token
       arg1 = (OPENSSL_STACK *)(argp1);
                              ^
    SWIG/_m2crypto_wrap.c:10459:3: warning: implicit declaration of function 'OPENSSL_sk_is_sorted' [-Wimplicit-function-declaration]
       result = (int)OPENSSL_sk_is_sorted((struct stack_st const *)arg1);
       ^
    SWIG/_m2crypto_wrap.c: In function '_wrap_sk_OPENSSL_STRING_new':
    SWIG/_m2crypto_wrap.c:10522:3: error: unknown type name 'sk_OPENSSL_STRING_compfunc'
       sk_OPENSSL_STRING_compfunc arg1 = (sk_OPENSSL_STRING_compfunc) 0 ;
       ^
    SWIG/_m2crypto_wrap.c:10522:38: error: 'sk_OPENSSL_STRING_compfunc' undeclared (first use in this function)
       sk_OPENSSL_STRING_compfunc arg1 = (sk_OPENSSL_STRING_compfunc) 0 ;
                                          ^
    SWIG/_m2crypto_wrap.c:10522:66: error: expected ',' or ';' before numeric constant
       sk_OPENSSL_STRING_compfunc arg1 = (sk_OPENSSL_STRING_compfunc) 0 ;
                                                                      ^
    SWIG/_m2crypto_wrap.c: In function '_wrap_sk_OPENSSL_STRING_pop_free':
    SWIG/_m2crypto_wrap.c:10776:3: error: unknown type name 'sk_OPENSSL_STRING_freefunc'
       sk_OPENSSL_STRING_freefunc arg2 = (sk_OPENSSL_STRING_freefunc) 0 ;
       ^
    SWIG/_m2crypto_wrap.c:10776:38: error: 'sk_OPENSSL_STRING_freefunc' undeclared (first use in this function)
       sk_OPENSSL_STRING_freefunc arg2 = (sk_OPENSSL_STRING_freefunc) 0 ;
                                          ^
    SWIG/_m2crypto_wrap.c:10776:66: error: expected ',' or ';' before numeric constant
       sk_OPENSSL_STRING_freefunc arg2 = (sk_OPENSSL_STRING_freefunc) 0 ;
                                                                      ^
    SWIG/_m2crypto_wrap.c: In function '_wrap_sk_OPENSSL_STRING_find_ex':
    SWIG/_m2crypto_wrap.c:10946:3: warning: implicit declaration of function 'CHECKED_CONST_PTR_OF' [-Wimplicit-function-declaration]
       result = (int)sk_OPENSSL_STRING_find_ex(arg1,arg2);
       ^
    In file included from /usr/include/openssl/crypto.h:129:0,
                     from /usr/include/openssl/bio.h:69,
                     from /usr/include/openssl/err.h:124,
                     from SWIG/_m2crypto_wrap.c:3854:
    SWIG/_m2crypto_wrap.c:10946:17: error: expected expression before 'struct'
       result = (int)sk_OPENSSL_STRING_find_ex(arg1,arg2);
                     ^
    In file included from /usr/include/openssl/crypto.h:129:0,
                     from /usr/include/openssl/bio.h:69,
                     from /usr/include/openssl/err.h:124,
                     from SWIG/_m2crypto_wrap.c:3854:
    SWIG/_m2crypto_wrap.c:10946:17: error: expected expression before 'char'
       result = (int)sk_OPENSSL_STRING_find_ex(arg1,arg2);
                     ^
    SWIG/_m2crypto_wrap.c:10925:9: warning: variable 'arg2' set but not used [-Wunused-but-set-variable]
       char *arg2 = (char *) 0 ;
             ^
    SWIG/_m2crypto_wrap.c:10924:35: warning: variable 'arg1' set but not used [-Wunused-but-set-variable]
       struct stack_st_OPENSSL_STRING *arg1 = (struct stack_st_OPENSSL_STRING *) 0 ;
                                       ^
    SWIG/_m2crypto_wrap.c: In function '_wrap_sk_OPENSSL_STRING_deep_copy':
    SWIG/_m2crypto_wrap.c:11024:3: error: unknown type name 'sk_OPENSSL_STRING_copyfunc'
       sk_OPENSSL_STRING_copyfunc arg2 = (sk_OPENSSL_STRING_copyfunc) 0 ;
       ^
    SWIG/_m2crypto_wrap.c:11024:38: error: 'sk_OPENSSL_STRING_copyfunc' undeclared (first use in this function)
       sk_OPENSSL_STRING_copyfunc arg2 = (sk_OPENSSL_STRING_copyfunc) 0 ;
                                          ^
    SWIG/_m2crypto_wrap.c:11024:66: error: expected ',' or ';' before numeric constant
       sk_OPENSSL_STRING_copyfunc arg2 = (sk_OPENSSL_STRING_copyfunc) 0 ;
                                                                      ^
    SWIG/_m2crypto_wrap.c:11025:3: error: unknown type name 'sk_OPENSSL_STRING_freefunc'
       sk_OPENSSL_STRING_freefunc arg3 = (sk_OPENSSL_STRING_freefunc) 0 ;
       ^
    SWIG/_m2crypto_wrap.c:11025:38: error: 'sk_OPENSSL_STRING_freefunc' undeclared (first use in this function)
       sk_OPENSSL_STRING_freefunc arg3 = (sk_OPENSSL_STRING_freefunc) 0 ;
                                          ^
    SWIG/_m2crypto_wrap.c:11025:66: error: expected ',' or ';' before numeric constant
       sk_OPENSSL_STRING_freefunc arg3 = (sk_OPENSSL_STRING_freefunc) 0 ;
                                                                      ^
    SWIG/_m2crypto_wrap.c: In function '_wrap_sk_OPENSSL_STRING_set_cmp_func':
    SWIG/_m2crypto_wrap.c:11062:3: error[0m[91m: unknown type name 'sk_OPENSSL_STRING_compfunc'
       sk_OPENSSL_STRING_compfunc arg2 = (sk_OPENSSL_STRING_compfunc) 0 ;
       ^
    SWIG/_m2crypto_wrap.c:11062:38: error: 'sk_OPENSSL_STRING_compfunc' undeclared (first use in this function)
       sk_OPENSSL_STRING_compfunc arg2 = (sk_OPENSSL_STRING_compfunc) 0 ;
                                          ^
    SWIG/_m2crypto_wrap.c:11062:66: error: expected ',' or ';' before numeric constant
       sk_OPENSSL_STRING_compfunc arg2 = (sk_OPENSSL_STRING_compfunc) 0 ;
                                                                      ^
    SWIG/_m2crypto_wrap.c:11067:30: error: expected ';' before 'result'
       sk_OPENSSL_STRING_compfunc result;
                                  ^
    SWIG/_m2crypto_wrap.c:11081:3: error: 'result' undeclared (first use in this function)
       result = (sk_OPENSSL_STRING_compfunc)sk_OPENSSL_STRING_set_cmp_func(arg1,arg2);
       ^
    SWIG/_m2crypto_wrap.c: In function '_wrap_sk_OPENSSL_CSTRING_num':
    SWIG/_m2crypto_wrap.c:11103:3: warning: implicit declaration of function 'sk_OPENSSL_CSTRING_num' [-Wimplicit-function-declaration]
       result = (int)sk_OPENSSL_CSTRING_num((struct stack_st_OPENSSL_CSTRING const *)arg1);
       ^
    SWIG/_m2crypto_wrap.c: In function '_wrap_sk_OPENSSL_CSTRING_value':
    SWIG/_m2crypto_wrap.c:11134:3: warning: implicit declaration of function 'sk_OPENSSL_CSTRING_value' [-Wimplicit-function-declaration]
       result = (char *)sk_OPENSSL_CSTRING_value((struct stack_st_OPENSSL_CSTRING const *)arg1,arg2);
       ^
    SWIG/_m2crypto_wrap.c:11134:12: warning: cast to pointer from integer of different size [-Wint-to-pointer-cast]
       result = (char *)sk_OPENSSL_CSTRING_value((struct stack_st_OPENSSL_CSTRING const *)arg1,arg2);
                ^
    SWIG/_m2crypto_wrap.c: In function '_wrap_sk_OPENSSL_CSTRING_new':
    SWIG/_m2crypto_wrap.c:11144:3: error: unknown type name 'sk_OPENSSL_CSTRING_compfunc'
       sk_OPENSSL_CSTRING_compfunc arg1 = (sk_OPENSSL_CSTRING_compfunc) 0 ;
       ^
    SWIG/_m2crypto_wrap.c:11144:39: error: 'sk_OPENSSL_CSTRING_compfunc' undeclared (first use in this function)
       sk_OPENSSL_CSTRING_compfunc arg1 = (sk_OPENSSL_CSTRING_compfunc) 0 ;
                                           ^
    SWIG/_m2crypto_wrap.c:11144:68: error: expected ',' or ';' before numeric constant
       sk_OPENSSL_CSTRING_compfunc arg1 = (sk_OPENSSL_CSTRING_compfunc) 0 ;
                                                                        ^
    SWIG/_m2crypto_wrap.c:11155:20: warning: implicit declaration of function 'sk_OPENSSL_CSTRING_new' [-Wimplicit-function-declaration]
       result = (struct stack_st_OPENSSL_CSTRING *)sk_OPENSSL_CSTRING_new(arg1);
                        ^
    SWIG/_m2crypto_wrap.c:11155:12: warning: cast to pointer from integer of different size [-Wint-to-pointer-cast]
       result = (struct stack_st_OPENSSL_CSTRING *)sk_OPENSSL_CSTRING_new(arg1);
                ^
    SWIG/_m2crypto_wrap.c: In function '_wrap_sk_OPENSSL_CSTRING_new_null':
    SWIG/_m2crypto_wrap.c:11168:20: warning: implicit declaration of function 'sk_OPENSSL_CSTRING_new_null' [-Wimplicit-function-declaration]
       result = (struct stack_st_OPENSSL_CSTRING *)sk_OPENSSL_CSTRING_new_null();
                        ^
    SWIG/_m2crypto_wrap.c:11168:12: warning: cast to pointer from integer of different size [-Wint-to-pointer-cast]
       result = (struct stack_st_OPENSSL_CSTRING *)sk_OPENSSL_CSTRING_new_null();
                ^
    SWIG/_m2crypto_wrap.c: In function '_wrap_sk_OPENSSL_CSTRING_free':
    SWIG/_m2crypto_wrap.c:11189:3: warning: implicit declaration of function 'sk_OPENSSL_CSTRING_free' [-Wimplicit-function-declaration]
       sk_OPENSSL_CSTRING_free(arg1);
       ^
    SWIG/_m2crypto_wrap.c: In function '_wrap_sk_OPENSSL_CSTRING_zero':
    SWIG/_m2crypto_wrap.c:11210:3: warning: implicit declaration of function 'sk_OPENSSL_CSTRING_zero' [-Wimplicit-function-declaration]
       sk_OPENSSL_CSTRING_zero(arg1);
       ^
    SWIG/_m2crypto_wrap.c: In function '_wrap_sk_OPENSSL_CSTRING_delete':
    SWIG/_m2crypto_wrap.c:11241:3: warning: implicit declaration of function 'sk_OPENSSL_CSTRING_delete' [-Wimplicit-function-declaration]
       result = (char *)sk_OPENSSL_CSTRING_delete(arg1,arg2);
       ^
    SWIG/_m2crypto_wrap.c:11241:12: warning: cast to pointer from integer of different size [-Wint-to-pointer-cast]
       result = (char *)sk_OPENSSL_CSTRING_delete(arg1,arg2);
                ^
    SWIG/_m2crypto_wrap.c: In function '_wrap_sk_OPENSSL_CSTRING_delete_ptr':
    SWIG/_m2crypto_wrap.c:11273:3: warning: implicit declaration of function 'sk_OPENSSL_CSTRING_delete_ptr' [-Wimplicit-function-declaration]
       result = (char *)sk_OPENSSL_CSTRING_delete_ptr(arg1,(char const *)arg2);
       ^
    SWIG/_m2crypto_wrap.c:11273:12: warning: cast to pointer from integer of different size [-Wint-to-pointer-cast]
       result = (char *)sk_OPENSSL_CSTRING_delete_ptr(arg1,(char const *)arg2);
                ^
    SWIG/_m2crypto_wrap.c: In function '_wrap_sk_OPENSSL_CSTRING_push':
    SWIG/_m2crypto_wrap.c:11307:3: warning: implicit declaration of function 'sk_OPENSSL_CSTRING_push' [-Wimplicit-function-declaration]
       result = (int)sk_OPENSSL_CSTRING_push(arg1,(char const *)arg2);
       ^
    SWIG/_m2crypto_wrap.c: In function '_wrap_sk_OPENSSL_CSTRING_unshift':
    SWIG/_m2crypto_wrap.c:11341:3: warning: implicit declaration of function 'sk_OPENSSL_CSTRING_unshift' [-Wimplicit-function-declaration]
       result = (int)sk_OPENSSL_CSTRING_unshift(arg1,(char const *)arg2);
       ^
    SWIG/_m2crypto_wrap.c: In function '_wrap_sk_OPENSSL_CSTRING_pop':
    SWIG/_m2crypto_wrap.c:11365:3: warning: implicit declaration of function 'sk_OPENSSL_CSTRING_pop' [-Wimplicit-function-declaration]
       result = (char *)sk_OPENSSL_CSTRING_pop(arg1);
       ^
    SWIG/_m2crypto_wrap.c:11365:12: warning: cast to pointer from integer of different size [-Wint-to-pointer-cast]
       result = (char *)sk_OPENSSL_CSTRING_pop(arg1);
                ^
    SWIG/_m2crypto_wrap.c: In function '_wrap_sk_OPENSSL_CSTRING_shift':
    SWIG/_m2crypto_wrap.c:11387:3: warning: implicit declaration of function 'sk_OPENSSL_CSTRING_shift' [-Wimplicit-function-declaration]
       result = (char *)sk_OPENSSL_CSTRING_shift(arg1);
       ^
    SWIG/_m2crypto_wrap.c:11387:12: warning: cast to pointer from integer of different size [-Wint-to-pointer-cast]
       result = (char *)sk_OPENSSL_CSTRING_shift(arg1);
                ^
    SWIG/_m2crypto_wrap.c: In function '_wrap_sk_OPENSSL_CSTRING_pop_free':
    SWIG/_m2crypto_wrap.c:11398:3: error: unknown type name 'sk_OPENSSL_CSTRING_freefunc'
       sk_OPENSSL_CSTRING_freefunc arg2 = (sk_OPENSSL_CSTRING_freefunc) 0 ;
       ^
    SWIG/_m2crypto_wrap.c:11398:39: error: 'sk_OPENSSL_CSTRING_freefunc' undeclared (first use in this function)
       sk_OPENSSL_CSTRING_freefunc arg2 = (sk_OPENSSL_CSTRING_freefunc) 0 ;
                                           ^
    SWIG/_m2crypto_wrap.c:11398:68: error: expected ',' or ';' before numeric constant
       sk_OPENSSL_CSTRING_freefunc arg2 = (sk_OPENSSL_CSTRING_freefunc) 0 ;
                                                                        ^
    SWIG/_m2crypto_wrap.c:11416:3: warning: implicit declaration of function 'sk_OPENSSL_CSTRING_pop_free' [-Wimplicit-function-declaration]
       sk_OPENSSL_CSTRING_pop_free(arg1,arg2);
       ^
    SWIG/_m2crypto_wrap.c: In function '_wrap_sk_OPENSSL_CSTRING_insert':
    SWIG/_m2crypto_wrap.c:11457:3: warning: implicit declaration of function 'sk_OPENSSL_CSTRING_insert' [-Wimplicit-function-declaration]
       result = (int)sk_OPENSSL_CSTRING_insert(arg1,(char const *)arg2,arg3);
       ^
    SWIG/_m2crypto_wrap.c: In function '_wrap_sk_OPENSSL_CSTRING_set':
    SWIG/_m2crypto_wrap.c:11500:3: warning: implicit declaration of function 'sk_OPENSSL_CSTRING_set' [-Wimplicit-function-declaration]
       result = (char *)sk_OPENSSL_CSTRING_set(arg1,arg2,(char const *)arg3);
       ^
    SWIG/_m2crypto_wrap.c:11500:12: warning: cast to pointer from integer of different size [-Wint-to-pointer-cast]
       result = (char *)sk_OPENSSL_CSTRING_set(arg1,arg2,(char const *)arg3);
                ^
    SWIG/_m2crypto_wrap.c: In function '_wrap_sk_OPENSSL_CSTRING_find':
    SWIG/_m2crypto_wrap.c:11534:3: warning: implicit declaration of function 'sk_OPENSSL_CSTRING_find' [-Wimplicit-function-declaration]
       result = (int)sk_OPENSSL_CSTRING_find(arg1,(char const *)arg2);
       ^
    SWIG/_m2crypto_wrap.c: In function '_wrap_sk_OPENSSL_CSTRING_find_ex':
    SWIG/_m2crypto_wrap.c:11568:3: warning: implicit declaration of function 'sk_OPENSSL_CSTRING_find_ex' [-Wimplicit-function-declaration]
       result = (int)sk_OPENSSL_CSTRING_find_ex(arg1,(char const *)arg2);
       ^
    SWIG/_m2crypto_wrap.c: In function '_wrap_sk_OPENSSL_CSTRING_sort':
    SWIG/_m2crypto_wrap.c:11591:3: warning: implicit declaration of function 'sk_OPENSSL_CSTRING_sort' [-Wimplicit-function-declaration]
       sk_OPENSSL_CSTRING_sort(arg1);
       ^
    SWIG/_m2crypto_wrap.c: In function '_wrap_sk_OPENSSL_CSTRING_is_sorted':
    SWIG/_m2crypto_wrap.c:11613:3: warning: implicit declaration of function 'sk_OPENSSL_CSTRING_is_sorted' [-Wimplicit-function-declaration]
       result = (int)sk_OPENSSL_CSTRING_is_sorted((struct stack_st_OPENSSL_CSTRING const *)arg1);
       ^
    SWIG/_m2crypto_wrap.c: In function '_wrap_sk_OPENSSL_CSTRING_dup':
    SWIG/_m2crypto_wrap.c:11635:20: warning: implicit declaration of function 'sk_OPENSSL_CSTRING_dup' [-Wimplicit-function-declaration]
       result = (struct stack_st_OPENSSL_CSTRING *)sk_OPENSSL_CSTRING_dup((struct stack_st_OPENSSL_CSTRING const *)arg1);
                        ^
    SWIG/_m2crypto_wrap.c:11635:12: warning: cast to pointer from integer of different size [-Wint-to-pointer-cast]
       result = (struct stack_st_OPENSSL_CSTRING *)sk_OPENSSL_CSTRING_dup((struct stack_st_OPENSSL_CSTRING const *)arg1);
                ^
    SWIG/_m2crypto_wrap.c: In function '_wrap_sk_OPENSSL_CSTRING_deep_copy':
    SWIG/_m2crypto_wrap.c:11646:3: error: unknown type name 'sk_OPENSSL_CSTRING_copyfunc'
       sk_OPENSSL_CSTRING_copyfunc arg2 = (sk_OPENSSL_CSTRING_copyfunc) 0 ;
       ^
    SWIG/_m2crypto_wrap.c:11646:39: error: 'sk_OPENSSL_CSTRING_copyfunc' undeclared (first use in this function)
       sk_OPENSSL_CSTRING_copyfunc arg2 = (sk_OPENSSL_CSTRING_copyfunc) 0 ;
                                           ^
    SWIG/_m2crypto_wrap.c:11646:68: error: expected ',' or ';' before numeric constant
       sk_OPENSSL_CSTRING_copyfunc arg2 = (sk_OPENSSL_CSTRING_copyfunc) 0 ;
                                                                        ^
    SWIG/_m2crypto_wrap.c:11647:3: error: unknown type name 'sk_OPENSSL_CSTRING_freefunc'
       sk_OPENSSL_CSTRING_freefunc arg3 = (sk_OPENSSL_CSTRING_freefunc) 0 ;
       ^
    SWIG/_m2crypto_wrap.c:11647:39: error: 'sk_OPENSSL_CSTRING_freefunc' undeclared (first use in this function)
       sk_OPENSSL_CSTRING_freefunc arg3 = (sk_OPENSSL_CSTRING_freefunc) 0 ;
                                           ^
    SWIG/_m2crypto_wrap.c:11647:68: error: expected ',' or ';' before numeric constant
       sk_OPENSSL_CSTRING_freefunc arg3 = (sk_OPENSSL_CSTRING_freefunc) 0 ;
                                                                        ^
    SWIG/_m2crypto_wrap.c:11673:20: warning: implicit declaration of function 'sk_OPENSSL_CSTRING_deep_copy' [-Wimplicit-function-declaration]
       result = (struct stack_st_OPENSSL_CSTRING *)sk_OPENSSL_CSTRING_deep_copy((struct stack_st_OPENSSL_CSTRING const *)arg1,arg2,arg3);
                        ^
    SWIG/_m2crypto_wrap.c:11673:12: warning: cast to pointer from integer of different size [-Wint-to-pointer-cast]
       result = (struct stack_st_OPENSSL_CSTRING *)sk_OPENSSL_CSTRING_deep_copy((struct stack_st_OPENSSL_CSTRING const *)arg1,arg2,arg3);
                ^
    SWIG/_m2crypto_wrap.c: In function '_wrap_sk_OPENSSL_CSTRING_set_cmp_func':
    SWIG/_m2crypto_wrap.c:11684:3: error: unknown type name 'sk_OPENSSL_CSTRING_compfunc'
       sk_OPENSSL_CSTRING_compfunc arg2 = (sk_OPENSSL_CSTRING_compfunc) 0 ;
       ^
    SWIG/_m2crypto_wrap.c:11684:39: error: 'sk_OPENSSL_CSTRING_compfunc' undeclared (first use in this function)
       sk_OPENSSL_CSTRING_compfunc arg2 = (sk_OPENSSL_CSTRING_compfunc) 0 ;
                                           ^
    SWIG/_m2crypto_wrap.c:11684:68: error: expected ',' or ';' before numeric constant
       sk_OPENSSL_CSTRING_compfunc arg2 = (sk_OPENSSL_CSTRING_compfunc) 0 ;
                                                                        ^
    SWIG/_m2crypto_wrap.c:11689:31: error: expected ';' before 'result'
       sk_OPENSSL_CSTRING_compfunc result;
                                   ^
    SWIG/_m2crypto_wrap.c:11703:3: error: 'result' undeclared (first use in this function)
       result = (sk_OPENSSL_CSTRING_compfunc)sk_OPENSSL_CSTRING_set_cmp_func(arg1,arg2);
       ^
    SWIG/_m2crypto_wrap.c:11703:41: error: expected ';' before 'sk_OPENSSL_CSTRING_set_cmp_func'
       result = (sk_OPENSSL_CSTRING_compfunc)sk_OPENSSL_CSTRING_set_cmp_func(arg1,arg2);
                                             ^
    SWIG/_m2crypto_wrap.c:11683:36: warning: variable 'arg1' set but not used [-Wunused-but-set-variable]
       struct stack_st_OPENSSL_CSTRING *arg1 = (struct stack_st_OPENSSL_CSTRING *) 0 ;
                                        ^
    SWIG/_m2crypto_wrap.c: In function '_wrap_sk_OPENSSL_BLOCK_new':
    SWIG/_m2crypto_wrap.c:11766:3: error: unknown type name 'sk_OPENSSL_BLOCK_compfunc'
       sk_OPENSSL_BLOCK_compfunc arg1 = (sk_OPENSSL_BLOCK_compfunc) 0 ;
       ^
    SWIG/_m2crypto_wrap.c:11766:37: error: 'sk_OPENSSL_BLOCK_compfunc' undeclared (first use in this function)
       sk_OPENSSL_BLOCK_compfunc arg1 = (sk_OPENSSL_BLOCK_compfunc) 0 ;
                                         ^
    SWIG/_m2crypto_wrap.c:11766:64: error: expected ',' or ';' before numeric constant
       sk_OPENSSL_BLOCK_compfunc arg1 = (sk_OPENSSL_BLOCK_compfunc) 0 ;
                                                                    ^
    SWIG/_m2crypto_wrap.c: In function '_wrap_sk_OPENSSL_BLOCK_pop_free':
    SWIG/_m2crypto_wrap.c:12005:3: error: unknown type name 'sk_OPENSSL_BLOCK_freefunc'
       sk_OPENSSL_BLOCK_freefunc arg2 = (sk_OPENSSL_BLOCK_freefunc) 0 ;
       ^
    SWIG/_m2crypto_wrap.c:12005:37: error: 'sk_OPENSSL_BLOCK_freefunc' undeclared (first use in this function)
       sk_OPENSSL_BLOCK_freefunc arg2 = (sk_OPENSSL_BLOCK_freefunc) 0 ;
                                         ^
    SWIG/_m2crypto_wrap.c:12005:64: error: expected ',' or ';' before numeric constant
       sk_OPENSSL_BLOCK_freefunc arg2 = (sk_OPENSSL_BLOCK_freefunc) 0 ;
                                                                    ^
    In file included from /usr/include/openssl/crypto.h:129:0,
                     from /usr/include/openssl/bio.h:69,
                     from /usr/include/openssl/err.h:124,
                     from SWIG/_m2crypto_wrap.c:3854:
    SWIG/_m2crypto_wrap.c: In function '_wrap_sk_OPENSSL_BLOCK_find_ex':
    SWIG/_m2crypto_wrap.c:12157:17: error: expected expression before 'struct'
       result = (int)sk_OPENSSL_BLOCK_find_ex(arg1,arg2);
                     ^
    In file included from /usr/include/openssl/crypto.h:129:0,
                     from /usr/include/openssl/bio.h:69,
                     from /usr/include/openssl/err.h:124,
                     from SWIG/_m2crypto_wrap.c:3854:
    SWIG/_m2crypto_wrap.c:12157:17: error: expected expression before 'void'
       result = (int)sk_OPENSSL_BLOCK_find_ex(arg1,arg2);
                     ^
    SWIG/_m2crypto_wrap.c:12138:34: warning: variable 'arg1' set but not used [-Wunused-but-set-variable]
       struct stack_st_OPENSSL_BLOCK *arg1 = (struct stack_st_OPENSSL_BLOCK *) 0 ;
                                      ^
    SWIG/_m2crypto_wrap.c: In function '_wrap_sk_OPENSSL_BLOCK_deep_copy':
    SWIG/_m2crypto_wrap.c:12233:3: error: unknown type name 'sk_OPENSSL_BLOCK_copyfunc'
       sk_OPENSSL_BLOCK_copyfunc arg2 = (sk_OPENSSL_BLOCK_copyfunc) 0 ;
       ^
    SWIG/_m2crypto_wrap.c:12233:37: error: 'sk_OPENSSL_BLOCK_copyfunc' undeclared (first use in this function)
       sk_OPENSSL_BLOCK_copyfunc arg2 = (sk_OPENSSL_BLOCK_copyfunc) 0 ;
                                         ^
    SWIG/_m2crypto_wrap.c:12233:64: error: expected ',' or ';' before numeric constant
       sk_OPENSSL_BLOCK_copyfunc arg2 = (sk_OPENSSL_BLOCK_copyfunc) 0 ;
                                                                    ^
    SWIG/_m2crypto_wrap.c:12234:3: error: unknown type name 'sk_OPENSSL_BLOCK_freefunc'
       sk_OPENSSL_BLOCK_freefunc arg3 = (sk_OPENSSL_BLOCK_freefunc) 0 ;
       ^
    SWIG/_m2crypto_wrap.c:12234:37: error: 'sk_OPENSSL_BLOCK_freefunc' undeclared (first use in this function)
       sk_OPENSSL_BLOCK_freefunc arg3 = (sk_OPENSSL_BLOCK_freefunc) 0 ;
                                         ^
    SWIG/_m2crypto_wrap.c:12234:64: error: expected ',' or ';' before numeric constant
       sk_OPENSSL_BLOCK_freefunc arg3 = (sk_OPENSSL_BLOCK_freefunc) 0 ;
                                                                    ^
    SWIG/_m2crypto_wrap.c: In function '_wrap_sk_OPENSSL_BLOCK_set_cmp_func':
    SWIG/_m2crypto_wrap.c:12271:3: error: unknown type name 'sk_OPENSSL_BLOCK_compfunc'
       sk_OPENSSL_BLOCK_compfunc arg2 = (sk_OPENSSL_BLOCK_compfunc) 0 ;
       ^
    SWIG/_m2crypto_wrap.c:12271:37: error: 'sk_OPENSSL_BLOCK_compfunc' undeclared (first use in this function)
       sk_OPENSSL_BLOCK_compfunc arg2 = (sk_OPENSSL_BLOCK_compfunc) 0 ;
                                         ^
    SWIG/_m2crypto_wrap.c:12271:64: error: expected ',' or ';' before numeric constant
       sk_OPENSSL_BLOCK_compfunc arg2 = (sk_OPENSSL_BLOCK_compfunc) 0 ;
                                                                    ^
    SWIG/_m2crypto_wrap.c:12276:29: error: expected ';' before 'result'
       sk_OPENSSL_BLOCK_compfunc result;
                                 ^
    SWIG/_m2crypto_wrap.c:12290:3: error: 'result' undeclared (first use in this function)
       result = (sk_OPENSSL_BLOCK_compfunc)sk_OPENSSL_BLOCK_set_cmp_func(arg1,arg2);
       ^
    SWIG/_m2crypto_wrap.c: At top level:
    SWIG/_m2crypto_wrap.c:5671:1: warning: 'BIO_meth_free' defined but not used [-Wunused-function]
     BIO_meth_free( BIO_METHOD *meth )
     ^
    error: command 'gcc' failed with exit status 1
    ----------------------------------------
[0m[91mERROR: Command "/usr/bin/python2 -u -c 'import setuptools, tokenize;__file__='"'"'/tmp/pip-install-EOjVou/M2Crypto/setup.py'"'"';f=getattr(tokenize, '"'"'open'"'"', open)(__file__);code=f.read().replace('"'"'\r\n'"'"', '"'"'\n'"'"');f.close();exec(compile(code, __file__, '"'"'exec'"'"'))' install --record /tmp/pip-record-3foVk_/install-record.txt --single-version-externally-managed --compile" failed with error code 1 in /tmp/pip-install-EOjVou/M2Crypto/

Service 'rucio' failed to build: The command '/bin/sh -c pip install rucio rucio-webui' returned a non-zero code: 1
```

Modification
------------





Discussion:
I just noticed this as well. It seems there is a new version of M2Crypto since a few days (which is a dependency of fts3-rest-API. Need to check what the actual problem is. Some threads suggest to additionally install swig, but this doesn't seem a good solution to me.
I fixed the demo build by adding this line in the Dockerfile, before the rucio package resolution starts:

RUN pip install --ignore-installed ipaddress
**RUN pip install M2Crypto==0.32**
RUN pip install rucio rucio-webui

This will trick pip into not installing the latest version. Whether it works or not runtime I still didn't check 
I fixed this directly in our dependency file to fix M2Crypto to <0.33. This should also fix the demo issue.

Resolving patch:
diff --git a/lib/rucio/vcsversion.py b/lib/rucio/vcsversion.py
--- a/lib/rucio/vcsversion.py
+++ b/lib/rucio/vcsversion.py
@@ -4,8 +4,8 @@
 '''
 VERSION_INFO = {
     'final': True,
-    'version': '1.19.6',
-    'branch_nick': 'patch-0-Release__Rucio_1_19_6_preparation',
-    'revision_id': 'a8c639a7a70a9e605ad90535d28d2eab04d89cce',
-    'revno': 7992
+    'version': '1.19.7',
+    'branch_nick': 'patch-0-Release__Rucio_1_19_7_preparation',
+    'revision_id': '22e8c69f42c87cbcb361c9c11f51eb010d2b4706',
+    'revno': 7998
 }


Test patch: