Перейти к содержанию
    

Исправление бага разбора переменной %TEMP% в XC16 v1.25 win32

Компилятор XC16 v1.25 при компиляции отладочного проекта выдаёт ошибку:

elf-ld.exe: cannot open linker script file

C:\\tmp00001ec8.00: Invalid argument

т.о. он пытается создать временные файлы в корне того диска, где лежит %TEMP%,

а в современной винде обычно %TEMP%=c:\<user profile>\AppData\Local\Temp и корень диска C: запрешён для записи пользователям.

На форуме microchip, в качестве решения, рекомендовали перенести %TEMP% на другой диск, корень которого разрешён для записи.

Я же покопался в компиляторе отладчиком и сделал патч:

XC16-LD.EXE
00003D1C: 75 EB
00003D1D: 22 11
00003D3F: 0A 0D

Также прилагаю автоматическую патчилку. Испытывал на win7 64bit - полёт нормальный.

xc16bugfix.zip

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты

Присоединяйтесь к обсуждению

Вы можете написать сейчас и зарегистрироваться позже. Если у вас есть аккаунт, авторизуйтесь, чтобы опубликовать от имени своего аккаунта.

Гость
Ответить в этой теме...

×   Вставлено с форматированием.   Вставить как обычный текст

  Разрешено использовать не более 75 эмодзи.

×   Ваша ссылка была автоматически встроена.   Отображать как обычную ссылку

×   Ваш предыдущий контент был восстановлен.   Очистить редактор

×   Вы не можете вставлять изображения напрямую. Загружайте или вставляйте изображения по ссылке.

×
×
  • Создать...