Skip to content

Instantly share code, notes, and snippets.

@moonwatcher
Created January 5, 2018 22:44
Show Gist options
  • Star 1 You must be signed in to star a gist
  • Fork 0 You must be signed in to fork a gist
  • Save moonwatcher/5698a70fe4be81d1277ee0296c4c8b0c to your computer and use it in GitHub Desktop.
Save moonwatcher/5698a70fe4be81d1277ee0296c4c8b0c to your computer and use it in GitHub Desktop.
/home/lg1883/bcl2fastq/src/cxx/lib/io/Xml.cpp: In function ‘std::ostream& bcl2fastq::io::serializeAsXml(std::ostream&, const ptree&)’:
/home/lg1883/bcl2fastq/src/cxx/lib/io/Xml.cpp:172:123: error: no matching function for call to ‘xml_writer_make_settings(char, int)’
boost::property_tree::write_xml(os, treeWithIndexAttributes, boost::property_tree::xml_writer_make_settings(' ', 2));
^
In file included from /usr/include/boost/property_tree/detail/xml_parser_utils.hpp:15:0,
from /usr/include/boost/property_tree/detail/xml_parser_write.hpp:15,
from /usr/include/boost/property_tree/xml_parser.hpp:15,
from /home/lg1883/bcl2fastq/src/cxx/lib/io/Xml.cpp:26:
/usr/include/boost/property_tree/detail/xml_parser_writer_settings.hpp:55:30: note: candidate: template<class Str> boost::property_tree::xml_parser::xml_writer_settings<Str> boost::property_tree::xml_parser::xml_writer_make_settings(typename Str::value_type, typename Str::size_type, const Str&)
xml_writer_settings<Str> xml_writer_make_settings(typename Str::value_type indent_char = (typename Str::value_type)(' '),
^
/usr/include/boost/property_tree/detail/xml_parser_writer_settings.hpp:55:30: note: template argument deduction/substitution failed:
/home/lg1883/bcl2fastq/src/cxx/lib/io/Xml.cpp:172:123: note: couldn't deduce template parameter ‘Str’
boost::property_tree::write_xml(os, treeWithIndexAttributes, boost::property_tree::xml_writer_make_settings(' ', 2));
^
/home/lg1883/bcl2fastq/src/cxx/lib/io/Xml.cpp:180:104: error: no matching function for call to ‘xml_writer_make_settings(char, int)’
boost::property_tree::write_xml(os, tree, boost::property_tree::xml_writer_make_settings(' ', 2));
^
In file included from /usr/include/boost/property_tree/detail/xml_parser_utils.hpp:15:0,
from /usr/include/boost/property_tree/detail/xml_parser_write.hpp:15,
from /usr/include/boost/property_tree/xml_parser.hpp:15,
from /home/lg1883/bcl2fastq/src/cxx/lib/io/Xml.cpp:26:
/usr/include/boost/property_tree/detail/xml_parser_writer_settings.hpp:55:30: note: candidate: template<class Str> boost::property_tree::xml_parser::xml_writer_settings<Str> boost::property_tree::xml_parser::xml_writer_make_settings(typename Str::value_type, typename Str::size_type, const Str&)
xml_writer_settings<Str> xml_writer_make_settings(typename Str::value_type indent_char = (typename Str::value_type)(' '),
^
/usr/include/boost/property_tree/detail/xml_parser_writer_settings.hpp:55:30: note: template argument deduction/substitution failed:
/home/lg1883/bcl2fastq/src/cxx/lib/io/Xml.cpp:180:104: note: couldn't deduce template parameter ‘Str’
boost::property_tree::write_xml(os, tree, boost::property_tree::xml_writer_make_settings(' ', 2));
^
cxx/lib/io/CMakeFiles/bcl2fastq_io.dir/build.make:126: recipe for target 'cxx/lib/io/CMakeFiles/bcl2fastq_io.dir/Xml.cpp.o' failed
make[2]: *** [cxx/lib/io/CMakeFiles/bcl2fastq_io.dir/Xml.cpp.o] Error 1
CMakeFiles/Makefile2:357: recipe for target 'cxx/lib/io/CMakeFiles/bcl2fastq_io.dir/all' failed
make[1]: *** [cxx/lib/io/CMakeFiles/bcl2fastq_io.dir/all] Error 2
Makefile:126: recipe for target 'all' failed
make: *** [all] Error 2
@kemin711
Copy link

I have the same problem and will find a solution:

bcl2fastq/src/cxx/lib/io/Xml.cpp:172:123: error: no matching function for call to ‘xml_writer_make_settings(char, int)’
::property_tree::write_xml(os, treeWithIndexAttributes, boost::property_tree::xml_writer_make_settings(' ', 2));

@hafizmtalha
Copy link

i am having same error...! kindly help

@rafaeltiveron
Copy link

Same result! Version 2.20.0.422

@rafaeltiveron
Copy link

rafaeltiveron commented May 5, 2018

Oh yeah, Backward Incompatible saved my life. Go to edit src/cxx/lib/io/Xml.cpp and throw away the following:

-#ifndef WIN32
-        boost::property_tree::write_xml(os, treeWithIndexAttributes, boost::property_tree::xml_writer_make_settings(' ', 2));
-#else

-#endif



-#ifndef WIN32
-        boost::property_tree::write_xml(os, tree, boost::property_tree::xml_writer_make_settings(' ', 2));
-#else

-#endif

Reconfigure and try to rebuild.

@bug1303
Copy link

bug1303 commented Feb 15, 2019

Thanks @rafaeltiveron managed to build with your edit.

@GildasLepennetier
Copy link

GildasLepennetier commented Feb 11, 2020

EDIT: after system upgrade to Tara, this is not working any more.
Someone there: https://www.biostars.org/p/387127/
Propose the following for 2.19: Perhaps you should save yourself the trouble and use conda to install: https://anaconda.org/dranew/bcl2fastq
ALSO: the 2.20 can be installed: conda install -c bih-cubi bcl2fastq2

@rafaeltiveron

The make is not crashing any more, thanks. But what the hell? I wanted to update my bcl2fastq from 2.19 -> 2.20 and just spend an afternoon debugging. System: Ubuntu (Mint)

sudo alien bcl2fastq2-v2.20.0.422-Linux-x86_64.rpm

dpkg-deb: error: control directory has bad permissions 777 (must be >=0755 and <=0775)
dh_builddeb: dpkg-deb --build debian/bcl2fastq2 .. returned exit code 2
debian/rules:17: recipe for target 'binary-arch' failed
make: *** [binary-arch] Error 1

Okay, so trying to build...

cd ${BUILD}
${SOURCE}/src/configure --prefix=${INSTALL_DIR}

-- Configuring incomplete, errors occurred!

CMake Error at cmake/macros.cmake:80 (message):
  Required header **sys/stat.h** not found.

Apparently fixed with:

export C_INCLUDE_PATH=/usr/include/x86_64-linux-gnu

cd ${BUILD}
${SOURCE}/src/configure --prefix=${INSTALL_DIR}

The build directory XXX/bcl2fastq2-v2.20.0-build was configured successfully
Type make at the top level of the root directory to build BCL2FASTQ

make**!!**

make[2]: *** [cxx/lib/io/CMakeFiles/bcl2fastq_io.dir/Xml.cpp.o] Error 1
CMakeFiles/Makefile2:354: recipe for target 'cxx/lib/io/CMakeFiles/bcl2fastq_io.dir/all' failed
make[1]: *** [cxx/lib/io/CMakeFiles/bcl2fastq_io.dir/all] Error 2
Makefile:123: recipe for target 'all' failed
make: *** [all] Error 2

Edit src/cxx/lib/io/Xml.cpp

cd ${BUILD}
${SOURCE}/src/configure --prefix=${INSTALL_DIR}
make**!!!!**

[100%] Built target bcl2fastq

But... will that work as expected?

make install

bcl2fastq -h

BCL to FASTQ file converter
bcl2fastq v2.20.0.422

Yeah.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment