# Error installing haddock3

**URL:** <https://ask.bioexcel.eu/t/error-installing-haddock3/6038>\
**Category:** Uncategorized\
**Created:** [March 17, 2026, 1:04pm UTC](https://ask.bioexcel.eu/t/error-installing-haddock3/6038 "2026-03-17T13:04:31Z")\
**Posts on this page:** 4\
**Page:** 1

<div class="post-metadata">

**Author:** ![Rainer.Lilischkis](https://avatars.discourse-cdn.com/v4/letter/r/8e7dd6/32.png) [@Rainer.Lilischkis](https://ask.bioexcel.eu/u/Rainer.Lilischkis)\
**Post date:** [March 17, 2026, 1:04pm UTC](https://ask.bioexcel.eu/t/error-installing-haddock3/6038/1 "2026-03-17T13:04:31Z")

</div>

while installing haddock3 I get the following:

> Created wheel for haddock3: filename=haddock3-2025.11.0-cp313-cp313-linux\_x86\_64.whl size=15023319 sha256=5804a7e45a5ba804f4b803cc7b566a2eb89b0f1185fb72b971943297da4fbb9b  
> Stored in directory: /tmp/pip-ephem-wheel-cache-jfwpf27\_/wheels/4c/eb/2b/7a26ab06ce9a0228848f73cfdad1de538efa171e88bb785e46  
> Building wheel for freesasa (pyproject.toml) … error  
> error: subprocess-exited-with-error
> 
> × Building wheel for freesasa (pyproject.toml) did not run successfully.  
> │ exit code: 1  
> ╰─\> [109 lines of output]  
> /tmp/pip-build-env-8vg9\_wyb/overlay/lib/python3.13/site-packages/setuptools/\_distutils/dist.py:287: UserWarning: Unknown distribution option: ‘test\_suite’  
> warnings.warn(msg)  
> /tmp/pip-build-env-8vg9\_wyb/overlay/lib/python3.13/site-packages/setuptools/dist.py:765: SetuptoolsDeprecationWarning: License classifiers are deprecated.  
> !!
> 
> ```auto
> ********************************************************************************
> Please consider removing the following classifiers in favor of a SPDX license expression:
> 
> License :: OSI Approved :: MIT License
> 
> See https://packaging.python.org/en/latest/guides/writing-pyproject-toml/#license for details.
> ********************************************************************************
> 
> !!
> self._finalize_license_expression()
> Define environment variable USE_CYTHON to build from Cython source
> running bdist_wheel
> running build
> running build_ext
> building 'freesasa' extension
> creating build/temp.linux-x86_64-cpython-313/lib/src
> creating build/temp.linux-x86_64-cpython-313/src
> x86_64-linux-gnu-gcc -fno-strict-overflow -Wsign-compare -DNDEBUG -g -O2 -Wall -fPIC -Ilib/src -I. -I/opt/haddock/venv/include -I/usr/include/python3.13 -c lib/src/classifier.c -o build/temp.linux-x86_64-cpython-313/lib/src/classifier.o -DHAVE_CONFIG_H -std=gnu99
> lib/src/classifier.c: In function ‘freesasa_atom_is_backbone’:
> lib/src/classifier.c:1102:19: warning: comparison of integer expressions of different signedness: ‘int’ and ‘long unsigned int’ [-Wsign-compare]
> 1102 | for (i = 0; i < sizeof(bb) / sizeof(const char *); ++i) {
> | ^
> lib/src/classifier.c: In function ‘freesasa_classifier_add_type’:
> lib/src/classifier.c:415:21: warning: pointer ‘tn’ may be used after ‘realloc’ [-Wuse-after-free]
> 415 | types->name = tn;
> | ~~~~~~~~~~~~^~~~
> lib/src/classifier.c:414:24: note: call to ‘realloc’ here
> 414 | if ((types->name = realloc(tn, sizeof(char *) * n)) == NULL) {
> | ^ ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
> lib/src/classifier.c:420:28: warning: pointer ‘tr’ may be used after ‘realloc’ [-Wuse-after-free]
> 420 | types->type_radius = tr;
> | ~~~~~~~~~~~~~~~~~~~^~~~
> lib/src/classifier.c:419:31: note: call to ‘realloc’ here
> 419 | if ((types->type_radius = realloc(tr, sizeof(double) * n)) == NULL) {
> | ^ ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
> lib/src/classifier.c:425:27: warning: pointer ‘tc’ may be used after ‘realloc’ [-Wuse-after-free]
> 425 | types->type_class = tc;
> | ~~~~~~~~~~~~~~~~~~^~~~
> lib/src/classifier.c:424:30: note: call to ‘realloc’ here
> 424 | if ((types->type_class = realloc(tc, sizeof(int) * n)) == NULL) {
> | ^ ~~~~~~~~~~~~~~~~~~~~~~~~~~~
> lib/src/classifier.c: In function ‘freesasa_classifier_add_residue’:
> lib/src/classifier.c:567:25: warning: pointer ‘rn’ may be used after ‘realloc’ [-Wuse-after-free]
> 567 | c->residue_name = rn;
> | ~~~~~~~~~~~~~~~~^~~~
> lib/src/classifier.c:566:28: note: call to ‘realloc’ here
> 566 | if ((c->residue_name = realloc(rn, sizeof(char *) * res)) == NULL) {
> | ^ ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
> lib/src/classifier.c:572:20: warning: pointer ‘cr’ may be used after ‘realloc’ [-Wuse-after-free]
> 572 | c->residue = cr;
> | ~~~~~~~~~~~^~~~
> lib/src/classifier.c:571:23: note: call to ‘realloc’ here
> 571 | if ((c->residue = realloc(cr, sizeof(struct classifier_residue *) * res)) == NULL) {
> | ^ ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
> In function ‘strip_line’,
> inlined from ‘next_line’ at lib/src/classifier.c:244:12:
> lib/src/classifier.c:191:5: warning: ‘strncpy’ output may be truncated copying 256 bytes from a string of length 256 [-Wstringop-truncation]
> 191 | strncpy(line, first, MAX_LINE_LEN);
> | ^ ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
> x86_64-linux-gnu-gcc -fno-strict-overflow -Wsign-compare -DNDEBUG -g -O2 -Wall -fPIC -Ilib/src -I. -I/opt/haddock/venv/include -I/usr/include/python3.13 -c lib/src/classifier_naccess.c -o build/temp.linux-x86_64-cpython-313/lib/src/classifier_naccess.o -DHAVE_CONFIG_H -std=gnu99
> x86_64-linux-gnu-gcc -fno-strict-overflow -Wsign-compare -DNDEBUG -g -O2 -Wall -fPIC -Ilib/src -I. -I/opt/haddock/venv/include -I/usr/include/python3.13 -c lib/src/classifier_oons.c -o build/temp.linux-x86_64-cpython-313/lib/src/classifier_oons.o -DHAVE_CONFIG_H -std=gnu99
> x86_64-linux-gnu-gcc -fno-strict-overflow -Wsign-compare -DNDEBUG -g -O2 -Wall -fPIC -Ilib/src -I. -I/opt/haddock/venv/include -I/usr/include/python3.13 -c lib/src/classifier_protor.c -o build/temp.linux-x86_64-cpython-313/lib/src/classifier_protor.o -DHAVE_CONFIG_H -std=gnu99
> x86_64-linux-gnu-gcc -fno-strict-overflow -Wsign-compare -DNDEBUG -g -O2 -Wall -fPIC -Ilib/src -I. -I/opt/haddock/venv/include -I/usr/include/python3.13 -c lib/src/coord.c -o build/temp.linux-x86_64-cpython-313/lib/src/coord.o -DHAVE_CONFIG_H -std=gnu99
> x86_64-linux-gnu-gcc -fno-strict-overflow -Wsign-compare -DNDEBUG -g -O2 -Wall -fPIC -Ilib/src -I. -I/opt/haddock/venv/include -I/usr/include/python3.13 -c lib/src/freesasa.c -o build/temp.linux-x86_64-cpython-313/lib/src/freesasa.o -DHAVE_CONFIG_H -std=gnu99
> x86_64-linux-gnu-gcc -fno-strict-overflow -Wsign-compare -DNDEBUG -g -O2 -Wall -fPIC -Ilib/src -I. -I/opt/haddock/venv/include -I/usr/include/python3.13 -c lib/src/lexer.c -o build/temp.linux-x86_64-cpython-313/lib/src/lexer.o -DHAVE_CONFIG_H -std=gnu99
> lexer.c: In function ‘yy_get_next_buffer’:
> lexer.c:679:18: warning: comparison of integer expressions of different signedness: ‘size_t’ {aka ‘long unsigned int’} and ‘int’ [-Wsign-compare]
> lexer.c:1180:3: note: in expansion of macro ‘YY_INPUT’
> lexer.c: In function ‘freesasa_yy_scan_bytes’:
> lexer.c:1740:17: warning: comparison of integer expressions of different signedness: ‘yy_size_t’ {aka ‘long unsigned int’} and ‘int’ [-Wsign-compare]
> lexer.c: At top level:
> lexer.c:1328:16: warning: ‘input’ defined but not used [-Wunused-function]
> lexer.c:1284:17: warning: ‘yyunput’ defined but not used [-Wunused-function]
> x86_64-linux-gnu-gcc -fno-strict-overflow -Wsign-compare -DNDEBUG -g -O2 -Wall -fPIC -Ilib/src -I. -I/opt/haddock/venv/include -I/usr/include/python3.13 -c lib/src/log.c -o build/temp.linux-x86_64-cpython-313/lib/src/log.o -DHAVE_CONFIG_H -std=gnu99
> x86_64-linux-gnu-gcc -fno-strict-overflow -Wsign-compare -DNDEBUG -g -O2 -Wall -fPIC -Ilib/src -I. -I/opt/haddock/venv/include -I/usr/include/python3.13 -c lib/src/nb.c -o build/temp.linux-x86_64-cpython-313/lib/src/nb.o -DHAVE_CONFIG_H -std=gnu99
> x86_64-linux-gnu-gcc -fno-strict-overflow -Wsign-compare -DNDEBUG -g -O2 -Wall -fPIC -Ilib/src -I. -I/opt/haddock/venv/include -I/usr/include/python3.13 -c lib/src/node.c -o build/temp.linux-x86_64-cpython-313/lib/src/node.o -DHAVE_CONFIG_H -std=gnu99
> x86_64-linux-gnu-gcc -fno-strict-overflow -Wsign-compare -DNDEBUG -g -O2 -Wall -fPIC -Ilib/src -I. -I/opt/haddock/venv/include -I/usr/include/python3.13 -c lib/src/parser.c -o build/temp.linux-x86_64-cpython-313/lib/src/parser.o -DHAVE_CONFIG_H -std=gnu99
> x86_64-linux-gnu-gcc -fno-strict-overflow -Wsign-compare -DNDEBUG -g -O2 -Wall -fPIC -Ilib/src -I. -I/opt/haddock/venv/include -I/usr/include/python3.13 -c lib/src/pdb.c -o build/temp.linux-x86_64-cpython-313/lib/src/pdb.o -DHAVE_CONFIG_H -std=gnu99
> x86_64-linux-gnu-gcc -fno-strict-overflow -Wsign-compare -DNDEBUG -g -O2 -Wall -fPIC -Ilib/src -I. -I/opt/haddock/venv/include -I/usr/include/python3.13 -c lib/src/rsa.c -o build/temp.linux-x86_64-cpython-313/lib/src/rsa.o -DHAVE_CONFIG_H -std=gnu99
> x86_64-linux-gnu-gcc -fno-strict-overflow -Wsign-compare -DNDEBUG -g -O2 -Wall -fPIC -Ilib/src -I. -I/opt/haddock/venv/include -I/usr/include/python3.13 -c lib/src/sasa_lr.c -o build/temp.linux-x86_64-cpython-313/lib/src/sasa_lr.o -DHAVE_CONFIG_H -std=gnu99
> x86_64-linux-gnu-gcc -fno-strict-overflow -Wsign-compare -DNDEBUG -g -O2 -Wall -fPIC -Ilib/src -I. -I/opt/haddock/venv/include -I/usr/include/python3.13 -c lib/src/sasa_sr.c -o build/temp.linux-x86_64-cpython-313/lib/src/sasa_sr.o -DHAVE_CONFIG_H -std=gnu99
> x86_64-linux-gnu-gcc -fno-strict-overflow -Wsign-compare -DNDEBUG -g -O2 -Wall -fPIC -Ilib/src -I. -I/opt/haddock/venv/include -I/usr/include/python3.13 -c lib/src/selection.c -o build/temp.linux-x86_64-cpython-313/lib/src/selection.o -DHAVE_CONFIG_H -std=gnu99
> lib/src/selection.c: In function ‘freesasa_selection_atom’:
> lib/src/selection.c:133:23: warning: comparison of integer expressions of different signedness: ‘int’ and ‘size_t’ {aka ‘long unsigned int’} [-Wsign-compare]
> 133 | for (i = 0; i < strlen(e->value); ++i)
> | ^
> x86_64-linux-gnu-gcc -fno-strict-overflow -Wsign-compare -DNDEBUG -g -O2 -Wall -fPIC -Ilib/src -I. -I/opt/haddock/venv/include -I/usr/include/python3.13 -c lib/src/structure.c -o build/temp.linux-x86_64-cpython-313/lib/src/structure.o -DHAVE_CONFIG_H -std=gnu99
> lib/src/structure.c: In function ‘structure_add_atom_wopt_impl’:
> lib/src/structure.c:731:9: warning: ‘strncpy’ specified bound 3 equals destination size [-Wstringop-truncation]
> 731 | strncpy(my_symbol, symbol, sizeof(my_symbol));
> | ^ ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
> In function ‘guess_symbol’,
> inlined from ‘atom_new_from_line’ at lib/src/structure.c:222:9,
> inlined from ‘from_pdb_impl’ at lib/src/structure.c:653:17:
> lib/src/structure.c:426:13: warning: ‘strncpy’ output may be truncated copying 2 bytes from a string of length 4 [-Wstringop-truncation]
> 426 | strncpy(symbol, name, 2);
> | ^ ~~~~~~~~~~~~~~~~~~~~~~~
> x86_64-linux-gnu-gcc -fno-strict-overflow -Wsign-compare -DNDEBUG -g -O2 -Wall -fPIC -Ilib/src -I. -I/opt/haddock/venv/include -I/usr/include/python3.13 -c lib/src/util.c -o build/temp.linux-x86_64-cpython-313/lib/src/util.o -DHAVE_CONFIG_H -std=gnu99
> x86_64-linux-gnu-gcc -fno-strict-overflow -Wsign-compare -DNDEBUG -g -O2 -Wall -fPIC -Ilib/src -I. -I/opt/haddock/venv/include -I/usr/include/python3.13 -c src/freesasa.c -o build/temp.linux-x86_64-cpython-313/src/freesasa.o -DHAVE_CONFIG_H -std=gnu99
> src/freesasa.c:59:10: fatal error: Python.h: Datei oder Verzeichnis nicht gefunden
> 59 | #include "Python.h"
> | ^ ~~~~~~~~~
> compilation terminated.
> error: command '/usr/bin/x86_64-linux-gnu-gcc' failed with exit code 1
> [end of output]
> 
> ```
> 
> note: This error originates from a subprocess, and is likely not a problem with pip.  
> ERROR: Failed building wheel for freesasa  
> Successfully built haddock3  
> Failed to build freesasa  
> ERROR: Failed to build installable wheels for some pyproject.toml based projects (freesasa)  
> (venv) root@raxml:/opt/haddock/haddock3#

I try to follow [haddock3/docs/INSTALL.md at main · haddocking/haddock3 · GitHub](https://github.com/haddocking/haddock3/blob/main/docs/INSTALL.md)

can anyone pse give a hint?

Rainer

---

<div class="post-metadata">

**Author:** ![amjjbonvin](https://dub1.discourse-cdn.com/flex013/user_avatar/ask.bioexcel.eu/amjjbonvin/32/23_2.png) [@amjjbonvin](https://ask.bioexcel.eu/u/amjjbonvin)\
**Post date:** [March 17, 2026, 1:16pm UTC](https://ask.bioexcel.eu/t/error-installing-haddock3/6038/2 "2026-03-17T13:16:00Z")

</div>

Seem like a gcc issue. Which version of gcc do you have?

---

<div class="post-metadata">

**Author:** ![Rainer.Lilischkis](https://avatars.discourse-cdn.com/v4/letter/r/8e7dd6/32.png) [@Rainer.Lilischkis](https://ask.bioexcel.eu/u/Rainer.Lilischkis)\
**Post date:** [March 17, 2026, 2:37pm UTC](https://ask.bioexcel.eu/t/error-installing-haddock3/6038/3 "2026-03-17T14:37:06Z")

</div>

issue is solved.

---

<div class="post-metadata">

**Author:** ![amjjbonvin](https://dub1.discourse-cdn.com/flex013/user_avatar/ask.bioexcel.eu/amjjbonvin/32/23_2.png) [@amjjbonvin](https://ask.bioexcel.eu/u/amjjbonvin)\
**Post date:** [March 23, 2026, 11:00am UTC](https://ask.bioexcel.eu/t/error-installing-haddock3/6038/4 "2026-03-23T11:00:03Z")

</div>

Please post the solution as it could be useful for others.
