You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
When compiling htmldoc 1.9.16 from source, on Solaris 11.4.51.132.1, with gcc 12.1.0, the htmldoc/ps-pdf.cxx file fails to compile:
gmake
Making all in htmldoc...
gmake[1]: Entering directory '/tmp/htmldoc-1.9.16-SunOS-5.11-i386/htmldoc'
Compiling gui.cxx...
Compiling epub.cxx...
Compiling html.cxx...
Compiling htmldoc.cxx...
Compiling htmlsep.cxx...
Compiling license.cxx...
Compiling markdown.cxx...
Compiling mmd.c...
cc1: warning: command-line option ‘-fpermissive’ is valid for C++/ObjC++ but not for C
mmd.c: In function ‘mmdCopyAllText’:
mmd.c:208:33: warning: pointer ‘all’ may be used after ‘realloc’ [-Wuse-after-free]
208 | allptr = temp + (allptr - all);
| ~~~~~~~~^~~~~~
mmd.c:200:19: note: call to ‘realloc’ here
200 | temp = realloc(all, allsize);
| ^~~~~~~~~~~~~~~~~~~~~
Compiling ps-pdf.cxx...
ps-pdf.cxx: In function ‘void pdf_write_links(std::FILE*)’:
ps-pdf.cxx:3469:28: warning: comparison of integer expressions of different signedness: ‘short int’ and ‘std::size_t’ {aka ‘long unsigned int’} [-Wsign-compare]
3469 | if (link->page < num_pages)
| ~~~~~~~~~~~^~~~~~~~~~~
ps-pdf.cxx: In function ‘void write_prolog(std::FILE*, int, uchar*, uchar*, uchar*, uchar*, uchar*)’:
ps-pdf.cxx:11656:28: error: ‘struct std::tm’ has no member named ‘tm_gmtoff’
11656 | (int)(doc_date.tm_gmtoff / 3600));
| ^~~~~~~~~
ps-pdf.cxx:12045:28: error: ‘struct std::tm’ has no member named ‘tm_gmtoff’
12045 | (int)(doc_date.tm_gmtoff / 3600));
| ^~~~~~~~~
gmake[1]: *** [../Makedefs:92: ps-pdf.o] Error 1
gmake[1]: Leaving directory '/tmp/htmldoc-1.9.16-SunOS-5.11-i386/htmldoc'
gmake: *** [Makefile:31: all] Error 1
Upon research, I was able to compile htmldoc 2.9.15 just fine with the same configuration.
I believe this is related to the two following issues/commits: 543d6e3 #472
On Solaris, in /usr/include/iso/time_iso.h, the struct does not contain tm_gmtoff:
struct tm { /* see ctime(3) */
int tm_sec;
int tm_min;
int tm_hour;
int tm_mday;
int tm_mon;
int tm_year;
int tm_wday;
int tm_yday;
int tm_isdst;
};
I noticed that in the configure output, there is a line to detect whether tm_gmtoff exists, while setting HAVE_TM_GMTOFF:
checking for tm_gmtoff member in tm structure... no
I'd imagine you probably don't have a spare Solaris server to compile on, so please let me know if you need me to test compile a fix.
Thanks again for creating/maintaining a great tool!!!
The text was updated successfully, but these errors were encountered:
When compiling htmldoc 1.9.16 from source, on Solaris 11.4.51.132.1, with gcc 12.1.0, the htmldoc/ps-pdf.cxx file fails to compile:
Upon research, I was able to compile htmldoc 2.9.15 just fine with the same configuration.
I believe this is related to the two following issues/commits:
543d6e3
#472
On Solaris, in /usr/include/iso/time_iso.h, the struct does not contain tm_gmtoff:
I noticed that in the configure output, there is a line to detect whether tm_gmtoff exists, while setting HAVE_TM_GMTOFF:
I'd imagine you probably don't have a spare Solaris server to compile on, so please let me know if you need me to test compile a fix.
Thanks again for creating/maintaining a great tool!!!
The text was updated successfully, but these errors were encountered: