View Issue Details
| ID | Project | Category | View Status | Date Submitted | Last Update |
|---|---|---|---|---|---|
| 0000965 | luatex | luatex bug | public | 2016-02-26 01:50 | 2016-03-02 21: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 01:50 | igor | New Issue | |
| 2016-02-26 08:46 | luigi scarso | Note Added: 0001575 | |
| 2016-03-01 10:48 | luigi scarso | Note Added: 0001579 | |
| 2016-03-02 03:42 | igor | Note Added: 0001580 | |
| 2016-03-02 05:02 | igor | Note Edited: 0001580 | |
| 2016-03-02 06:11 | igor | Note Edited: 0001580 | |
| 2016-03-02 06:33 | igor | Note Edited: 0001580 | |
| 2016-03-02 06:33 | igor | File Added: strace.log | |
| 2016-03-02 06:34 | igor | Note Edited: 0001580 | |
| 2016-03-02 08:12 | luigi scarso | File Added: myfont.zip | |
| 2016-03-02 08:13 | luigi scarso | Note Added: 0001581 | |
| 2016-03-02 13:09 | igor | Note Added: 0001582 | |
| 2016-03-02 13:45 | igor | Note Edited: 0001582 | |
| 2016-03-02 13:45 | igor | Note Edited: 0001582 | |
| 2016-03-02 13:46 | igor | Note Edited: 0001582 | |
| 2016-03-02 13:46 | igor | Note Edited: 0001582 | |
| 2016-03-02 14:55 | luigi scarso | Note Added: 0001584 | |
| 2016-03-02 15:17 | igor | Note Edited: 0001582 | |
| 2016-03-02 17:23 | luigi scarso | Note Added: 0001585 | |
| 2016-03-02 17:24 | luigi scarso | File Deleted: myfont.zip | |
| 2016-03-02 17:24 | luigi scarso | File Added: myfont.zip | |
| 2016-03-02 21:12 | Hans Hagen | Status | new => closed |
| 2016-03-02 21:12 | Hans Hagen | Assigned To | => luigi scarso |
| 2016-03-02 21:12 | Hans Hagen | Resolution | open => fixed |
| 2016-03-02 21:12 | Hans Hagen | Fixed in Version | => 0.89.0 |