View Issue Details
ID | Project | Category | View Status | Date Submitted | Last Update |
---|---|---|---|---|---|
0000965 | luatex | luatex bug | public | 2016-02-26 02:50 | 2016-03-02 22:12 |
Reporter | igor | Assigned To | luigi scarso | ||
Priority | normal | Severity | minor | Reproducibility | always |
Status | closed | Resolution | fixed | ||
OS | linux | ||||
Product Version | 0.80.0 | ||||
Fixed in Version | 0.89.0 | ||||
Summary | 0000965: "checksum mismatch" warnings on 64bit system for OVF/OFM fonts | ||||
Description | luatex gives "checksum mismatch" warnings: This is LuaTeX, Version beta-0.80.0 (TeX Live 2015/Debian) (rev 5238) checksum mismatch in local font cmb10 (-770990554 != -770990554) in virtual font myfont.vf ignored. No pages of output. Transcript written on texput.log. This is complaining that a number is not equal to itself, clearly a representation problem. On i386 system the same versions of texlive packages do not give such warnings. I checked with latest build (0.89.0) from http://minimals.contextgarden.net/current/bin/luatex/linux-64/bin/luatex The result is the same. | ||||
Steps To Reproduce | echo "(MAPFONT D 0 (FONTNAME cmb10))" > myfont.vpl tftopl cmb10 >> myfont.vpl vptovf myfont.vpl rm myfont.vpl vftovp -charcode-format=octal myfont.vf > myfont.ovp rm myfont.tfm myfont.vf ovp2ovf myfont.ovp luatex '\font\f=myfont\end' | ||||
Additional Information | If we change cmb10 to, e.g., cmr10, no warning is printed. The problem is that for fonts with values of FONTCHECKSUM above octal 17777777777, the value is interpreted as negative. Octal 17777777777 is binary 01111111111111111111111111111111 Octal 20000000000 is binary 10000000000000000000000000000000 | ||||
Tags | No tags attached. | ||||
|
Thank you for the report. We will see asap. |
|
Hm, with your example I see (CHECKSUM O 32202717046) (FONTCHECKSUM O 32202717046) and no problem. I don't have your cmb10: mine is from TeXLive 2015 under texmf-dist/fonts/type1/public/amsfonts/cm/cmb10.pfb |
|
I also use TL 2015 (packaged with debian testing "stretch"). First let's verify that we use the same cmb10.pfb and cmb10.tfm: $ md5sum /usr/share/texlive/texmf-dist/fonts/type1/public/amsfonts/cm/cmb10.pfb 9e890a566b02a404d2efb4a691903f83 /usr/share/texlive/texmf-dist/fonts/type1/public/amsfonts/cm/cmb10.pfb $ md5sum /usr/share/texlive/texmf-dist/fonts/tfm/public/cm/cmb10.tfm fb32298c2d61d0c4b59f3065fdd6def9 /usr/share/texlive/texmf-dist/fonts/tfm/public/cm/cmb10.tfm Create OFM/OVF font: cp /usr/share/texlive/texmf-dist/fonts/tfm/public/cm/cmb10.tfm . echo "(MAPFONT D 0 (FONTNAME cmb10))" > myfont.vpl tftopl cmb10 >> myfont.vpl vptovf myfont.vpl rm myfont.vpl vftovp -charcode-format=octal myfont.vf > myfont.ovp rm myfont.tfm myfont.vf ovp2ovf myfont.ovp Download current luatex: wget http://minimals.contextgarden.net/current/bin/luatex/linux-64/bin/luatex chmod +x luatex Now run luatex from current directory: $ touch texmf.cnf $ TFMFONTS=. OVFFONTS=. OFMFONTS=. strace -o strace.log ./luatex -ini -rec '\font\f=myfont\end' This is LuaTeX, Version beta-0.89.2 (TeX Live 2016/dev) (INITEX) restricted system commands enabled. checksum mismatch in local font cmb10 (-770990554 != -770990554) in virtual fon t myfont.vf ignored. No pages of output. Transcript written on texput.log. $ cat luatex*.fls && rm luatex*.fls PWD /home/user/test OUTPUT texput.log INPUT ./myfont.ofm INPUT ./myfont.ovf INPUT ./cmb10.tfm File "strace.log" is attached. I do not know if it is the problem with luatex or with texlive. Please say which additional info I should provide. |
|
strace.log (12,494 bytes)
execve("./luatex", ["./luatex", "-ini", "-rec", "\\font\\f=myfont\\end"], [/* 45 vars */]) = 0 brk(0) = 0x209f000 access("/etc/ld.so.nohwcap", F_OK) = -1 ENOENT (No such file or directory) mmap(NULL, 8192, PROT_READ|PROT_WRITE, MAP_PRIVATE|MAP_ANONYMOUS, -1, 0) = 0x7f7746fed000 access("/etc/ld.so.preload", R_OK) = -1 ENOENT (No such file or directory) open("/etc/ld.so.cache", O_RDONLY|O_CLOEXEC) = 3 fstat(3, {st_mode=S_IFREG|0644, st_size=90580, ...}) = 0 mmap(NULL, 90580, PROT_READ, MAP_PRIVATE, 3, 0) = 0x7f7746fd6000 close(3) = 0 access("/etc/ld.so.nohwcap", F_OK) = -1 ENOENT (No such file or directory) open("/lib/x86_64-linux-gnu/libdl.so.2", O_RDONLY|O_CLOEXEC) = 3 read(3, "\177ELF\2\1\1\0\0\0\0\0\0\0\0\0\3\0>\0\1\0\0\0\240\r\0\0\0\0\0\0"..., 832) = 832 fstat(3, {st_mode=S_IFREG|0644, st_size=14640, ...}) = 0 mmap(NULL, 2109680, PROT_READ|PROT_EXEC, MAP_PRIVATE|MAP_DENYWRITE, 3, 0) = 0x7f7746bca000 mprotect(0x7f7746bcc000, 2097152, PROT_NONE) = 0 mmap(0x7f7746dcc000, 8192, PROT_READ|PROT_WRITE, MAP_PRIVATE|MAP_FIXED|MAP_DENYWRITE, 3, 0x2000) = 0x7f7746dcc000 close(3) = 0 access("/etc/ld.so.nohwcap", F_OK) = -1 ENOENT (No such file or directory) open("/lib/x86_64-linux-gnu/libm.so.6", O_RDONLY|O_CLOEXEC) = 3 read(3, "\177ELF\2\1\1\3\0\0\0\0\0\0\0\0\3\0>\0\1\0\0\0\320T\0\0\0\0\0\0"..., 832) = 832 fstat(3, {st_mode=S_IFREG|0644, st_size=1067456, ...}) = 0 mmap(NULL, 3162440, PROT_READ|PROT_EXEC, MAP_PRIVATE|MAP_DENYWRITE, 3, 0) = 0x7f77468c5000 mprotect(0x7f77469c9000, 2093056, PROT_NONE) = 0 mmap(0x7f7746bc8000, 8192, PROT_READ|PROT_WRITE, MAP_PRIVATE|MAP_FIXED|MAP_DENYWRITE, 3, 0x103000) = 0x7f7746bc8000 close(3) = 0 access("/etc/ld.so.nohwcap", F_OK) = -1 ENOENT (No such file or directory) open("/lib/x86_64-linux-gnu/libc.so.6", O_RDONLY|O_CLOEXEC) = 3 read(3, "\177ELF\2\1\1\3\0\0\0\0\0\0\0\0\3\0>\0\1\0\0\0\220\t\2\0\0\0\0\0"..., 832) = 832 fstat(3, {st_mode=S_IFREG|0755, st_size=1710168, ...}) = 0 mmap(NULL, 4096, PROT_READ|PROT_WRITE, MAP_PRIVATE|MAP_ANONYMOUS, -1, 0) = 0x7f7746fd5000 mmap(NULL, 3817216, PROT_READ|PROT_EXEC, MAP_PRIVATE|MAP_DENYWRITE, 3, 0) = 0x7f7746521000 mprotect(0x7f77466bb000, 2097152, PROT_NONE) = 0 mmap(0x7f77468bb000, 24576, PROT_READ|PROT_WRITE, MAP_PRIVATE|MAP_FIXED|MAP_DENYWRITE, 3, 0x19a000) = 0x7f77468bb000 mmap(0x7f77468c1000, 16128, PROT_READ|PROT_WRITE, MAP_PRIVATE|MAP_FIXED|MAP_ANONYMOUS, -1, 0) = 0x7f77468c1000 close(3) = 0 mmap(NULL, 8192, PROT_READ|PROT_WRITE, MAP_PRIVATE|MAP_ANONYMOUS, -1, 0) = 0x7f7746fd3000 arch_prctl(ARCH_SET_FS, 0x7f7746fd3740) = 0 mprotect(0x7f77468bb000, 16384, PROT_READ) = 0 mprotect(0x7f7746bc8000, 4096, PROT_READ) = 0 mprotect(0x7f7746dcc000, 4096, PROT_READ) = 0 mprotect(0x7f7746fef000, 4096, PROT_READ) = 0 munmap(0x7f7746fd6000, 90580) = 0 brk(0) = 0x209f000 brk(0x20c0000) = 0x20c0000 rt_sigaction(SIGPIPE, {SIG_IGN, [PIPE], SA_RESTORER|SA_RESTART, 0x7f7746554590}, {SIG_DFL, [], 0}, 8) = 0 brk(0x20e1000) = 0x20e1000 brk(0x2102000) = 0x2102000 brk(0x2123000) = 0x2123000 brk(0x2144000) = 0x2144000 open("/usr/lib/locale/locale-archive", O_RDONLY|O_CLOEXEC) = 3 fstat(3, {st_mode=S_IFREG|0644, st_size=2860848, ...}) = 0 mmap(NULL, 2860848, PROT_READ, MAP_PRIVATE, 3, 0) = 0x7f7746266000 close(3) = 0 brk(0x2166000) = 0x2166000 lstat(".", {st_mode=S_IFDIR|0755, st_size=4096, ...}) = 0 lstat("./luatex", {st_mode=S_IFREG|0755, st_size=8943344, ...}) = 0 getcwd("/home/user/test", 4097) = 16 lstat(".", {st_mode=S_IFDIR|0755, st_size=4096, ...}) = 0 lstat("./luatex", {st_mode=S_IFREG|0755, st_size=8943344, ...}) = 0 getcwd("/home/user/test", 4097) = 16 stat("/home/user/test", {st_mode=S_IFDIR|0755, st_size=4096, ...}) = 0 access("/home/user/test/texmf.cnf", R_OK) = 0 stat("/home/user/test/texmf.cnf", {st_mode=S_IFREG|0644, st_size=0, ...}) = 0 stat("/home/user/test/share/texmf-local/web2c", 0x7ffc0a383cc0) = -1 ENOENT (No such file or directory) stat("/home/user/test/share/texmf-dist/web2c", 0x7ffc0a383cc0) = -1 ENOENT (No such file or directory) stat("/home/user/test/share/texmf/web2c", 0x7ffc0a383cc0) = -1 ENOENT (No such file or directory) stat("/home/user/test/texmf-local/web2c", 0x7ffc0a383cc0) = -1 ENOENT (No such file or directory) stat("/home/user/test/texmf-dist/web2c", 0x7ffc0a383cc0) = -1 ENOENT (No such file or directory) stat("/home/user/test/texmf/web2c", 0x7ffc0a383cc0) = -1 ENOENT (No such file or directory) stat("/home/user", {st_mode=S_IFDIR|0755, st_size=4096, ...}) = 0 access("/home/user/texmf.cnf", R_OK) = -1 ENOENT (No such file or directory) stat("/home/user/share/texmf-local/web2c", 0x7ffc0a383cc0) = -1 ENOENT (No such file or directory) stat("/home/user/share/texmf-dist/web2c", 0x7ffc0a383cc0) = -1 ENOENT (No such file or directory) stat("/home/user/share/texmf/web2c", 0x7ffc0a383cc0) = -1 ENOENT (No such file or directory) stat("/home/user/texmf-local/web2c", 0x7ffc0a383cc0) = -1 ENOENT (No such file or directory) stat("/home/user/texmf-dist/web2c", 0x7ffc0a383cc0) = -1 ENOENT (No such file or directory) stat("/home/user/texmf/web2c", 0x7ffc0a383cc0) = -1 ENOENT (No such file or directory) stat("/texmf-local/web2c", 0x7ffc0a383cc0) = -1 ENOENT (No such file or directory) stat("/home", {st_mode=S_IFDIR|0755, st_size=4096, ...}) = 0 access("/home/texmf.cnf", R_OK) = -1 ENOENT (No such file or directory) stat("/home/share/texmf-local/web2c", 0x7ffc0a383cc0) = -1 ENOENT (No such file or directory) stat("/home/share/texmf-dist/web2c", 0x7ffc0a383cc0) = -1 ENOENT (No such file or directory) stat("/home/share/texmf/web2c", 0x7ffc0a383cc0) = -1 ENOENT (No such file or directory) stat("/home/texmf-local/web2c", 0x7ffc0a383cc0) = -1 ENOENT (No such file or directory) stat("/home/texmf-dist/web2c", 0x7ffc0a383cc0) = -1 ENOENT (No such file or directory) stat("/home/texmf/web2c", 0x7ffc0a383cc0) = -1 ENOENT (No such file or directory) open("/home/user/test/texmf.cnf", O_RDONLY) = 3 fstat(3, {st_mode=S_IFREG|0644, st_size=0, ...}) = 0 mmap(NULL, 4096, PROT_READ|PROT_WRITE, MAP_PRIVATE|MAP_ANONYMOUS, -1, 0) = 0x7f7746fec000 read(3, "", 4096) = 0 close(3) = 0 munmap(0x7f7746fec000, 4096) = 0 stat("/nonesuch", 0x7ffc0a383c00) = -1 ENOENT (No such file or directory) mmap(NULL, 516096, PROT_READ|PROT_WRITE, MAP_PRIVATE|MAP_ANONYMOUS, -1, 0) = 0x7f7746f55000 munmap(0x7f7746f55000, 516096) = 0 brk(0x2188000) = 0x2188000 brk(0x21ad000) = 0x21ad000 mmap(NULL, 569344, PROT_READ|PROT_WRITE, MAP_PRIVATE|MAP_ANONYMOUS, -1, 0) = 0x7f7746f48000 mmap(NULL, 4243456, PROT_READ|PROT_WRITE, MAP_PRIVATE|MAP_ANONYMOUS, -1, 0) = 0x7f7745e5a000 mmap(NULL, 1601536, PROT_READ|PROT_WRITE, MAP_PRIVATE|MAP_ANONYMOUS, -1, 0) = 0x7f7745cd3000 open("/etc/localtime", O_RDONLY|O_CLOEXEC) = 3 fstat(3, {st_mode=S_IFREG|0644, st_size=1226, ...}) = 0 fstat(3, {st_mode=S_IFREG|0644, st_size=1226, ...}) = 0 mmap(NULL, 4096, PROT_READ|PROT_WRITE, MAP_PRIVATE|MAP_ANONYMOUS, -1, 0) = 0x7f7746fec000 read(3, "TZif2\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\v\0\0\0\v\0\0\0\0"..., 4096) = 1226 lseek(3, -749, SEEK_CUR) = 477 read(3, "TZif2\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\v\0\0\0\v\0\0\0\0"..., 4096) = 749 close(3) = 0 munmap(0x7f7746fec000, 4096) = 0 brk(0x21ce000) = 0x21ce000 brk(0x220e000) = 0x220e000 brk(0x2238000) = 0x2238000 brk(0x2259000) = 0x2259000 stat("/etc/localtime", {st_mode=S_IFREG|0644, st_size=1226, ...}) = 0 rt_sigaction(SIGINT, {0x448250, [INT], SA_RESTORER|SA_INTERRUPT, 0x7f7746554590}, {SIG_DFL, [], 0}, 8) = 0 fstat(1, {st_mode=S_IFCHR|0620, st_rdev=makedev(136, 1), ...}) = 0 mmap(NULL, 4096, PROT_READ|PROT_WRITE, MAP_PRIVATE|MAP_ANONYMOUS, -1, 0) = 0x7f7746fec000 write(1, "This is LuaTeX, Version beta-0.8"..., 66) = 66 stat("/etc/localtime", {st_mode=S_IFREG|0644, st_size=1226, ...}) = 0 rt_sigaction(SIGINT, {0x448250, [INT], SA_RESTORER|SA_INTERRUPT, 0x7f7746554590}, {0x448250, [INT], SA_RESTORER|SA_INTERRUPT, 0x7f7746554590}, 8) = 0 rt_sigaction(SIGINT, {0x448250, [INT], SA_RESTORER|SA_INTERRUPT, 0x7f7746554590}, NULL, 8) = 0 open("texput.log", O_WRONLY|O_CREAT|O_TRUNC, 0666) = 3 getpid() = 17782 open("luatex17782.fls", O_WRONLY|O_CREAT|O_TRUNC, 0666) = 4 getcwd("/home/user/test", 4097) = 16 fstat(4, {st_mode=S_IFREG|0644, st_size=0, ...}) = 0 mmap(NULL, 4096, PROT_READ|PROT_WRITE, MAP_PRIVATE|MAP_ANONYMOUS, -1, 0) = 0x7f7746feb000 write(4, "PWD /home/user/test\nOUTPUT texpu"..., 38) = 38 fstat(3, {st_mode=S_IFREG|0644, st_size=0, ...}) = 0 mmap(NULL, 4096, PROT_READ|PROT_WRITE, MAP_PRIVATE|MAP_ANONYMOUS, -1, 0) = 0x7f7746fea000 stat(".", {st_mode=S_IFDIR|0755, st_size=4096, ...}) = 0 access("./myfont.ofm", R_OK) = 0 stat("./myfont.ofm", {st_mode=S_IFREG|0644, st_size=1336, ...}) = 0 access("./myfont.ofm", R_OK) = 0 stat("./myfont.ofm", {st_mode=S_IFREG|0644, st_size=1336, ...}) = 0 open("./myfont.ofm", O_RDONLY) = 5 write(4, "INPUT ./myfont.ofm\n", 19) = 19 fstat(5, {st_mode=S_IFREG|0644, st_size=1336, ...}) = 0 mmap(NULL, 4096, PROT_READ|PROT_WRITE, MAP_PRIVATE|MAP_ANONYMOUS, -1, 0) = 0x7f7746fe9000 fstat(5, {st_mode=S_IFREG|0644, st_size=1336, ...}) = 0 lseek(5, 0, SEEK_SET) = 0 read(5, "\1N\0\22\0\0\0\177\0000\0\17\0\n\0\5\0X\0\t\0\0\0\7\322\v\236&\0\240\0\0"..., 1336) = 1336 lseek(5, 1336, SEEK_SET) = 1336 close(5) = 0 munmap(0x7f7746fe9000, 4096) = 0 access("./myfont.ovf", R_OK) = 0 stat("./myfont.ovf", {st_mode=S_IFREG|0644, st_size=804, ...}) = 0 access("./myfont.ovf", R_OK) = 0 stat("./myfont.ovf", {st_mode=S_IFREG|0644, st_size=804, ...}) = 0 open("./myfont.ovf", O_RDONLY) = 5 write(4, "INPUT ./myfont.ovf\n", 19) = 19 fstat(5, {st_mode=S_IFREG|0644, st_size=804, ...}) = 0 mmap(NULL, 4096, PROT_READ|PROT_WRITE, MAP_PRIVATE|MAP_ANONYMOUS, -1, 0) = 0x7f7746fe9000 fstat(5, {st_mode=S_IFREG|0644, st_size=804, ...}) = 0 lseek(5, 0, SEEK_SET) = 0 read(5, "\367\312\0\322\v\236&\0\240\0\0\363\0\322\v\236&\0\20\0\0\0\240\0\0\0\5cmb10"..., 804) = 804 lseek(5, 804, SEEK_SET) = 804 close(5) = 0 munmap(0x7f7746fe9000, 4096) = 0 access("./cmb10.ofm", R_OK) = -1 ENOENT (No such file or directory) access("./cmb10.tfm", R_OK) = 0 stat("./cmb10.tfm", {st_mode=S_IFREG|0644, st_size=1336, ...}) = 0 access("./cmb10.tfm", R_OK) = 0 stat("./cmb10.tfm", {st_mode=S_IFREG|0644, st_size=1336, ...}) = 0 open("./cmb10.tfm", O_RDONLY) = 5 write(4, "INPUT ./cmb10.tfm\n", 18) = 18 fstat(5, {st_mode=S_IFREG|0644, st_size=1336, ...}) = 0 mmap(NULL, 4096, PROT_READ|PROT_WRITE, MAP_PRIVATE|MAP_ANONYMOUS, -1, 0) = 0x7f7746fe9000 fstat(5, {st_mode=S_IFREG|0644, st_size=1336, ...}) = 0 lseek(5, 0, SEEK_SET) = 0 read(5, "\1N\0\22\0\0\0\177\0000\0\17\0\n\0\5\0X\0\t\0\0\0\7\322\v\236&\0\240\0\0"..., 1336) = 1336 lseek(5, 1336, SEEK_SET) = 1336 close(5) = 0 munmap(0x7f7746fe9000, 4096) = 0 brk(0x2281000) = 0x2281000 access("./cmb10.ovf", R_OK) = -1 ENOENT (No such file or directory) access("./cmb10.vf", R_OK) = -1 ENOENT (No such file or directory) write(1, "checksum mismatch in local font "..., 80) = 80 write(1, "t myfont.vf ignored.\n", 21) = 21 write(1, "No pages of output.\n", 20) = 20 unlink("texput.synctex") = -1 ENOENT (No such file or directory) unlink("texput.synctex.gz") = -1 ENOENT (No such file or directory) write(1, "Transcript written on texput.log"..., 34) = 34 write(3, "This is LuaTeX, Version beta-0.8"..., 227) = 227 close(3) = 0 munmap(0x7f7746fea000, 4096) = 0 exit_group(0) = ? +++ exited with 0 +++ |
|
I have made a zip with my files: can you check them ? I still see no problem on luatex. |
|
I confirm that all the files in your myfont.zip are totally equal to the files which I get (checked with "md5sum"). But I do get this warning. |
|
OK, now I'm able to reproduce the issue. |
|
A patch is in experimental, probably it will be in trunk / beta end of week. """ What seemed strange to me though, is that files in your archive have execute bit set. Why? """ Ah, maybe I have copied them from a Windows partitions with a TeXLive.. |
|
|
Date Modified | Username | Field | Change |
---|---|---|---|
2016-02-26 02:50 | igor | New Issue | |
2016-02-26 09:46 | luigi scarso | Note Added: 0001575 | |
2016-03-01 11:48 | luigi scarso | Note Added: 0001579 | |
2016-03-02 04:42 | igor | Note Added: 0001580 | |
2016-03-02 06:02 | igor | Note Edited: 0001580 | |
2016-03-02 07:11 | igor | Note Edited: 0001580 | |
2016-03-02 07:33 | igor | Note Edited: 0001580 | |
2016-03-02 07:33 | igor | File Added: strace.log | |
2016-03-02 07:34 | igor | Note Edited: 0001580 | |
2016-03-02 09:12 | luigi scarso | File Added: myfont.zip | |
2016-03-02 09:13 | luigi scarso | Note Added: 0001581 | |
2016-03-02 14:09 | igor | Note Added: 0001582 | |
2016-03-02 14:45 | igor | Note Edited: 0001582 | |
2016-03-02 14:45 | igor | Note Edited: 0001582 | |
2016-03-02 14:46 | igor | Note Edited: 0001582 | |
2016-03-02 14:46 | igor | Note Edited: 0001582 | |
2016-03-02 15:55 | luigi scarso | Note Added: 0001584 | |
2016-03-02 16:17 | igor | Note Edited: 0001582 | |
2016-03-02 18:23 | luigi scarso | Note Added: 0001585 | |
2016-03-02 18:24 | luigi scarso | File Deleted: myfont.zip | |
2016-03-02 18:24 | luigi scarso | File Added: myfont.zip | |
2016-03-02 22:12 | Hans Hagen | Status | new => closed |
2016-03-02 22:12 | Hans Hagen | Assigned To | => luigi scarso |
2016-03-02 22:12 | Hans Hagen | Resolution | open => fixed |
2016-03-02 22:12 | Hans Hagen | Fixed in Version | => 0.89.0 |