Try compile refactoring branch

Bug #476602 reported by Kuzemko Aleksandr
6
This bug affects 1 person
Affects Status Importance Assigned to Milestone
Cuneiform for Linux
Fix Released
Undecided
Serge Poltavsky

Bug Description

I try compile refactoring branch. I get error

[ 5%] Built target alphabets
[ 5%] Building CXX object src/ccom/CMakeFiles/ccom.dir/ccom.cpp.o
/home/mgraf/refactoring/src/ccom/ccom.cpp: In function ‘Bool32 CCOM_GetExportData(uint32_t, void*)’:
/home/mgraf/refactoring/src/ccom/ccom.cpp:1167: Error: cast from ‘CCOM_comp* (*)(void*, int32_t, int32_t, int32_t, int32_t)’ to ‘uint32_t’ loses precision
/home/mgraf/refactoring/src/ccom/ccom.cpp:1170: Error: cast from ‘Bool32 (*)(CCOM_comp*, int16_t, int32_t, uchar*, int16_t, uchar, uchar, RecVersions*, CCOM_USER_BLOCK*)’ to ‘uint32_t’ loses precision
/home/mgraf/refactoring/src/ccom/ccom.cpp:1173: Error: cast from ‘Bool32 (*)(CCOM_comp*, CCOM_comp*)’ to ‘uint32_t’ loses precision
/home/mgraf/refactoring/src/ccom/ccom.cpp:1176: Error: cast from ‘Bool32 (*)(void*, CCOM_comp*)’ to ‘uint32_t’ loses precision
/home/mgraf/refactoring/src/ccom/ccom.cpp:1179: Error: cast from ‘CCOM_comp* (*)(void*, Bool32 (*)(int32_t, int32_t, int32_t, int32_t))’ to ‘uint32_t’ loses precision
/home/mgraf/refactoring/src/ccom/ccom.cpp:1182: Error: cast from ‘CCOM_comp* (*)(CCOM_comp*, Bool32 (*)(int32_t, int32_t, int32_t, int32_t))’ to ‘uint32_t’ loses precision
/home/mgraf/refactoring/src/ccom/ccom.cpp:1185: Error: cast from ‘int16_t (*)(CCOM_comp*, CCOM_linerep*)’ to ‘uint32_t’ loses precision
/home/mgraf/refactoring/src/ccom/ccom.cpp:1188: Error: cast from ‘Bool32 (*)(CCOM_comp*, RecRaster*)’ to ‘uint32_t’ loses precision
/home/mgraf/refactoring/src/ccom/ccom.cpp:1191: Error: cast from ‘Bool32 (*)(CCOM_comp*, RecVersions*)’ to ‘uint32_t’ loses precision
/home/mgraf/refactoring/src/ccom/ccom.cpp:1194: Error: cast from ‘Bool32 (*)(CCOM_comp*, CCOM_USER_BLOCK*)’ to ‘uint32_t’ loses precision
/home/mgraf/refactoring/src/ccom/ccom.cpp:1197: Error: cast from ‘void* (*)()’ to ‘uint32_t’ loses precision
/home/mgraf/refactoring/src/ccom/ccom.cpp:1200: Error: cast from ‘Bool32 (*)(void*)’ to ‘uint32_t’ loses precision
/home/mgraf/refactoring/src/ccom/ccom.cpp:1203: Error: cast from ‘Bool32 (*)(CCOM_comp*, RecRaster*)’ to ‘uint32_t’ loses precision
/home/mgraf/refactoring/src/ccom/ccom.cpp:1206: Error: cast from ‘Bool32 (*)(RecRaster*, uchar*, int16_t*, int16_t*)’ to ‘uint32_t’ loses precision
/home/mgraf/refactoring/src/ccom/ccom.cpp:1209: Error: cast from ‘Bool32 (*)(CCOM_comp*, CCOM_USER_BLOCK*)’ to ‘uint32_t’ loses precision
/home/mgraf/refactoring/src/ccom/ccom.cpp:1212: Error: cast from ‘int32_t (*)()’ to ‘uint32_t’ loses precision
/home/mgraf/refactoring/src/ccom/ccom.cpp:1218: Error: cast from ‘Bool32 (*)(void*)’ to ‘uint32_t’ loses precision
/home/mgraf/refactoring/src/ccom/ccom.cpp:1221: Error: cast from ‘void* (*)()’ to ‘uint32_t’ loses precision
/home/mgraf/refactoring/src/ccom/ccom.cpp:1224: Error: cast from ‘void (*)()’ to ‘uint32_t’ loses precision
/home/mgraf/refactoring/src/ccom/ccom.cpp:1227: Error: cast from ‘CCOM_comp* (*)(void*, int32_t, int32_t, int32_t, int32_t, int32_t)’ to ‘uint32_t’ loses precision
/home/mgraf/refactoring/src/ccom/ccom.cpp:1230: Error: cast from ‘Bool32 (*)(CCOM_comp*, CCOM_lnhead**)’ to ‘uint32_t’ loses precision
/home/mgraf/refactoring/src/ccom/ccom.cpp:1233: Error: cast from ‘Bool32 (*)(CCOM_comp*, int16_t, int16_t)’ to ‘uint32_t’ loses precision
/home/mgraf/refactoring/src/ccom/ccom.cpp:1236: Error: cast from ‘void (*)(CCOM_comp*)’ to ‘uint32_t’ loses precision
/home/mgraf/refactoring/src/ccom/ccom.cpp:1239: Error: cast from ‘Bool32 (*)(Bool32)’ to ‘uint32_t’ loses precision
/home/mgraf/refactoring/src/ccom/ccom.cpp:1242: Error: cast from ‘Bool32 (*)(CCOM_comp*)’ to ‘uint32_t’ loses precision
/home/mgraf/refactoring/src/ccom/ccom.cpp:1245: Error: cast from ‘Bool32 (*)(CCOM_comp*, RecRaster*)’ to ‘uint32_t’ loses precision
/home/mgraf/refactoring/src/ccom/ccom.cpp:1248: Error: cast from ‘Bool32 (*)(void*)’ to ‘uint32_t’ loses precision
/home/mgraf/refactoring/src/ccom/ccom.cpp:1251: Error: cast from ‘Bool32 (*)(CCOM_comp*, RecRaster*, int32_t)’ to ‘uint32_t’ loses precision
/home/mgraf/refactoring/src/ccom/ccom.cpp:1254: Error: cast from ‘Bool32 (*)(void*)’ to ‘uint32_t’ loses precision
/home/mgraf/refactoring/src/ccom/ccom.cpp:1257: Error: cast from ‘Bool32 (*)(void*, int16_t)’ to ‘uint32_t’ loses precision
/home/mgraf/refactoring/src/ccom/ccom.cpp:1260: Error: cast from ‘Bool32 (*)(void*, int16_t*)’ to ‘uint32_t’ loses precision
/home/mgraf/refactoring/src/ccom/ccom.cpp:1263: Error: cast from ‘Bool32 (*)(void*)’ to ‘uint32_t’ loses precision
/home/mgraf/refactoring/src/ccom/ccom.cpp:1269: Error: cast from ‘Bool32 (*)(CCOM_comp*)’ to ‘uint32_t’ loses precision
/home/mgraf/refactoring/src/ccom/ccom.cpp:1272: Error: cast from ‘Bool32 (*)(CCOM_comp*, int16_t, int16_t, RecRaster*)’ to ‘uint32_t’ loses precision
make[2]: *** [src/ccom/CMakeFiles/ccom.dir/ccom.cpp.o] Error 1
make[1]: *** [src/ccom/CMakeFiles/ccom.dir/all] Error 2
make: *** [all] Error 2

I use gcc 4.4.2

Changed in cuneiform-linux:
assignee: nobody → Serj Poltavskiy (serge-uliss)
Revision history for this message
Serge Poltavsky (serge-uliss) wrote :

Seems that problem in you compile flags -Wall or -Wextra, cause with my gcc 4.3.4 I can't reproduce this warning.
Try to disable them

Revision history for this message
Serge Poltavsky (serge-uliss) wrote :

In latest revision 958 I removed warning flags from default build type. So could you try again?

Revision history for this message
Kuzemko Aleksandr (kuzemkoa-rambler) wrote :

I try last revision. It is same error message. I try with gcc 4.3.4.

Revision history for this message
Serge Poltavsky (serge-uliss) wrote :

What system you use? I installed i686-pc-linux-gnu-g++-4.4.2 (Gentoo 4.4.2 p1.0) 4.4.2, 32-bit
But also have no errors during compilation.
Also it looks strange that it fails, cause I made no changes to original code in that place

Revision history for this message
Kuzemko Aleksandr (kuzemkoa-rambler) wrote :
Download full text (35.9 KiB)

I use ~amd64 Gentoo.
With 960 revision I get:

[ 5%] Built target alphabets
[ 6%] Built target common
[ 6%] Building CXX object src/ccom/CMakeFiles/ccom.dir/ccom.cpp.o
[ 7%] Building CXX object src/ccom/CMakeFiles/ccom.dir/ccom_loc.cpp.o
Linking CXX shared library ../../libccom.so
[ 7%] Built target ccom
Scanning dependencies of target cstr
[ 7%] Building CXX object src/cstr/CMakeFiles/cstr.dir/cgraph.cpp.o
/home/mgraf/refactoring/src/cstr/cgraph.cpp: In function ‘Bool32 CGRAPH_RestoreLoop(strucCSTR_cell*, FILE*)’:
/home/mgraf/refactoring/src/cstr/cgraph.cpp:519: предупреждение: отсутствует инициализатор для элемента ‘CSTR_rast_attr::col’
/home/mgraf/refactoring/src/cstr/cgraph.cpp:519: предупреждение: отсутствует инициализатор для элемента ‘CSTR_rast_attr::h’
/home/mgraf/refactoring/src/cstr/cgraph.cpp:519: предупреждение: отсутствует инициализатор для элемента ‘CSTR_rast_attr::w’
/home/mgraf/refactoring/src/cstr/cgraph.cpp:519: предупреждение: отсутствует инициализатор для элемента ‘CSTR_rast_attr::bdiff’
/home/mgraf/refactoring/src/cstr/cgraph.cpp:519: предупреждение: отсутствует инициализатор для элемента ‘CSTR_rast_attr::difflg’
/home/mgraf/refactoring/src/cstr/cgraph.cpp:519: предупреждение: отсутствует инициализатор для элемента ‘CSTR_rast_attr::basflg’
/home/mgraf/refactoring/src/cstr/cgraph.cpp:519: предупреждение: отсутствует инициализатор для элемента ‘CSTR_rast_attr::accent_leader’
/home/mgraf/refactoring/src/cstr/cgraph.cpp:519: предупреждение: отсутствует инициализатор для элемента ‘CSTR_rast_attr::r_row’
/home/mgraf/refactoring/src/cstr/cgraph.cpp:519: предупреждение: отсутствует инициализатор для элемента ‘CSTR_rast_attr::r_col’
/home/mgraf/refactoring/src/cstr/cgraph.cpp:519: предупреждение: отсутствует инициализатор для элемента ‘CSTR_rast_attr::bas1’
/home/mgraf/refactoring/src/cstr/cgraph.cpp:519: пре...

Revision history for this message
Serge Poltavsky (serge-uliss) wrote :

ok, as I think the problem is in files, ported from C => C++ on 64-bit arch.
So now I'm compiling crossdev to make fixes

Revision history for this message
Serge Poltavsky (serge-uliss) wrote :

Aleksandr, try use latest revision. For me cross-compilation for x86_84 done without problems

Revision history for this message
Kuzemko Aleksandr (kuzemkoa-rambler) wrote :

I try
[ 97%] Built target puma
Linking CXX executable ../cuneiform
../librling.so: undefined reference to `RLINGAlloc(unsigned int)'
collect2: выполнение ld завершилось с кодом возврата 1
make[2]: *** [cuneiform] Ошибка 1
make[1]: *** [cli/CMakeFiles/cuneiform.dir/all] Ошибка 2
make: *** [all] Ошибка 2

Revision history for this message
Serge Poltavsky (serge-uliss) wrote :

fixed
надеюсь что все)

Changed in cuneiform-linux:
status: New → Fix Committed
Revision history for this message
Jussi Pakkanen (jpakkane) wrote :

I'll look into merging changes from the refactoring branch into the main branch. However I'll be offline for the next week or so, so there probably won't be much happening until then.

Revision history for this message
Kuzemko Aleksandr (kuzemkoa-rambler) wrote :
Download full text (6.6 KiB)

Не все :), rev 985

[ 63%] Built target loc32
[ 63%] Building CXX object src/exc/CMakeFiles/exc.dir/compdata.cpp.o
[ 64%] Building CXX object src/exc/CMakeFiles/exc.dir/compkit.cpp.o
[ 64%] Building CXX object src/exc/CMakeFiles/exc.dir/extrcomp.cpp.o
/home/mgraf/refactoring/src/exc/extrcomp.cpp: In function ‘uint16_t push_comp_to_container(ExtComponent*)’:
/home/mgraf/refactoring/src/exc/extrcomp.cpp:399: предупреждение: отсутствует инициализатор для элемента ‘tagRecVersions::lnAltMax’
/home/mgraf/refactoring/src/exc/extrcomp.cpp:399: предупреждение: отсутствует инициализатор для элемента ‘tagRecVersions::Alt’
/home/mgraf/refactoring/src/exc/extrcomp.cpp: In function ‘Bool image_file_open()’:
/home/mgraf/refactoring/src/exc/extrcomp.cpp:670: предупреждение: отсутствует инициализатор для элемента ‘tagImxs_ImageInfo::wImageWidth’
/home/mgraf/refactoring/src/exc/extrcomp.cpp:670: предупреждение: отсутствует инициализатор для элемента ‘tagImxs_ImageInfo::wImageByteWidth’
/home/mgraf/refactoring/src/exc/extrcomp.cpp:670: предупреждение: отсутствует инициализатор для элемента ‘tagImxs_ImageInfo::wImageDisplacement’
/home/mgraf/refactoring/src/exc/extrcomp.cpp:670: предупреждение: отсутствует инициализатор для элемента ‘tagImxs_ImageInfo::wResolutionX’
/home/mgraf/refactoring/src/exc/extrcomp.cpp:670: предупреждение: отсутствует инициализатор для элемента ‘tagImxs_ImageInfo::wResolutionY’
/home/mgraf/refactoring/src/exc/extrcomp.cpp:670: предупреждение: отсутствует инициализатор для элемента ‘tagImxs_ImageInfo::bFotoMetrics’
/home/mgraf/refactoring/src/exc/extrcomp.cpp:670: предупреждение: отсутствует инициализатор для элемента ‘tagImxs_ImageInfo::bUnused’
/home/mgraf/refactoring/src/exc/extrcomp.cpp:670: предупреждение: отсутствует инициализатор для элемента ‘tagImxs_ImageInfo::wAddX’
/home/mgraf/refactoring/src/exc/extrcomp.cpp...

Read more...

Revision history for this message
Serge Poltavsky (serge-uliss) wrote :

fixed

Revision history for this message
Kuzemko Aleksandr (kuzemkoa-rambler) wrote :
Download full text (3.8 KiB)

Scanning dependencies of target cuneiform
[ 98%] Building CXX object cli/CMakeFiles/cuneiform.dir/cuneiform-cli.cpp.o
In file included from /usr/include/ImageMagick/Magick++.h:10,
                 from /home/mgraf/refactoring/cli/cuneiform-cli.cpp:81:
/usr/include/ImageMagick/Magick++/Image.h: In member function ‘unsigned int Magick::Image::columns() const’:
/usr/include/ImageMagick/Magick++/Image.h:1387: предупреждение: conversion to ‘unsigned int’ from ‘const long unsigned int’ may alter its value
/usr/include/ImageMagick/Magick++/Image.h: In member function ‘unsigned int Magick::Image::rows() const’:
/usr/include/ImageMagick/Magick++/Image.h:1393: предупреждение: conversion to ‘unsigned int’ from ‘const long unsigned int’ may alter its value
/home/mgraf/refactoring/cli/cuneiform-cli.cpp: At global scope:
/home/mgraf/refactoring/cli/cuneiform-cli.cpp:133: предупреждение: the result of the conversion is unspecified because ‘-0x00000000000000001’ is outside the range of type ‘language_t’
/home/mgraf/refactoring/cli/cuneiform-cli.cpp:152: предупреждение: the result of the conversion is unspecified because ‘-0x00000000000000001’ is outside the range of type ‘puma_format_t’
/home/mgraf/refactoring/cli/cuneiform-cli.cpp: In function ‘puma_format_t output_format(const std::string&)’:
/home/mgraf/refactoring/cli/cuneiform-cli.cpp:206: предупреждение: the result of the conversion is unspecified because ‘-0x00000000000000001’ is outside the range of type ‘puma_format_t’
/home/mgraf/refactoring/cli/cuneiform-cli.cpp: In function ‘language_t recognize_language(const std::string&)’:
/home/mgraf/refactoring/cli/cuneiform-cli.cpp:214: предупреждение: the result of the conversion is unspecified because ‘-0x00000000000000001’ is outside the range of type ‘language_t’
Linking CXX executable ../cuneiform
../librling.so: undefined reference to `RLIN...

Read more...

Revision history for this message
Kuzemko Aleksandr (kuzemkoa-rambler) wrote :

Excuse me, this bug not depended of the ImageMagick.

Revision history for this message
Kuzemko Aleksandr (kuzemkoa-rambler) wrote :

Result of ccpcheck of refactoring branch

[src/ccom/ccom.cpp:1106]: (error) Resource leak: fp
[src/cfio/ctcglobalheader.h:36]: (error) Class GlobalHeader which is inherited by class MemoryHeader does not have a virtual destructor
[src/cstr/cgraph.cpp:623]: (error) Memory leak: lp
[src/cstr/cgraph.cpp:724]: (error) Memory leak: lp
[src/cstr/cgraph.cpp:836]: (error) Resource leak: in
[src/ctb/ctb_gray.cpp:89]: (error) Array index out of bounds
[src/rbal/statsearchbl.cpp:1355]: (error) Memory leak: pY1Array
[src/rbal/statsearchbl.cpp:1355]: (error) Memory leak: pY2Array
[src/rfrmt/pagetree.cpp:1258]: (error) Memory leak: intr
[src/rfrmt/pagetree.cpp:1549]: (error) Memory leak: Beg
[src/rfrmt/pagetree.cpp:1877]: (error) Memory leak: Index
[src/rfrmt/pagetree.cpp:1877]: (error) Memory leak: IndexV
[src/rfrmt/pagetree.cpp:786]: (error) Memory leak: intr
[src/rfrmt/pagetree.cpp:786]: (error) Memory leak: begI
[src/rfrmt/pagetree.cpp:786]: (error) Memory leak: endI
[src/rfrmt/pagetree.cpp:786]: (error) Memory leak: LineVK
[src/rfrmt/pagetree.cpp:786]: (error) Memory leak: LineHK
[src/rfrmt/pagetree.cpp:786]: (error) Memory leak: StatCell
[src/rfrmt/util_lst.cpp:1007]: (error) Memory leak: arr
[src/rfrmt/util_lst.cpp:1007]: (error) Memory leak: arrY
[src/rfrmt/util_spl.cpp:202]: (error) Memory leak: Upp
[src/rfrmt/util_spl.cpp:202]: (error) Memory leak: Low
[src/rfrmt/util_spl.cpp:313]: (error) Memory leak: arrB1
[src/rling/sources/speldici.cpp:366]: (error) Resource leak: lst
[src/rselstr/rotate.cpp:343]: (error) Memory leak: safe
[src/rselstr/rotate.cpp:550]: (error) Memory leak: safe
[src/rselstr/testforvertical.cpp:550]: (error) Possible null pointer dereference: add - otherwise it is redundant to check if add is null at line 551
[src/rselstr/testforvertical.cpp:591]: (error) Possible null pointer dereference: add - otherwise it is redundant to check if add is null at line 592
[src/rselstr/testforvertical.cpp:223]: (error) Memory leak: pmasp

Revision history for this message
Kuzemko Aleksandr (kuzemkoa-rambler) wrote :

I can not recognize any image with -l eng option (segfault). With -l ruseng option image recognized. I use latest refactoring branch.

Revision history for this message
Kuzemko Aleksandr (kuzemkoa-rambler) wrote :

Linking CXX shared library libcuneiform-rdib.so
/usr/lib/gcc/x86_64-pc-linux-gnu/4.4.2/../../../../x86_64-pc-linux-gnu/bin/ld: ../common/libcuneiform-common.a(cifconfig.cpp.o): relocation R_X86_64_32 against `.bss' can not be used when making a shared object; recompile with -fPIC
../common/libcuneiform-common.a: could not read symbols: Bad value
collect2: выполнение ld завершилось с кодом возврата 1
make[2]: *** [src/rdib/libcuneiform-rdib.so.0.8.0] Ошибка 1
make[1]: *** [src/rdib/CMakeFiles/cuneiform-rdib.dir/all] Ошибка 2
make: *** [all] Ошибка 2

Revision history for this message
Serge Poltavsky (serge-uliss) wrote :

Bug with English language fixed

Revision history for this message
Serge Poltavsky (serge-uliss) wrote :

Bug with linking on x86_64 also fixed

Changed in cuneiform-linux:
status: Fix Committed → Fix Released
To post a comment you must log in.
This report contains Public information  
Everyone can see this information.

Other bug subscribers

Related questions

Remote bug watches

Bug watches keep track of this bug in other bug trackers.