Compile and Install xlhtml on Ubuntu 18.04

Issue #910 closed
Tom Jones created an issue

Obviously xlhtml-0.5.1-sj-mod does not compile under Ubuntu 18.04. During make, the following warnings are presented and no executable is compiled. Since I am not an experienced C developer, I wonder whether a simple solution exists. Any clues are highly appreciated. Thanks in advance!

gcc -DHAVE_CONFIG_H -I. -I. -I.. -Wall -Wcast-align -Wpointer-arith -g -O2 -c cole.c cole.c: In function ‘__cole_print_tree_inroot’: cole.c:277:14: warning: format ‘%u’ expects argument of type ‘unsigned int’, but argument 2 has type ‘size_t {aka long unsigned int}’ [-Wformat=] printf (" %7u", cole_dir_getsize (cd)); ^ ~~~~~ %7lu cole.c: In function ‘__cole_print_tree_indirentry’: cole.c:318:14: warning: format ‘%u’ expects argument of type ‘unsigned int’, but argument 2 has type ‘size_t {aka long unsigned int}’ [-Wformat=] printf (" %7u", cole_direntry_getsize (cde)); ^ ~~~~~ %7lu gcc -DHAVE_CONFIG_H -I. -I. -I.. -Wall -Wcast-align -Wpointer-arith -g -O2 -c internal.c internal.c: In function ‘__cole_extract_file’: internal.c:117:3: warning: ignoring return value of ‘fread’, declared with attribute warn_unused_result [-Wunused-result] fread (Block, bytes_to_copy, 1, infile); ^~~~~~~~~ gcc -DHAVE_CONFIG_H -I. -I. -I.. -Wall -Wcast-align -Wpointer-arith -g -O2 -c oledecod.c oledecod.c: In function ‘__OLEdecode’: oledecod.c:149:3: warning: ignoring return value of ‘fread’, declared with attribute warn_unused_result [-Wunused-result] fread (Block, 0x0200, 1, input); ^~~~~~~ oledecod.c:178:7: warning: ignoring return value of ‘fread’, declared with attribute warn_unused_result [-Wunused-result] fread (s, 0x0200, 1, input); ^~~~~~~ oledecod.c:191:7: warning: ignoring return value of ‘fread’, declared with attribute warn_unused_result [-Wunused-result] fread (Blockx, 0x0200, 1, input); ^~~~~~~~ oledecod.c:205:7: warning: ignoring return value of ‘fread’, declared with attribute warn_unused_result [-Wunused-result] fread (s, 0x0200, 1, input); ^~~~~~~ oledecod.c:262:4: warning: ignoring return value of ‘fread’, declared with attribute warn_unused_result [-Wunused-result] fread (s, 0x0200, 1, input); ^~~~~~~ oledecod.c:303:7: warning: ignoring return value of ‘fread’, declared with attribute warn_unused_result [-Wunused-result] fread (s, 0x0200, 1, input); ^~~~~~~ oledecod.c:565:6: warning: ignoring return value of ‘fread’, declared with attribute warn_unused_result [-Wunused-result] fread (Block, bytes_to_read, 1, infile); ^~~~~~~~~ gcc -DHAVE_CONFIG_H -I. -I. -I.. -Wall -Wcast-align -Wpointer-arith -g -O2 -c olecod.c olecod.c: In function ‘add_entry_to_Root’: olecod.c:428:60: warning: ‘*’ in boolean context, suggest ‘&&’ instead [-Wint-in-bool-context] olecod.c:136:28: #define size2blocks(s,b) (!(s) ? 1 : (1+((s)-1)/(b))) ~ olecod.c:428:60: (BDepot->blocks) = size2blocks (sum_block_list (BDepot) * sizeof (U32), 0x0200); olecod.c:136:29: note: in definition of macro ‘size2blocks’ #define size2blocks(s,b) (!(s) ? 1 : (1+((s)-1)/(b))) ^ olecod.c: In function ‘add_stream_to_sbfile_and_SDepot’: olecod.c:461:60: warning: ‘’ in boolean context, suggest ‘&&’ instead [-Wint-in-bool-context] olecod.c:136:28: #define size2blocks(s,b) (!(s) ? 1 : (1+((s)-1)/(b))) ~ olecod.c:461:60: (SDepot->blocks) = size2blocks (sum_block_list (SDepot) * sizeof (U32), 0x0200); olecod.c:136:29: note: in definition of macro ‘size2blocks’ #define size2blocks(s,b) (!(s) ? 1 : (1+((s)-1)/(b))) ^ olecod.c:472:69: warning: ‘’ in boolean context, suggest ‘&&’ instead [-Wint-in-bool-context] olecod.c:136:28: #define size2blocks(s,b) (!(s) ? 1 : (1+((s)-1)/(b))) ~ olecod.c:472:69: (sbfile->blocks) = size2blocks (sum_blocks_MY_FILE_list (sbfile) * 0x40, 0x0200); olecod.c:136:29: note: in definition of macro ‘size2blocks’ #define size2blocks(s,b) (!(s) ? 1 : (1+((s)-1)/(b))) ^ olecod.c:477:60: warning: ‘’ in boolean context, suggest ‘&&’ instead [-Wint-in-bool-context] olecod.c:136:28: #define size2blocks(s,b) (!(s) ? 1 : (1+((s)-1)/(b))) ~ olecod.c:477:60: (BDepot->blocks) = size2blocks (sum_block_list (BDepot) * sizeof (U32), 0x0200); olecod.c:136:29: note: in definition of macro ‘size2blocks’ #define size2blocks(s,b) (!(s) ? 1 : (1+((s)-1)/(b))) ^ olecod.c: In function ‘add_stream_to_Input_and_BDepot’: olecod.c:510:60: warning: ‘’ in boolean context, suggest ‘&&’ instead [-Wint-in-bool-context] olecod.c:136:28: #define size2blocks(s,b) (!(s) ? 1 : (1+((s)-1)/(b))) ~ olecod.c:510:60: (BDepot->blocks) = size2blocks (sum_block_list (BDepot) * sizeof (U32), 0x0200); olecod.c:136:29: note: in definition of macro ‘size2blocks’ #define size2blocks(s,b) (!(s) ? 1 : (1+((s)-1)/(b))) ^ olecod.c:524:60: warning: ‘’ in boolean context, suggest ‘&&’ instead [-Wint-in-bool-context] olecod.c:136:28: #define size2blocks(s,b) (!(s) ? 1 : (1+((s)-1)/(b))) ~ olecod.c:524:60: (BDepot->blocks) = size2blocks (sum_block_list (BDepot) * sizeof (U32), 0x0200); olecod.c:136:29: note: in definition of macro ‘size2blocks’ #define size2blocks(s,b) (!(s) ? 1 : (1+((s)-1)/(b))) ^ In file included from olecod.c:26:0: olecod.c: In function ‘calculate_blocks’: olecod.c:1216:37: warning: ‘’ in boolean context, suggest ‘&&’ instead [-Wint-in-bool-context] olecod.c:137:42: #define size2blocks_preserve_zero(s,b) (!(s) ? 0 : (1+((s)-1)/(b))) ~ olecod.c:1216:37: sum_blocks_MY_FILE_list (sbfile) * 0x40, 0x0200)); olecod.c:1215:32: note: in expansion of macro ‘size2blocks_preserve_zero’ assert ((sbfile->blocks) == size2blocks_preserve_zero ( ^~~~~~~ olecod.c:1216:37: warning: ‘*’ in boolean context, suggest ‘&&’ instead [-Wint-in-bool-context] olecod.c:137:42: #define size2blocks_preserve_zero(s,b) (!(s) ? 0 : (1+((s)-1)/(b))) ~ olecod.c:1216:37: sum_blocks_MY_FILE_list (sbfile) * 0x40, 0x0200)); olecod.c:1215:32: note: in expansion of macro ‘size2blocks_preserve_zero’ assert ((sbfile->blocks) == size2blocks_preserve_zero ( ^~~~~~~ olecod.c:1218:29: warning: ‘*’ in boolean context, suggest ‘&&’ instead [-Wint-in-bool-context] olecod.c:137:42: #define size2blocks_preserve_zero(s,b) (!(s) ? 0 : (1+((s)-1)/(b))) ~ olecod.c:1218:29: (sum_block_list (SDepot) * sizeof (U32)), 0x0200)); olecod.c:1217:32: note: in expansion of macro ‘size2blocks_preserve_zero’ assert ((SDepot->blocks) == size2blocks_preserve_zero ( ^~~~~~~ olecod.c:1218:29: warning: ‘*’ in boolean context, suggest ‘&&’ instead [-Wint-in-bool-context] olecod.c:137:42: #define size2blocks_preserve_zero(s,b) (!(s) ? 0 : (1+((s)-1)/(b))) ~ olecod.c:1218:29: (sum_block_list (SDepot) * sizeof (U32)), 0x0200)); olecod.c:1217:32: note: in expansion of macro ‘size2blocks_preserve_zero’ assert ((SDepot->blocks) == size2blocks_preserve_zero ( ^~~~~~~ olecod.c:1224:53: warning: ‘*’ in boolean context, suggest ‘&&’ instead [-Wint-in-bool-context] olecod.c:136:28: #define size2blocks(s,b) (!(s) ? 1 : (1+((s)-1)/(b))) ~ olecod.c:1224:53: header_blocks = size2blocks ((19 + BDepot_blocks) * sizeof(U32), 0x0200); olecod.c:136:29: note: in definition of macro ‘size2blocks’ #define size2blocks(s,b) (!(s) ? 1 : (1+((s)-1)/(b))) ^ gcc -DHAVE_CONFIG_H -I. -I. -I.. -Wall -Wcast-align -Wpointer-arith -g -O2 -c support.c support.c: In function ‘__cole_dump’: support.c:141:35: warning: format ‘%x’ expects argument of type ‘unsigned int’, but argument 3 has type ‘long int’ [-Wformat=] printf ("VERBOSE: %s (from 0x%08x length 0x%08x (%d)):\n", ~^ %08lx msg, m - start, length, length); ~ support.c:147:16: warning: format ‘%x’ expects argument of type ‘unsigned int’, but argument 2 has type ‘long int’ [-Wformat=] printf ("%08x ", (pm - m) + (m - start)); ~^ ~~~~~~ %08lx gcc -DHAVE_CONFIG_H -I. -I. -I.. -Wall -Wcast-align -Wpointer-arith -g -O2 -c version.c rm -f libcole.a ar cru libcole.a cole.o internal.o oledecod.o olecod.o support.o version.o ar: u' modifier ignored sinceD' is the default (see `U') ranlib libcole.a

Comments (5)

  1. Janos SUTO repo owner

    These are warnings. Do you have ppthtml/ppthtml at the end of the process? If so, then run make install, and you should be fine.

  2. Tom Jones reporter

    Yes, after compiling and installing it now lives in /usr/local/bin. Thanks for asking again!

  3. Log in to comment