Here are some changes I had to get v0.80 to build under CygWin and FreeBSD:
1. Add 'typename' to ParserSax.tcc line 26, per a previous post. The line now looks like this:
parse(begin, end, typename std::iterator_traits<_Iterator>::iterator_category());
2. Remove the 'const_cast' in CharsetConverter.cc line 38. The line now looks like this:
ret = iconv(mIconvDescriptor, &inbuf, &inbytesleft, &outbuf, &outbytesleft);
3. Add a line to configure.ac for the iconv library. After line 19, which reads:
AC_CHECK_LIB(fl, main)
Add the following line (without deleting the above line):
AC_CHECK_LIB(iconv, iconv_open)
Then proceed with './configure' and 'make install' as normal.
Also, if 'make install' on FreeBSD fails with 'make: Permission denied', that's a FreeBSD bug (described here: http://www.vulnscan.org/UnrealIrcd/faq/#100\). Just type 'cd .' on the command line and try again.
Cheers!
If you would like to refer to this comment somewhere else in this project, copy and paste the following link:
Hey! Thanks for your fixes, it fixed many issues for me trying to compile htmlcxx!
However, it still does not fully compile, as it doesn't seem to find "iconv.h"
I'm using Windows, and MSYS (MinGW shell) to run all the gnu make tools, and I have seperately installed libiconv into the system (default location is /usr/), but it seems like htmlcxx configure cannot find it :(
checking for main in -lfl... no
checking for iconv_open in -liconv... no
Is there anyway I can tell HTMLCXX where to find libiconv?
When I run make, this is outputted:
In file included from CharsetConverter.cc:3:
CharsetConverter.h:4:19: iconv.h: No such file or directory
In file included from CharsetConverter.cc:3:
CharsetConverter.h:26: error: `iconv_t' does not name a type
CharsetConverter.cc: In constructor `htmlcxx::CharsetConverter::CharsetConverter(const std::string&, const std::string&)':
.. and more errors follow.
Thanks in advance, Magnus.
If you would like to refer to this comment somewhere else in this project, copy and paste the following link:
Here are some changes I had to get v0.80 to build under CygWin and FreeBSD:
1. Add 'typename' to ParserSax.tcc line 26, per a previous post. The line now looks like this:
parse(begin, end, typename std::iterator_traits<_Iterator>::iterator_category());
2. Remove the 'const_cast' in CharsetConverter.cc line 38. The line now looks like this:
ret = iconv(mIconvDescriptor, &inbuf, &inbytesleft, &outbuf, &outbytesleft);
3. Add a line to configure.ac for the iconv library. After line 19, which reads:
AC_CHECK_LIB(fl, main)
Add the following line (without deleting the above line):
AC_CHECK_LIB(iconv, iconv_open)
Then run these commands on the command line:
aclocal
autoconf
autoheader
(See http://en.wikipedia.org/wiki/Autoconf\)
Then proceed with './configure' and 'make install' as normal.
Also, if 'make install' on FreeBSD fails with 'make: Permission denied', that's a FreeBSD bug (described here: http://www.vulnscan.org/UnrealIrcd/faq/#100\). Just type 'cd .' on the command line and try again.
Cheers!
Hey! Thanks for your fixes, it fixed many issues for me trying to compile htmlcxx!
However, it still does not fully compile, as it doesn't seem to find "iconv.h"
I'm using Windows, and MSYS (MinGW shell) to run all the gnu make tools, and I have seperately installed libiconv into the system (default location is /usr/), but it seems like htmlcxx configure cannot find it :(
checking for main in -lfl... no
checking for iconv_open in -liconv... no
Is there anyway I can tell HTMLCXX where to find libiconv?
When I run make, this is outputted:
In file included from CharsetConverter.cc:3:
CharsetConverter.h:4:19: iconv.h: No such file or directory
In file included from CharsetConverter.cc:3:
CharsetConverter.h:26: error: `iconv_t' does not name a type
CharsetConverter.cc: In constructor `htmlcxx::CharsetConverter::CharsetConverter(const std::string&, const std::string&)':
.. and more errors follow.
Thanks in advance, Magnus.