Closed Irallia closed 2 years ago
In order to fix linkage problems
[100%] Linking CXX executable ../bin/iGenVar duplicate symbol '__ZN3bio6detail22type_descriptor_is_intENS0_19bcf_type_descriptorE' in: CMakeFiles/iGenVar.dir/iGenVar.cpp.o ../lib/libiGenVar_lib.a(variant_output.cpp.o) duplicate symbol '__ZN3bio6detail31value_type_id_2_type_descriptorENS_6var_io13value_type_idE' in: CMakeFiles/iGenVar.dir/iGenVar.cpp.o ../lib/libiGenVar_lib.a(variant_output.cpp.o) ld: 2 duplicate symbols for architecture x86_64 collect2: error: ld returned 1 exit status make[2]: *** [bin/iGenVar] Error 1 make[1]: *** [src/CMakeFiles/iGenVar.dir/all] Error 2 make: *** [all] Error 2
These functions type_descriptor_is_int() and value_type_id_2_type_descriptor() must be inline.
type_descriptor_is_int()
value_type_id_2_type_descriptor()
We need to port this test from SeqAn3: https://github.com/seqan/seqan3/tree/master/test/header
It detects the kind of problems and prevents it from being introduced again.
In order to fix linkage problems
These functions
type_descriptor_is_int()
andvalue_type_id_2_type_descriptor()
must be inline.