IRC Logs

Log of #ghostscript at irc.freenode.net.

Search:
 <<<Back 1 day (to 2015/08/26)20150827 
Robin_Watts chrisl: Did you see pipitas comments from yesterday?08:11.26 
kens Robin_Watts : chrisl gave the answer too08:11.38 
  and pipitas was OK with it08:11.44 
Robin_Watts kens: Fab.08:12.01 
  One possible slight niggle... when he built with --with-libiconv=gnu, it gave pipitas warnings that it was excluding the devices due to iconv not being found - but didn't exclude the devices.08:12.55 
kens I didn't notice that one#08:13.09 
Robin_Watts (if I'm understanding it correctly)08:13.10 
  I guess that could be fixed either by really excluding the devices, or by changing the messages to "your build will fail due to iconv being missing"08:13.43 
chrisl Robin_Watts: he said he used --with-libiconv=none - I didn't see any mention of --with-libiconv=gnu08:54.46 
Robin_Watts chrisl: His pastebin showed libiconv=gnu08:55.23 
chrisl Well, that won't work anyway08:55.58 
Robin_Watts In what way will it not work?08:57.22 
chrisl Does OS X use glibc?08:57.35 
Robin_Watts I dunno.08:57.45 
  Regardless, there does seem to be a problem.08:57.58 
chrisl No, there isn't08:58.05 
Robin_Watts However he runs configure, it then says:08:58.09 
  configure: WARNING: Unable to include opvp/oprp driver due to missing or disabled prerequisites...08:58.25 
  configure: WARNING: Unable to include opvp/oprp driver due to missing iconv/libiconv...08:58.27 
  which seem like perfectly reasonable warnings.08:58.36 
  *BUT* the link stage tries to include opvp anyway.08:59.02 
  So the warning is lying.08:59.16 
chrisl Not for me.....08:59.20 
Robin_Watts Would him not 'make clean'ing between configures explain what he saw?09:00.29 
chrisl Likely. yes. It probably left "stale" .dev files lying around09:01.06 
  I've noticed that kind of issue, which baffles me because *everything* should depend on the top makefile09:02.01 
Robin_Watts Windows makes .ldt files or something like that that have the link line in.09:02.26 
chrisl The linker scripts do get remade, it's the .dev files that *seem* to show the problem09:03.17 
Robin_Watts hm. It's the linker scripts I've had problems with before, IIRC.09:03.45 
  but then the reliability of my memory is well documented, so...09:04.16 
chrisl I *think* I fixed those - the reason I haven't sorted the .dev files problem is that I don't know what the problem is....09:04.31 
  But, in general, rerunning configure and *not* doing a make clean is a bad idea09:05.23 
  Actually, we do have *lots* of targets that don't depend on their own makefiles, nevermind the top level makefile :-(09:08.21 
  I'll look at that properly - *after* the next release......09:09.55 
  Apple appears to use a BSD derived libc, not glibc09:14.35 
kens Hmm teh cluster isn't very happy today09:33.02 
  and it died again09:55.39 
sebras tor8: was the thirdparty/jpegxr repo I prepared to your satisfaction?09:56.13 
Robin_Watts kens: AWS claims to be fine...09:57.14 
kens connections keep droping09:57.33 
Robin_Watts And the load average on casper is fine.09:57.39 
  kens: yeah, just checking possible reasons, and I can't see anything obvious :(09:57.55 
  Does a vanilla run have the same problems ?09:58.03 
kens yes, its all the same09:58.09 
Robin_Watts The clustermaster.pl process dates from 12 minutes ago...10:00.01 
  so that might suggest that something crashed and reran ?10:00.16 
kens It does seem to be genuine connectivity problems10:00.19 
  sometimes one noce, sometiems lots10:00.27 
  and someteimes, it works10:00.33 
  Robin_Watts : it reruns when it gives up yes10:00.49 
Robin_Watts Maybe it's an emerging amazon problem and they haven't logged it yet.10:00.52 
kens Tat is possible, I guess10:01.01 
Robin_Watts kens: The job reruns, certainly. I'm not sure the clustermaster.pl process should do though.10:01.13 
kens no idea, to be honest10:01.29 
  12 minutes ago is roughtly when I submitted ths test10:01.55 
  09:47 UTC10:02.12 
Robin_Watts I think the clustermaster.pl thing may run on an cron job; it starts up, sees if there is one already running (and if so dies), and if not, checks to see if there is anything to do.10:03.26 
  So, it's possible clustermaster dies when the cluster is idle.10:03.39 
  Or it's possible it doesn't :)10:03.45 
kens Err perhaps :-)10:03.54 
Robin_Watts There are bits of the cluster that are still a mystery to me.10:03.56 
kens Its all a black box to me10:04.06 
  I wouldn't worry about it, unless it gets worse10:04.34 
  Its just typical that it happens when I need the cluster :-)10:05.02 
tor8 sebras: I haven't received any patches from you for jpegxr. where is the repo you prepared?10:48.15 
  sebras: nvm, found it. looks good, I've pushed that to the main thirdparty repository.13:03.37 
henrys chrisl: I should have something that will work for COMPILE_INITS = 0 today.13:21.54 
paulgardiner I believe I've fixed MuPDF's bug #696123, but I have no recollection how to cluster test14:22.29 
Robin_Watts git cluster14:22.39 
  If you've set the appropriate git alias.14:22.51 
paulgardiner I have it split amongst several commits. Does that matter?14:24.08 
Robin_Watts nope.14:24.24 
  casper has a load average of 8.4. Ouch.14:28.21 
  10.6.14:28.25 
henrys Robin_Watts: I'd like gslibctx.c better if we passed the gs_lib_ctx_t instead of gs_memory_t so folks will never use the latter when changing the code, but gs_lib_ctx_get_default_device_list() indicates the context may not exist. Do you recall the circumstances of why we need that check for "mem" in that procedure?14:29.07 
  Robin_Watts: I guess it's really not a necessary changs, just seems confusing to have 2 memory pointers to choose from14:29.50 
Robin_Watts I agree it would be nicer to use gs_lib_ctx. Let me look.14:30.11 
  I'm going to refer you to chrisl for an answer on that one though, I think.14:30.51 
henrys right, I didn't check that ;-)14:31.39 
Robin_Watts henrys: I can only see gsapi_get_default_device_list called from one place, and that gets the context, and then gets the memory from the context, so passing the context would be more direct.14:36.35 
  Presumably chrisl knows of other uses.14:36.46 
henrys Robin_Watts: thanks, it might have also been a stopgap in his large change that isn't relevant anymore. We'll see.14:38.22 
chrisl henrys: so, traditionally, it's been memory pointers that have been passed around in the graphics library, rather than the gs_lib_ctx14:43.59 
henrys chrisl: so you don't agree with what we said above? I think it's going to be error prone the way it is now.14:46.38 
  but not a big deal14:46.45 
chrisl henrys: I wasn't disagreeing, just pointing out. I really have only hammered Robin's stuff so it will build and run (gs anyway), I haven't made any progress on twisting it to my own preferences14:48.23 
Robin_Watts chrisl: I believe this is about golden/master, not language_switch.14:49.05 
henrys chrisl:sorry yes this is in the current code. Running pcl with a new profile directory does crash the code. Not sure when that regressed.14:50.06 
chrisl Oh, okay, sorry..... well, as I said, everywhere else in the graphics library we pass around a memory pointer - I don't agree with that original decision, but I think adding inconsistency is not going to make it *less* error prone.....14:50.46 
henrys chrisl: the issue is the context library must use it's own allocator and not use the one that is passed in.14:51.34 
Robin_Watts I think that the graphics lib should continue to pass gx_memory_t's.14:53.17 
  But when we call gs_lib_ctx_.... we should be finding the lib_ctx from the memory_t and passing that in.14:53.55 
chrisl henrys: I still think consistency trumps logic in terms of avoiding confusion14:54.24 
henrys chrisl: okay well I have a simple fix for my crash that doesn't change the parameters so I'll use that for now.14:56.04 
  I'm not even looking at the language switch yet. I'm going to get the current PCL acting more like gs at startup (I'll do that incrementally) then we'll look at LS.14:56.48 
Robin_Watts Paul: Your deep copy doesn't copy strings.14:59.24 
  henrys: You might want to just check what I've done in case when you arrive where gs is, you find that language_switch has moved the goalposts :)15:00.06 
paulgardiner It doesn't need to for the current use, but maybe it should15:00.15 
  We have functions that alter strings?15:00.41 
henrys Robin_Watts: I did I have them running side by side.15:00.42 
chrisl henrys: ah, I see your original question was to Robin: I can't remember why I have gs_lib_ctx_get_default_device_list() checking the mem pointer existing - possibly just belts and braces15:01.24 
Robin_Watts paulgardiner: I don't know.15:04.00 
  Possibly not.15:04.11 
  I suspect not actually, you're probably fine.15:04.46 
henrys chrisl: seems like that is more "assertion like" than a test but no big deal if we aren't changing the parameter15:04.56 
chrisl henrys: so, what was causing the crash?15:05.36 
  henrys: oh, and by the way, gs_lib_ctx_get(set)_default_device_list are really "internal API" calls. Normally, users of the GS API would call the gsapi version15:08.45 
henrys chrisl: oh that's interesting: the lib context allocates space for the icc directory with gs's initial allocator as part of gs_malloc_init() then pcl wraps the allocator with the chunk allocator, when the icc profile directory is changed lib context frees the directory string with the chunk allocator's free, not the original allocators free. So we really do have a special case here in the allocator where it's important folks not use15:09.22 
  the input mem parameter within lib context.15:09.22 
  the last "allocator" should be replaced with "lib context"15:10.20 
  that is why I wanted to remove the parameter so there is no chance of it being used.15:11.32 
chrisl henrys: I agree that makes sense, but are you going to do the same everywhere else the same confusion could arise?15:12.11 
henrys not today15:12.24 
  we can leave it, no big deal for me.15:12.48 
chrisl If we were starting from (near) scratch, I would rather pass the context around everywhere, but......15:13.08 
  henrys: perhaps ctx->profiledir should be a structure with the string, length and allocator pointer in it15:15.25 
henrys is worried about testing: 2 regression crashes - pcl with no device parameters and the iccdirectory should have been caught by automated testing.15:16.35 
  of course hindsight is 20/2015:17.09 
chrisl I doubt we regression test with a "custom" ICC directory15:17.37 
  Oh, I think maybe I do remember why gs_lib_ctx_get_default_device_list() checks for mem.......15:18.24 
  Passing in mem == NULL guarantees a way of getting back the graphics library's build time list15:20.34 
Robin_Watts chrisl: passing in a NULL lib_ctx could still do the same.15:22.22 
henrys is ray on vacation and I missed an email?15:23.47 
chrisl Robin_Watts: Yes, I just meant I'd done it so there was a way to get it15:24.02 
Robin_Watts henrys: Ray sent a mail around saying he'd be missing tuesdays meeting for a medical thing.15:24.38 
chrisl I wasn't justifying using gs_memory_t - that was purely for consistency15:24.42 
Robin_Watts I haven't seen him since.15:24.44 
  chrisl: sure.15:24.48 
henrys Robin_Watts: yeah I got that, hope all is well.15:25.24 
Robin_Watts I hope we shouldn't be reading anything bad into his absence.15:25.30 
  Morning rayjj.17:10.58 
sh4rm4^bnc i'm crosscompiling ghostscript and there are 2 C files that are built with a wrong include path17:59.09 
  -I/include -o ./soobj/gsicc_lcms2_1.o -c ./base/gsicc_lcms2.c17:59.14 
  -I/include -o ./soobj/gsicc_create_1.o -c ./base/gsicc_create.c17:59.22 
  can someone point out the makefile rule that builds these 2 files with different CFLAGS, pulling in -I/include (which is the host's and wrong) ?18:00.03 
rayjj Robin_Watts: morning (sorry I was in a debug session)18:00.20 
sh4rm4^bnc (usually stuff like this is caused by bogus *-config scripts such as freetype-config)18:00.53 
Robin_Watts sh4rm4^bnc: Looking now.18:01.00 
sh4rm4^bnc thanks18:01.05 
Robin_Watts rayjj: I hope tuesday went OK.18:01.15 
  sh4rm4^bnc: It's in base/lib.mak...18:02.10 
  It's probably the definition of GLLLCMS2CC that's incorrect.18:02.39 
sh4rm4^bnc "GLLLCMS2CC" not found18:03.34 
Robin_Watts GLLCMS2CC, sorry18:03.51 
  sh4rm4^bnc: The person who is best placed to handle this is chrisl, and he's gone for the night.18:04.35 
  It would help us immensely if you could do a clean, then reconfigure, the make, and drop the output from all of that into a pastebin.18:05.09 
  That would ensure that chrisl has the right information to be able to fix it when he returns tomorrow.18:05.28 
sh4rm4^bnc build log http://sprunge.us/agAK18:07.34 
  recipe https://github.com/sabotage-linux/sabotage/blob/b6b2658a49ef4d20a2e385589e4a5d548ab93912/pkg/ghostscript18:07.57 
  the build of the above mentioned 2 files pulls in host's /include which contains 64bit headers18:09.27 
  so it likely produces horribly broken obj's18:09.52 
Robin_Watts sh4rm4^bnc: I'm guessing that $(LCMS2SRCDIR) is not being set.18:11.11 
  hence $(II)$(LCMS2SRCDIR)$(D)include$(_I) is turning into -I/include18:11.32 
sh4rm4^bnc that sounds plausible18:12.14 
Robin_Watts Are you using code from our git repo? Or from a release from us? Or from a package you got from a distro?18:12.15 
rayjj Robin_Watts: Tuesday was fine. Monday night wasn't fun. Results are good, just waiting for pathology on the parts they removed (polyps)18:12.34 
sh4rm4^bnc i use the 9.16 release and trying to fix the x-compile of sabotage linux' recipe18:12.50 
Robin_Watts rayjj: Glad to hear it's looking good.18:13.03 
rayjj Robin_Watts: the doc that did it has done about 35,000 of these and he thinks they are fine. Two of the other doctors there said that he's the best in the department (UCI Medical Center) and they have him do their procedures18:13.49 
Robin_Watts sh4rm4^bnc: If it was me, I'd nobble the line in lib.mak that sets GLLCMS2CC and change $(II)$(LCMS2SRCDIR)$(D)include$(_I) to $(II)FOO$(LCMS2SRCDIR)BAR$(D)include$(_I)18:14.23 
  and then rebuild, and see if the compile line comes out as -IFOOBAR/include18:14.42 
  If it does, then we know that we're in the right area.18:14.52 
sh4rm4^bnc lcms2 is installed in the crosscompiler prefix18:14.57 
  how can i make it pick up the system one ?18:15.08 
Robin_Watts sh4rm4^bnc: We don't recommend people using shared libs.18:15.30 
sh4rm4^bnc why ?18:16.10 
Robin_Watts because we test with our versions.18:16.28 
rayjj Robin_Watts: I've removed the last vestiges of the compressed_color encoding. pdf14 had it sort of messily hooked in, and I wanted to clean up the pdf14 device before the hacking on it for SimulateOverprint usage18:16.31 
Robin_Watts rayjj: Oh, is the simulated overprint stuff not done?18:16.55 
rayjj Robin_Watts: I'm running a regression now, but you might be the best person to review since mvrhel is out18:17.07 
Robin_Watts I thought the driving force for that was gproof.18:17.20 
  sh4rm4^bnc: I think I would expect LCMS2SRCDIR to be set in Makefile.18:18.00 
rayjj Robin_Watts: no, the gproof is a real DeviceN device since we wanted to have the separations for the viewer side18:18.08 
Robin_Watts If it's not being set, then that would explain what you're seeing I think.18:18.14 
rayjj the simulation is for non-DeviceN devices to be able to see the overprint effects collapsed into the Gray, RGB or CMYK device18:18.53 
Robin_Watts rayjj: Mvrhel forms the rgb data from the cmyk+spots, I think.18:19.05 
  Will that be correct w.r.t simulated overprint ?18:19.19 
rayjj Robin_Watts: right, but the gproof device also emits the separation planes18:19.35 
Robin_Watts Right.18:19.39 
  the gproof device needs BOTH an rgb version that is correct w.r.t overprint, AND the separation planes.18:20.05 
rayjj The RGB from CMYK+spots will be correct w.r.t overprint18:20.08 
Robin_Watts Great18:20.13 
  (apologies for asking newbie questions)18:20.20 
  rayjj: Sure, I'll look at the code. Is it on your repo?18:20.48 
rayjj Robin_Watts: np. Effectively, the RGB should look just like the tiffsep CMYK converted to RGB18:20.51 
  Robin_Watts: not yet, I'll let you know. I wanted to run the cluster first to see if it blows up anything18:21.24 
Robin_Watts sure.18:21.29 
rayjj since it does touch some GC enumerated structures18:21.45 
  looks like no SEGV's that's good. but I got a bunch of diffs (I didn't have some of ken's recent changes) bmpcmp will probably discover lots of 'no differences' since I've now updated18:31.32 
sh4rm4^bnc Robin_Watts, your suggested change does indeed yield -IFOOBAR/include18:37.46 
  and fixes the problem as -IFOOBAR not exists18:37.59 
Robin_Watts sh4rm4^bnc: So... have a grep for GSLCMS2SRCDIR18:41.34 
  see if it's set in Makefile18:41.42 
  If not, then perhaps that is a bug with configure.18:41.54 
sh4rm4^bnc ~/x-prefix/i486/src/build/ghostscript/ghostscript-9.16 $ cat Makefile | grep GSLCMS2SRCDIR18:44.02 
  ~/x-prefix/i486/src/build/ghostscript/ghostscript-9.16 $ 18:44.02 
  it appears to be missing18:44.21 
Robin_Watts ok, so add a line into Makefile now that sets it, and that should solve your problem for now. Then come back in about 16 hours time and talk to chrisl :)18:44.44 
sh4rm4^bnc ok18:49.01 
  thanks so far, i think i'll commit my sed foobar fix for now18:49.50 
henrys another crash if I set the pcl font path to a bad directory the enumeration stuff blows up ... ugh18:52.52 
sh4rm4^bnc btw base/genarch base/genconf base/echogs need to be compiled with $HOSTCC rather than $CC18:54.59 
  because if compiled with the crosscompiler, the resulting binaries cannot be run on the host18:55.34 
rayjj sh4rm4^bnc: yep, that makes sense18:56.11 
  sh4rm4^bnc: the cross compile build used to work, before all of the re-org18:56.41 
  I know because I did some for potential customers18:57.20 
sh4rm4^bnc including all the third party libs in the source tree introduces a ton of complexity for little gain...18:58.15 
rayjj sh4rm4^bnc: but genarch is problematic since running that on the host WON'T give the right arch.h for the target18:58.24 
sh4rm4^bnc i understand that it is helpful for windows folks...18:58.29 
rayjj sh4rm4^bnc: either arch.h should be hand built, or genarch needs to be built for the target and run there18:59.22 
sh4rm4^bnc but on unix systems it's common practice to use (and require) the libs to be installed in the right version18:59.24 
  rayjj, oh18:59.44 
rayjj sh4rm4^bnc: the problem with the third party libs is that distros don't always take needed fixes in a timely fashion and we test with our versions19:00.40 
sh4rm4^bnc so the in-tree copies are patched ?19:01.02 
rayjj sh4rm4^bnc: possibly. It depends. The git would tell you if we have patches19:01.38 
  openjpeg was particularly troublesome, iirc w.r.t getting the distro versions to have the patches we needed19:03.03 
sh4rm4^bnc hmm in that case it may indeed make sense... but i doubt that all the included copies need patching19:04.10 
  like expat, freetype, lcms, libpng, libtiff...19:04.22 
  if all the libs are taken from the in-tree copies, we have a huge duplication of compiletime19:06.17 
  and later a huge waste of unsharable memory19:06.29 
rayjj and some of our users don't have the permissions to update their systems, but still want to build our stuff. Then there are the Windows users (as you mentioned) where none of these are readily available19:06.51 
sh4rm4^bnc rather than using the existing mmapped libpng.so, ghostscript has to load its own (static?) copy19:07.01 
rayjj sh4rm4^bnc: shared libs are still OK, I thought. The distros insist on it.19:07.49 
  sh4rm4^bnc: AFAIK, if the configure script detects the third party libs and if the version is OK for our purposes, uses it (the Makefle has the SHARE_*=1 for those that will be shared)19:15.27 
sh4rm4^bnc ah nice19:31.29 
 Forward 1 day (to 2015/08/28)>>> 
ghostscript.com
Search: