How to make xelatex invoke my manually installed ghostscript instead of the one accompanying TeXLive?

How to make xelatex invoke my manually installed ghostscript instead of the one accompanying TeXLive?

In my investigation, TeXLive installer will automatically install GhostScript (32 bit version) as follows.

Bildbeschreibung hier eingeben

I don't know whether xelatex depends on this GS.

I prefer to use GS that I manually install. So the question is

If xelatex invokes GS (I am not sure), how can I make xelatex invoke my manually installed GS rather than one installed by TeXLive?

In other words, if xelatex invokes gswin32c, how can I make it invoke gswin64c that I manually install?

Antwort1

Here's the relevant part of dvipdfmx.cfg:

137 %% In TeX Live, we use the rungs wrapper instead of ps2pdf, becuse we
138 %% must omit the -dSAFER which ps2pdf specifies: in order for pstricks
139 %% to work with xetex,
140 %% /usr/local/texlive/*/texmf-dist/dvips/pstricks/pstricks.pro (for
141 %% example) needs to be accessed.  (Also, it is better to use our
142 %% supplied gs on Windows.)  You can also add -dNOSAFER to the ps2pdf
143 %% command line.
144 %%
145 %% Incidentally, especially in TL, more than one dvipdfmx.cfg may be
146 %% extant.  You can find the one that is active by running:
147 %% kpsewhich -progname=dvipdfmx -format='other text files' dvipdfmx.cfg
148 %% and control which one is found by setting DVIPDFMXINPUTS.
149 %%
150 D  "rungs -q -dNOPAUSE -dBATCH -dEPSCrop -sDEVICE=pdfwrite -dCompatibilityLevel=%v -dAutoFilterGrayImages=false -dGrayImageFilter=/FlateEncode -dAutoFilterColorImages=false -dColorImageFilter=/FlateEncode -sOutputFile='%o' '%i' -c quit"

The rungs script is in the binary distribution of TeX Live; actually it is a symbolic link to .../texlive/2014/texmf-dist/scripts/texlive/rungs.tlu (on windows it's probably rungs.exe that calls the same rungs.tlu); it has

if os.type == 'windows' then
   command={'gswin32c'}
else
   command={'gs'}
end

so the system will run whatever gs executable comes first after scanning the current PATH. On Windows running gswin32c is hardwired. You could try changing that line in rungs.tlu.

verwandte Informationen