Я хочу построить MiKTeX (в частности pdflatex) для решенияэтотпроблема конфиденциальности с pdflatex путем примененияэтотизменять.
Я последовал заэтоткак.
На новой установке Windows 7 SP1 (32-разрядной) я установил:
- CMake (cmake-2.8.12.2-win32-x86.exe)
- Visual Studio C++ 2008 с пакетом обновления 1 (SP1) (VS2008ExpressWithSP1ENUX1504728.iso)
- Cygwin (по умолчанию с bison, flex и diffutil)
- ActivePerl (ActivePerl-5.20.1.2000-MSWin32-x86-64int-298557.msi)
- libxslt (libxslt-1.1.26.win32.zip)
- MiKTeX basic с функцией «установки отсутствующих пакетов на лету» (basic-miktex-2.9.5105.exe)
- HTML Help Workshop
- Windows SDK для Windows Server 2008 (6.0.6001.18000.367-KRMSDK_EN.iso)
- с выбранными только заголовочными файлами и библиотеками Windows и средствами разработки Windows
- ImageMagick (ImageMagick-6.9.0-0-Q16-x86-dll.exe)
К Windows PATH
я добавил:
;C:\cygwin\bin;C:\libxslt-1.1.26.win32\bin;C:\Program Files\HTML Help Workshop
Я извлек исходный код MiKTeX (miktex-2.9.4106.tar.bz2) вC:\miktex
В C:\miktex\CMakeLists.txt
я установилNO_GUI = TRUE
Я запустил командную строку Visual Studio 2008 и ввел следующее:
cd \miktex
cmake -G "NMake Makefiles"
nmake
Строительство остановлено по следующим причинам:
[ 15%] Building C object Libraries/3rd/obsdcompat/CMakeFiles/MiKTeX209-obsdcompat.dir/bsd-asprintf.c.obj
bsd-asprintf.c
c:\miktex\libraries\3rd\obsdcompat\defines.h(91) : error C2061: syntax error : identifier 'u_int8_t'
c:\miktex\libraries\3rd\obsdcompat\defines.h(91) : error C2059: syntax error : ';'
c:\miktex\libraries\3rd\obsdcompat\defines.h(92) : error C2061: syntax error : identifier 'u_int16_t'
c:\miktex\libraries\3rd\obsdcompat\defines.h(92) : error C2059: syntax error : ';'
c:\miktex\libraries\3rd\obsdcompat\defines.h(93) : error C2061: syntax error : identifier 'u_int32_t'
c:\miktex\libraries\3rd\obsdcompat\defines.h(93) : error C2059: syntax error : ';'
NMAKE : fatal error U1077: 'C:\PROGRA~1\MICROS~1.0\VC\bin\cl.exe' : return code '0x2'
Stop.
NMAKE : fatal error U1077: '"C:\Program Files\Microsoft Visual Studio 9.0\VC\BIN\nmake.exe"' : return code '0x2'
Stop.
NMAKE : fatal error U1077: '"C:\Program Files\Microsoft Visual Studio 9.0\VC\BIN\nmake.exe"' : return code '0x2'
Stop.
Мне удалось обойти эту и последующие ошибки, но после каждого обходного пути сборка снова останавливалась с новыми ошибками, не связанными с обходными путями. В конце концов я перестал подозревать, что что-то не так с моей средой сборки или с тем, как я ее использовал (отсюда и подробности), но я понятия не имею, в чем проблема.
решение1
Не выполняйте сборку в исходном каталоге.
Исторические:
Внесение исправлений
pdftex.web
и ,pdftoepdf.cc
еслиPrograms\TeXAndFriends\pdftex
это необходимо (например, поиск в этих файлах.Fullbanner
и.FileName
соответственно) перед сборкой приведет к созданию двоичных файлов MiKTeX pdftex, которые не добавляют метаданные/свойства PDF, не указанные явно.