1994 1995 1996 1997 1998 1999 2000 2001 2002 2003 2004 2005 2006 2007 2008 2009 2010 2011 2012 2013 2014 2015 2016 2017 <2018> 2019 2020 2021 2022 2023 2024 | Index | 1994 1995 1996 1997 1998 1999 2000 2001 2002 2003 2004 2005 2006 2007 2008 2009 2010 2011 2012 2013 2014 2015 2016 2017 <2018> 2019 2020 2021 2022 2023 2024 |
<== Date ==> | <== Thread ==> |
---|
Subject: | RE: ADSupport compilation problem due to GraphicsMagick Malformed UTF-8 character(s) |
From: | Mark Rivers <[email protected]> |
To: | "'Gofron, Kazimierz'" <[email protected]>, "[email protected]" <[email protected]> |
Date: | Sat, 17 Feb 2018 16:39:58 +0000 |
Hi Kaz, I cannot reproduce your grep of the non-UTF-8 characters. Here is a fresh clone and a grep on an RHEL 7 system. The grep command is a copy and paste from your e-mail. [epics@corvette scratch]$ git clone [email protected]:areaDetector/ADSupport Cloning into 'ADSupport'... remote: Counting objects: 7063, done. remote: Compressing objects: 100% (3/3), done. remote: Total 7063 (delta 0), reused 1 (delta 0), pack-reused 7060 Receiving objects: 100% (7063/7063), 25.59 MiB | 29.57 MiB/s, done. Resolving deltas: 100% (3660/3660), done. [epics@corvette scratch]$ cd ADSupport/supportApp/GraphicsMagickSrc/lcms/src/ [epics@corvette src]$ grep -n -axv '.*' cmstypes.c [epics@corvette src]$ What do you see if you follow these steps on a Linux system? Mark From: Gofron, Kazimierz [mailto:[email protected]] Hi Mark, After changing to master branch (was in detached HEAD), I confirmed that the cmstypes.c has the UTF8 problem. Sqr-1 IXS@IXS_MCM /cygdrive/c/epics/synApps/support/areaDetector-3-2/ADSupport/supportApp/GraphicsMagickSrc/lcms/src $ grep -n -axv '.*' cmstypes.c 965: //(see clause 4.1 for the definition of
▒aligned▒). Because the Unicode language 3063://The device representation corresponds to the header▒s
▒color space of data▒ field. 3064://This representation should be consistent with the
▒number of device components▒ 3066://The PCS representation corresponds to the header▒s PCS field. The PCS representation 3811://CIE ▒absolute▒
illuminant white point tristimulus values and CIE ▒absolute▒ 3898:// The first curve segment always starts at
▒Infinity, and the last curve segment always ends at +Infinity. The 4174:// array = [e11, e12,
▒, e1P, e21, e22,
▒, e2P,
▒, eQ1, eQ2,
▒, eQP, e1, e2,
▒, eQ] 4673: // Y = (Max
▒ Min) * (X ^ Gamma) + Min 4676: // a = (Max
▒ Min) ^ ( 1 / Gamma) --------------------- Now your steps: -----------------------------------Step 1 c:\epics\synApps\support\areaDetector-3-2\ADSupport\supportApp\GraphicsMagickSrc \lcms\src>git status . On branch master Your branch is up to date with 'origin/master'. nothing to commit, working tree clean ---------------------------------- Step 2 a)
{I do not have the O.windows-x64-static-vs2017 directory} c:\epics\synApps\support\areaDetector-3-2\ADSupport\supportApp\GraphicsMagickSrc\lcms\src>ls -l total 1240 -rw-r--r-- 1 Sqr-1 IXS 197121 1484 Feb 16 15:21 Makefile -rw-r--r-- 1 Sqr-1 IXS 197121 945 Feb 16 15:21 Makefile.am -rw-r--r-- 1 Sqr-1 IXS 197121 24192 Feb 16 15:21 Makefile.in drwxr-xr-x 1 Sqr-1 IXS 197121 0 Feb 17 10:16 O.Common drwxr-xr-x 1 Sqr-1 IXS 197121 0 Feb 17 10:16 O.windows-x64-static -rw-r--r-- 1 Sqr-1 IXS 197121 16076 Feb 16 15:21 cmsalpha.c -rw-r--r-- 1 Sqr-1 IXS 197121 14439 Feb 16 15:21 cmscam02.c -rw-r--r-- 1 Sqr-1 IXS 197121 75151 Feb 16 15:21 cmscgats.c -rw-r--r-- 1 Sqr-1 IXS 197121 43741 Feb 16 15:21 cmscnvrt.c -rw-r--r-- 1 Sqr-1 IXS 197121 21630 Feb 16 15:21 cmserr.c -rw-r--r-- 1 Sqr-1 IXS 197121 38551 Feb 16 15:21 cmsgamma.c -rw-r--r-- 1 Sqr-1 IXS 197121 20565 Feb 16 15:21 cmsgmt.c -rw-r--r-- 1 Sqr-1 IXS 197121 35846 Feb 16 15:21 cmshalf.c -rw-r--r-- 1 Sqr-1 IXS 197121 45687 Feb 16 15:21 cmsintrp.c -rw-r--r-- 1 Sqr-1 IXS 197121 60115 Feb 16 15:21 cmsio0.c -rw-r--r-- 1 Sqr-1 IXS 197121 36128 Feb 16 15:21 cmsio1.c -rw-r--r-- 1 Sqr-1 IXS 197121 53169 Feb 16 15:21 cmslut.c -rw-r--r-- 1 Sqr-1 IXS 197121 9806 Feb 16 15:21 cmsmd5.c -rw-r--r-- 1 Sqr-1 IXS 197121 5858 Feb 16 15:21 cmsmtrx.c -rw-r--r-- 1 Sqr-1 IXS 197121 29205 Feb 16 15:21 cmsnamed.c -rw-r--r-- 1 Sqr-1 IXS 197121 66034 Feb 16 15:21 cmsopt.c -rw-r--r-- 1 Sqr-1 IXS 197121 112503 Feb 16 15:21 cmspack.c -rw-r--r-- 1 Sqr-1 IXS 197121 26406 Feb 16 15:21 cmspcs.c -rw-r--r-- 1 Sqr-1 IXS 197121 28939 Feb 16 15:21 cmsplugin.c -rw-r--r-- 1 Sqr-1 IXS 197121 48476 Feb 16 15:21 cmsps2.c -rw-r--r-- 1 Sqr-1 IXS 197121 18399 Feb 16 15:21 cmssamp.c -rw-r--r-- 1 Sqr-1 IXS 197121 19820 Feb 16 15:21 cmssm.c -rw-r--r-- 1 Sqr-1 IXS 197121 186719 Feb 17 09:34 cmstypes.c -rw-r--r-- 1 Sqr-1 IXS 197121 38122 Feb 16 15:21 cmsvirt.c -rw-r--r-- 1 Sqr-1 IXS 197121 11330 Feb 16 15:21 cmswtpnt.c -rw-r--r-- 1 Sqr-1 IXS 197121 49131 Feb 16 15:21 cmsxform.c -rw-r--r-- 1 Sqr-1 IXS 197121 22867 Feb 16 15:21 lcms2.def -rw-r--r-- 1 Sqr-1 IXS 197121 37465 Feb 16 15:21 lcms2_internal.h -------------- b) c:\epics\synApps\support\areaDetector-3-2\ADSupport\supportApp\GraphicsMagickSrc\lcms\src>del O.windows-x64-static-vs2017\cmstypes.obj The system cannot find the file specified. -------------- c) c:\epics\synApps\support\areaDetector-3-2\ADSupport\supportApp\GraphicsMagickSrc\lcms\src>make make -C O.windows-x64-static -f ../Makefile TOP=../../../../.. \ T_A=windows-x64-static install make[1]: Entering directory 'c:/epics/synApps/support/areaDetector-3-2/ADSupport/supportApp/GraphicsMagickSrc/lcms/src/O.windows-x64-static' perl -CSD c:/epics/base-7.0.1/bin/windows-x64-static/mkmf.pl -m cmstypes.d -I. -I../O.Common -I. -I. -I.. -I../../../../../include/compiler /msvc -I../../../../../include/os/WIN32 -I../../../../../include -IC:/epics/synApps/support/asyn-R4-33/include -IC:/epics/synApps/s upport/areaDetector-3-2/ADSupport/include/os/WIN32 -IC:/epics/synApps/support/areaDetector-3-2/ADSupport/include -IC:/epics/synApps/suppor t/areaDetector-3-2/ADCore/include -Ic:/epics/base-7.0.1/include/compiler/msvc -Ic:/epics/base-7.0.1/include/os/WIN32 -Ic:/epics/base-7.0.1/i nclude -I../../../../../supportApp/GraphicsMagickSrc/lcms/include cmstypes.obj ../cmstypes.c Malformed UTF-8 character (fatal) at c:/epics/base-7.0.1/bin/windows-x64-static/mkmf.pl line 137, <FILE> line 5573. make[1]: Nothing to be done for 'install'. make[1]: Leaving directory 'c:/epics/synApps/support/areaDetector-3-2/ADSupport/supportApp/GraphicsMagickSrc/lcms/src/O.windows-x64-static' ------------------------------------== a2) c:\epics\synApps\support\areaDetector-3-2\ADSupport\supportApp\GraphicsMagickSrc\lcms\src\O.windows-x64-static>del cmstypes.obj c:\epics\synApps\support\areaDetector-3-2\ADSupport\supportApp\GraphicsMagickSrc\lcms\src\O.windows-x64-static>cd .. c:\epics\synApps\support\areaDetector-3-2\ADSupport\supportApp\GraphicsMagickSrc\lcms\src>make make -C O.windows-x64-static -f ../Makefile TOP=../../../../.. \ T_A=windows-x64-static install make[1]: Entering directory 'c:/epics/synApps/support/areaDetector-3-2/ADSupport/supportApp/GraphicsMagickSrc/lcms/src/O.windows-x64-static' perl -CSD c:/epics/base-7.0.1/bin/windows-x64-static/mkmf.pl -m cmstypes.d -I. -I../O.Common -I. -I. -I.. -I../../../../../include/compiler /msvc -I../../../../../include/os/WIN32 -I../../../../../include -IC:/epics/synApps/support/asyn-R4-33/include -IC:/epics/synApps/s upport/areaDetector-3-2/ADSupport/include/os/WIN32 -IC:/epics/synApps/support/areaDetector-3-2/ADSupport/include -IC:/epics/synApps/suppor t/areaDetector-3-2/ADCore/include -Ic:/epics/base-7.0.1/include/compiler/msvc -Ic:/epics/base-7.0.1/include/os/WIN32 -Ic:/epics/base-7.0.1/i nclude -I../../../../../supportApp/GraphicsMagickSrc/lcms/include cmstypes.obj ../cmstypes.c Malformed UTF-8 character (fatal) at c:/epics/base-7.0.1/bin/windows-x64-static/mkmf.pl line 137, <FILE> line 5573. cl -nologo -D__STDC__=0 -D_CRT_SECURE_NO_DEPRECATE -D_CRT_NONSTDC_NO_DEPRECATE -Ox -Oy- -W3 -D_LCMSLIB_ -DWIN64 -D_VIS UALC_ -D_LIB -MT -I. -I../O.Common -I. -I. -I.. -I../../../../../include/compiler/msvc -I../../../../../include/os/WIN32 -I../../../.. /../include -IC:/epics/synApps/support/asyn-R4-33/include -IC:/epics/synApps/support/areaDetector-3-2/ADSupport/include/os/WIN32 -I C:/epics/synApps/support/areaDetector-3-2/ADSupport/include -IC:/epics/synApps/support/areaDetector-3-2/ADCore/include -Ic:/epics/base-7.0 .1/include/compiler/msvc -Ic:/epics/base-7.0.1/include/os/WIN32 -Ic:/epics/base-7.0.1/include -I../../../../../supportApp/GraphicsMagick Src/lcms/include -c ../cmstypes.c cmstypes.c lib -nologo -verbose -out:lcms.lib cmsalpha.obj cmscam02.obj cmscgats.obj cmscnvrt.obj cmserr.obj cmsgamma.obj cmsgmt.obj cmshalf.ob j cmsintrp.obj cmsio0.obj cmsio1.obj cmslut.obj cmsmd5.obj cmsmtrx.obj cmsnamed.obj cmsopt.obj cmspack.obj cmspcs.obj cmsplugin.obj cmsps2.o bj cmssamp.obj cmssm.obj cmstypes.obj cmsvirt.obj cmswtpnt.obj cmsxform.obj Appending cmsxform.obj Appending cmswtpnt.obj Appending cmsvirt.obj Appending cmstypes.obj Appending cmssm.obj Appending cmssamp.obj Appending cmsps2.obj Appending cmsplugin.obj Appending cmspcs.obj Appending cmspack.obj Appending cmsopt.obj Appending cmsnamed.obj Appending cmsmtrx.obj Appending cmsmd5.obj Appending cmslut.obj Appending cmsio1.obj Appending cmsio0.obj Appending cmsintrp.obj Appending cmshalf.obj Appending cmsgmt.obj Appending cmsgamma.obj Appending cmserr.obj Appending cmscnvrt.obj Appending cmscgats.obj Appending cmscam02.obj Appending cmsalpha.obj Installing library ../../../../../lib/windows-x64-static/lcms.lib make[1]: Leaving directory 'c:/epics/synApps/support/areaDetector-3-2/ADSupport/supportApp/GraphicsMagickSrc/lcms/src/O.windows-x64-static' c:\epics\synApps\support\areaDetector-3-2\ADSupport\supportApp\GraphicsMagickSrc\lcms\src> -------===== My installation is cloned directly to Windows from github, but previously I cloned to debian9 virtual machine, and copied through shared folder to Windows with same compile errors. The compilation is reproducible
on two Windows 7 systems. -Kaz From: Mark Rivers [mailto:[email protected]]
Hi Kaz, I just tested compiling that file on my system. The following shows that I am using the git master version of that file, and that I don’t get any error compiling it with
VS 2017. Can you please execute these exact same 3 commands on your system? Check out the master branch first. In the output below I inserted line breaks into the cl output to make it easier to read. One difference could be that my working directory is on a Linux system, not on a Windows system. I have the Linux file system mounted from the Windows machine. Perhaps
there is some character translation happening either with the git checkout on Linux, or when serving the files to Windows? J:\epics\devel\areaDetector-3-2\ADSupport\supportApp\GraphicsMagickSrc\lcms\src>git status . On branch master Your branch is up-to-date with 'origin/master'. nothing to commit, working tree clean J:\epics\devel\areaDetector-3-2\ADSupport\supportApp\GraphicsMagickSrc\lcms\src>del O.windows-x64-static-vs2017\cmstypes.obj J:\epics\devel\areaDetector-3-2\ADSupport\supportApp\GraphicsMagickSrc\lcms\src>make make -C O.windows-x64-static-vs2017 -f ../Makefile TOP=../../../../.. \ T_A=windows-x64-static-vs2017 install make[1]: Entering directory 'J:/epics/devel/areaDetector-3-2/ADSupport/supportApp/GraphicsMagickSrc/lcms/src/O.windows-x64-static-vs2017' cl -nologo -D__STDC__=0 -D_CRT_SECURE_NO_DEPRECATE -D_CRT_NONSTDC_NO_DEPRECATE -Ox -Oy- -W3
-D_LCMSLIB_ -DWIN64 -D_VISUALC_ -D_LIB -MT -I. -I../O.Common -I. -I. -I.. -I../../../../../include/compiler/msvc -I../../../../../include/os/WIN32 -I../../../../../include
-IJ:/epics/devel/asyn-4-33/include/compiler/msvc -IJ:/epics/devel/asyn-4-33/include
-IJ:/epics/devel/areaDetector-3-2/ADSupport/include/os/WIN32 -IJ:/epics/devel/areaDetector-3-2/ADSupport/include
-IJ:/epics/devel/areaDetector-3-2/ADCore/include -IH:/epics-devel/base-7.0.1/include/compiler/msvc
-IH:/epics-devel/base-7.0.1/include/os/WIN32 -IH:/epics-devel/base-7.0.1/include
-I../../../../../supportApp/GraphicsMagickSrc/lcms/include -c ../cmstypes.c cmstypes.c lib -nologo -verbose -out:lcms.lib cmsalpha.obj cmscam02.obj cmscgats.obj cmscnvrt.obj cmserr.obj cmsgamma.obj cmsgmt.obj cmshalf.obj cmsintrp.obj cmsio0.obj cmsio1.obj cmslut.obj
cmsmd5.obj cmsmtrx.obj cmsnamed.obj cmsopt.obj cmspack.obj cmspcs.obj cmsplugin.obj cmsps2.obj cmssamp.obj cmssm.obj cmstypes.obj cmsvirt.obj cmswtpnt.obj cmsxform.obj Appending cmsxform.obj Appending cmswtpnt.obj Appending cmsvirt.obj Appending cmstypes.obj Appending cmssm.obj Appending cmssamp.obj Appending cmsps2.obj Appending cmsplugin.obj Appending cmspcs.obj Appending cmspack.obj Appending cmsopt.obj Appending cmsnamed.obj Appending cmsmtrx.obj Appending cmsmd5.obj Appending cmslut.obj Appending cmsio1.obj Appending cmsio0.obj Appending cmsintrp.obj Appending cmshalf.obj Appending cmsgmt.obj Appending cmsgamma.obj Appending cmserr.obj Appending cmscnvrt.obj Appending cmscgats.obj Appending cmscam02.obj Appending cmsalpha.obj "Installing library ../../../../../lib/windows-x64-static-vs2017/lcms.lib" make[1]: Leaving directory 'J:/epics/devel/areaDetector-3-2/ADSupport/supportApp/GraphicsMagickSrc/lcms/src/O.windows-x64-static-vs2017' J:\epics\devel\areaDetector-3-2\ADSupport\supportApp\GraphicsMagickSrc\lcms\src> From: Gofron, Kazimierz [mailto:[email protected]]
Hi Mark, The ADSupport compilation error is originating from non compatible UTF-8 characters in cmstypes.c file. That compilation error went away after changing characters to UTF-8 format. For now, I placed a UTF-8 compatible file here: https://github.com/kgofron/synAppsRelease/blob/master/SCRIPTS/ADSupportRepair/cmstypes.c I wonder whether you have another installation of GraphicsMagick on your system. The characters not following UTF-8 format are on following lines of cmstypes.c file. I checked few and they have 24 bit/6byte, instead of 2Byte(UTF-8). They are in comments area, and typically are left-quote/right-quote, ellipses single
character (…), elongated minus, etc. UTF8ó converter https://sites.google.com/site/nathanlexwww/tools/utf8-convert Line 965 1st non-compatible character uses left quote (Hex C293220A, RFC4648:wpMK). -Kaz From: Mark Rivers [mailto:[email protected]]
Ø
There is a compilation error when compiling ADSupport of areaDetector 3.2 with base-7. This error is related to GraphicsMagic. I cannot reproduce that problem. I have rebuilt ADSupport several times and the strings “Malformed” or “UTF-8” do not occur in the output. I used “make –sj8”. I am using
the master branch of ADSupport. I am using the same setup as Kaz: base-7.0.1.1 VisualStudio 2017 make-4.2.1 Windows 7 Pro 64 bit windows-x64-static I do note that by switching to make 4.2.1 I no longer see the hangup when using “make –sj” which I did see with make 4.1. make 4.1 would always hang when building ADSupport/supportApp/hdf5Src
with with make –sj. It did always work with make –sj8. Mark From:
[email protected] [mailto:[email protected]]
On Behalf Of Gofron, Kazimierz Hi, There is a compilation error when compiling ADSupport of areaDetector 3.2 with base-7. This error is related to GraphicsMagic. base-7.0.1.1 VisualStudio 2017 make-4.2.1 Windows 7 Pro 64 bit windows-x64-static ==== When compiling ADSupport, the following error is displayed twice: ---- Appending buf.obj Malformed UTF-8 character (fatal) at c:/epics/base-7.0.1/bin/windows-x64-static/mkmf.pl line 136, <FILE> line 5573. jbig.c … Malformed UTF-8 character (fatal) at c:/epics/base-7.0.1/bin/windows-x64-static/mkmf.pl line 136, <FILE> line 5573. BZIP compiling as library ---- Kazimierz Gofron NSLS-II Controls Group Brookhaven National Laboratory (p) +1 (631) 344 5283 (f) +1 (631) 344 8085 |