Skip to content

"multiple definition" errors during linking #92

@wzel

Description

@wzel

Describe the bug
I'm trying to package docxBox for GNU Guix. When running make, I'm getting a long series of "multiple definition" errors related to miniz-cpp (trimmed down to the first three errors):

/gnu/store/zga679c4nldah9l8dhd5a4hdy820hcyf-cmake-minimal-3.21.4/bin/cmake 
-S/tmp/guix-build-docxbox-0.0.5.drv-0/docxBox-0.0.5 -B/tmp/guix-build-docxbox-0.0.5.drv-0/build --check-build-system 
CMakeFiles/Makefile.cmake 0
/gnu/store/zga679c4nldah9l8dhd5a4hdy820hcyf-cmake-minimal-3.21.4/bin/cmake -E cmake_progress_start 
/tmp/guix-build-docxbox-0.0.5.drv-0/build/CMakeFiles 
/tmp/guix-build-docxbox-0.0.5.drv-0/build//CMakeFiles/progress.marks
make  -f CMakeFiles/Makefile2 all
make[1]: Entering directory '/tmp/guix-build-docxbox-0.0.5.drv-1/build'
make  -f CMakeFiles/docxbox.dir/build.make CMakeFiles/docxbox.dir/depend
make[2]: Entering directory '/tmp/guix-build-docxbox-0.0.5.drv-1/build'
cd /tmp/guix-build-docxbox-0.0.5.drv-0/build && 
/gnu/store/zga679c4nldah9l8dhd5a4hdy820hcyf-cmake-minimal-3.21.4/bin/cmake -E cmake_depends "Unix Makefiles" 
/tmp/guix-build-docxbox-0.0.5.drv-0/docxBox-0.0.5 /tmp/guix-build-docxbox-0.0.5.drv-0/docxBox-0.0.5 
/tmp/guix-build-docxbox-0.0.5.drv-0/build /tmp/guix-build-docxbox-0.0.5.drv-0/build 
/tmp/guix-build-docxbox-0.0.5.drv-0/build/CMakeFiles/docxbox.dir/DependInfo.cmake --color=
make[2]: Leaving directory '/tmp/guix-build-docxbox-0.0.5.drv-1/build'
make  -f CMakeFiles/docxbox.dir/build.make CMakeFiles/docxbox.dir/build
make[2]: Entering directory '/tmp/guix-build-docxbox-0.0.5.drv-1/build'
[  2%] Linking CXX executable bin/linux/docxbox
/gnu/store/zga679c4nldah9l8dhd5a4hdy820hcyf-cmake-minimal-3.21.4/bin/cmake -E cmake_link_script 
CMakeFiles/docxbox.dir/link.txt --verbose=1
/gnu/store/069aq2v993kpc41yabp5b6vm4wb9jkhg-gcc-10.3.0/bin/c++ -fpermissive -Wno-error -O2 -g -DNDEBUG 
CMakeFiles/docxbox.dir/docxbox/main.cc.o CMakeFiles/docxbox.dir/docxbox/app/app.cc.o 
CMakeFiles/docxbox.dir/docxbox/app/app_argument.cc.o CMakeFiles/docxbox.dir/docxbox/app/app_command.cc.o 
CMakeFiles/docxbox.dir/docxbox/app/app_log.cc.o CMakeFiles/docxbox.dir/docxbox/app/app_help.cc.o 
CMakeFiles/docxbox.dir/docxbox/docx/docx_batch.cc.o CMakeFiles/docxbox.dir/docxbox/docx/docx_diff.cc.o 
CMakeFiles/docxbox.dir/docxbox/docx/docx_compare.cc.o CMakeFiles/docxbox.dir/docxbox/docx/archive/docx_archive.cc.o 
CMakeFiles/docxbox.dir/docxbox/docx/archive/docx_archive_list.cc.o 
CMakeFiles/docxbox.dir/docxbox/docx/archive/docx_archive_replace.cc.o 
CMakeFiles/docxbox.dir/docxbox/docx/component/contentTypes.cc.o 
CMakeFiles/docxbox.dir/docxbox/docx/component/fontTable.cc.o CMakeFiles/docxbox.dir/docxbox/docx/component/meta.cc.o 
CMakeFiles/docxbox.dir/docxbox/docx/component/media.cc.o CMakeFiles/docxbox.dir/docxbox/docx/component/numbering.cc.o 
CMakeFiles/docxbox.dir/docxbox/docx/component/partNames.cc.o CMakeFiles/docxbox.dir/docxbox/docx/component/rels.cc.o 
CMakeFiles/docxbox.dir/docxbox/docx/component/styles.cc.o 
CMakeFiles/docxbox.dir/docxbox/docx/renderer/docx_renderer.cc.o 
CMakeFiles/docxbox.dir/docxbox/docx/renderer/docx_renderer_delegate.cc.o 
CMakeFiles/docxbox.dir/docxbox/docx/renderer/contentType/docx_renderer_heading.cc.o 
CMakeFiles/docxbox.dir/docxbox/docx/renderer/contentType/docx_renderer_image.cc.o 
CMakeFiles/docxbox.dir/docxbox/docx/renderer/contentType/docx_renderer_link.cc.o 
CMakeFiles/docxbox.dir/docxbox/docx/renderer/contentType/docx_renderer_list.cc.o 
CMakeFiles/docxbox.dir/docxbox/docx/renderer/contentType/docx_renderer_paragraph.cc.o 
CMakeFiles/docxbox.dir/docxbox/docx/renderer/component/docx_renderer_rels.cc.o 
CMakeFiles/docxbox.dir/docxbox/docx/renderer/component/docx_renderer_styles.cc.o 
CMakeFiles/docxbox.dir/docxbox/docx/renderer/contentType/docx_renderer_table.cc.o 
CMakeFiles/docxbox.dir/docxbox/docx/renderer/contentType/docx_renderer_text.cc.o 
CMakeFiles/docxbox.dir/docxbox/docx/xml/docx_xml.cc.o 
CMakeFiles/docxbox.dir/docxbox/docx/xml/contentType/docx_xml_field.cc.o 
CMakeFiles/docxbox.dir/docxbox/docx/xml/component/docx_xml_contentTypes.cc.o 
CMakeFiles/docxbox.dir/docxbox/docx/xml/component/docx_xml_rels.cc.o 
CMakeFiles/docxbox.dir/docxbox/docx/xml/component/docx_xml_styles.cc.o 
CMakeFiles/docxbox.dir/docxbox/docx/xml/visitor/docx_xml_lorem.cc.o 
CMakeFiles/docxbox.dir/docxbox/docx/xml/visitor/docx_xml_to_plaintext.cc.o 
CMakeFiles/docxbox.dir/docxbox/docx/xml/visitor/docx_xml_remove.cc.o 
CMakeFiles/docxbox.dir/docxbox/docx/xml/visitor/docx_xml_replace.cc.o 
CMakeFiles/docxbox.dir/docxbox/helper/helper_cli.cc.o CMakeFiles/docxbox.dir/docxbox/helper/helper_dateTime.cc.o 
CMakeFiles/docxbox.dir/docxbox/helper/helper_file.cc.o CMakeFiles/docxbox.dir/docxbox/helper/helper_json.cc.o 
CMakeFiles/docxbox.dir/docxbox/helper/helper_string.cc.o CMakeFiles/docxbox.dir/docxbox/helper/helper_numeric.cc.o 
CMakeFiles/docxbox.dir/docxbox/helper/helper_xml.cc.o CMakeFiles/docxbox.dir/vendor/tinyxml2/tinyxml2.cpp.o -o 
bin/linux/docxbox 
ld: CMakeFiles/docxbox.dir/docxbox/app/app.cc.o: in function `mz_adler32':
/tmp/guix-build-docxbox-0.0.5.drv-0/docxBox-0.0.5/vendor/miniz-cpp/zip_file.hpp:1021: multiple definition of 
`mz_adler32'; 
CMakeFiles/docxbox.dir/docxbox/main.cc.o:/tmp/guix-build-docxbox-0.0.5.drv-0/docxBox-0.0.5/vendor/miniz-cpp/zip_file.hpp
:1021: first defined here
ld: CMakeFiles/docxbox.dir/docxbox/app/app.cc.o: in function `mz_crc32':
/tmp/guix-build-docxbox-0.0.5.drv-0/docxBox-0.0.5/vendor/miniz-cpp/zip_file.hpp:1040: multiple definition of 
`mz_crc32'; 
CMakeFiles/docxbox.dir/docxbox/main.cc.o:/tmp/guix-build-docxbox-0.0.5.drv-0/docxBox-0.0.5/vendor/miniz-cpp/zip_file.hpp
:1040: first defined here
ld: CMakeFiles/docxbox.dir/docxbox/app/app.cc.o: in function `mz_free':
/tmp/guix-build-docxbox-0.0.5.drv-0/docxBox-0.0.5/vendor/miniz-cpp/zip_file.hpp:1048: multiple definition of `mz_free'; 
CMakeFiles/docxbox.dir/docxbox/main.cc.o:/tmp/guix-build-docxbox-0.0.5.drv-0/docxBox-0.0.5/vendor/miniz-cpp/zip_file.hpp
:1048: first defined here

To Reproduce
Steps to reproduce the behavior:

  1. Command 'make'

Expected behavior
A successful build was expected.

Environment:

Metadata

Metadata

Assignees

Labels

No labels
No labels

Type

No type

Projects

No projects

Milestone

No milestone

Relationships

None yet

Development

No branches or pull requests

Issue actions