--- cuneiform-1.1.0/cuneiform_src/Kern/hhh/tigerh/h/strings.h	2017-11-30 11:25:24.409125695 +0700
+++ cuneiform-1.1.0-char/cuneiform_src/Kern/hhh/tigerh/h/strings.h	2017-11-30 12:09:26.033501963 +0700
@@ -80,6 +80,7 @@ OF THIS SOFTWARE, EVEN IF ADVISED OF THE
 
 # include "ltconfig.h"
 # include "c_types.h"
+# include "cttypes.h"
 
 struct _String;
 typedef struct _String STRING;
--- cuneiform-linux-1.1.0/cuneiform_src/Kern/include/utf8-tables.h	2011-04-19 16:49:57.000000000 +0400
+++ cuneiform-linux-1.1.0.q/cuneiform_src/Kern/include/utf8-tables.h	2017-07-05 16:35:34.338871445 +0300
@@ -68,7 +68,7 @@
 #endif
 
 
-const char win1250_to_utf8[][4] = {
+const unsigned char win1250_to_utf8[][4] = {
   {0, 0, 0, 0},
   {1, 0, 0, 0},
   {2, 0, 0, 0},
@@ -328,7 +328,7 @@
 };
 
 
-const char win1251_to_utf8[][4] = {
+const unsigned char win1251_to_utf8[][4] = {
   {0, 0, 0, 0},
   {1, 0, 0, 0},
   {2, 0, 0, 0},
@@ -587,7 +587,7 @@
   {209, 143, 0, 0},
 };
 
-const char win1252_to_utf8[][4] = {
+const unsigned char win1252_to_utf8[][4] = {
   {0, 0, 0, 0},
   {1, 0, 0, 0},
   {2, 0, 0, 0},
@@ -847,7 +847,7 @@
 };
 
 
-const char win1254_to_utf8[][4] = {
+const unsigned char win1254_to_utf8[][4] = {
   {0, 0, 0, 0},
   {1, 0, 0, 0},
   {2, 0, 0, 0},
@@ -1107,7 +1107,7 @@
 };
 
 
-const char win1257_to_utf8[][4] = {
+const unsigned char win1257_to_utf8[][4] = {
   {0, 0, 0, 0},
   {1, 0, 0, 0},
   {2, 0, 0, 0},
diff -wbBur cuneiform-linux-1.1.0/cuneiform_src/Kern/rfrmt/sources/main/stdafx.h cuneiform-linux-1.1.0.q/cuneiform_src/Kern/rfrmt/sources/main/stdafx.h
--- cuneiform-linux-1.1.0/cuneiform_src/Kern/rfrmt/sources/main/stdafx.h	2011-04-19 16:49:57.000000000 +0400
+++ cuneiform-linux-1.1.0.q/cuneiform_src/Kern/rfrmt/sources/main/stdafx.h	2017-07-05 16:37:23.528866265 +0300
@@ -74,6 +74,9 @@
 //отключаем warning о слишком длинных stl'ных именах
 #pragma warning(disable:4786)
 
+#undef min
+#undef max
+
 #include <vector>
 typedef std::vector<uint16_t> vectorWord;
 
diff -wbBur cuneiform-linux-1.1.0/cuneiform_src/Kern/rimage/sources/main/cricontrol.cpp cuneiform-linux-1.1.0.q/cuneiform_src/Kern/rimage/sources/main/cricontrol.cpp
--- cuneiform-linux-1.1.0/cuneiform_src/Kern/rimage/sources/main/cricontrol.cpp	2011-04-19 16:49:57.000000000 +0400
+++ cuneiform-linux-1.1.0.q/cuneiform_src/Kern/rimage/sources/main/cricontrol.cpp	2017-07-05 16:33:02.962211959 +0300
@@ -594,8 +594,8 @@
 		return FALSE;
 	}
 
-	wNewHeight = (mbMarginsFlag ? abs(mrMargins.rmBottomMarg - mrMargins.rmTopMarg) : mpSourceDIB->GetLinesNumber());
-	wNewWidth = (mbMarginsFlag ? abs(mrMargins.rmLeftMarg - mrMargins.rmRightMarg) : mpSourceDIB->GetLineWidth());
+	wNewHeight = (mbMarginsFlag ? std::abs((long int)(mrMargins.rmBottomMarg - mrMargins.rmTopMarg)) : mpSourceDIB->GetLinesNumber());
+	wNewWidth = (mbMarginsFlag ? std::abs((long int)(mrMargins.rmLeftMarg - mrMargins.rmRightMarg)) : mpSourceDIB->GetLineWidth());
 	mpSourceDIB->GetResolutionDPM( &wXResolution, &wYResolution);
 
 	if ( !mpDestinationDIB->CreateDIBBegin( wNewWidth, wNewHeight, BitCount) )
diff -wbBur cuneiform-linux-1.1.0/cuneiform_src/Kern/rout/src/codetables.cpp cuneiform-linux-1.1.0.q/cuneiform_src/Kern/rout/src/codetables.cpp
--- cuneiform-linux-1.1.0/cuneiform_src/Kern/rout/src/codetables.cpp	2011-04-19 16:49:57.000000000 +0400
+++ cuneiform-linux-1.1.0.q/cuneiform_src/Kern/rout/src/codetables.cpp	2017-07-05 16:36:05.178869982 +0300
@@ -939,11 +939,11 @@
 
 const char * getUTF8Str(const unsigned char in, const int codepage) {
   switch(codepage) {
-  case 1250 : return win1250_to_utf8[in];
-  case 1251 : return win1251_to_utf8[in];
-  case 1252 : return win1252_to_utf8[in];
-  case 1254 : return win1254_to_utf8[in];
-  case 1257 : return win1257_to_utf8[in];
+  case 1250 : return (const char *)win1250_to_utf8[in];
+  case 1251 : return (const char *)win1251_to_utf8[in];
+  case 1252 : return (const char *)win1252_to_utf8[in];
+  case 1254 : return (const char *)win1254_to_utf8[in];
+  case 1257 : return (const char *)win1257_to_utf8[in];
   default : return "?";
   }
 }
