Como corrigir erro de linking C++: undefined reference to symbol 'crc32'

Problema:

Ao tentar compilar seu programa C++, durante o estágio de linking, você vê uma mensagem de erro como

error.txt
/bin/ld: minio-cpp/src/utils.o: undefined reference to symbol 'crc32'
/bin/ld: /lib/x86_64-linux-gnu/libz.so.1: error adding symbols: DSO missing from command line
collect2: error: ld returned 1 exit status

Solução

O símbolo crc32 é definido em zlib. Portanto, você precisa linkar zlib adicionando

linker_flags.txt
-lz

às suas flags do linker. Se você não sabe onde estão suas flags do linker, tente apenas adicioná-lo às suas flags do compilador.


Check out similar posts by category: C/C++ GCC Errors