Jump to content

    

Обновление Win10 убило компилятор v6 (Keil 5.25)

Проблемы с компилятором v6.9 заметил после обновления Win10 x64 с версии 1709 на 1803.

Но работает, если снести всю активацию Keil (режим Trial).

С компилятором v5 проблем нет ни с активацией ни в Trial.

Однако, многие мои проекты уже "заточены" под v6 (C++11) и для перехода на v5 (C++03) нужно откатываться назад, а это - не очень хорошее решение.

К сожалению, обратно откатить винду без полной переустановки уже не получится - ее быкапы уже снес :(

 

Активация типовая, неделю назад все прекрасно компилилось, а тут открыл один из проектов и на тебе :crying:

 

Вот как ругается, если попытаться компильнуть хотя бы один файл:

*** Using Compiler 'V6.9', folder: 'C:\Keil\ARM\ARMCLANG\Bin'
ArmClang.exe: error: Failed to check out a license.Keil Licensing error: No TOOLS.ini file found
ArmClang.exe: note: Check that your license details are correct in the License Management dialog of MDK. Additional information is available at:
http://www.keil.com/support/man/docs/license/license_management.htm
If you need further help, provide this complete error report to your supplier or license.support@arm.com.
- ARMLMD_LICENSE_FILE: unset
- LM_LICENSE_FILE: unset
- ARM_TOOL_VARIANT: unset
- ARM_PRODUCT_PATH: unset
- Product location: C:\Keil\ARM\sw\mappings
- Toolchain location: C:\Keil\ARM\ARMCLANG\Bin
- Selected tool variant: mdk_pro
ArmClang.exe: note:  - Checkout feature: LIC0=TA...-.....-.....
- Feature version: 5.0201710
- Keil error code: 1
Product: MDK Professional 5.25
Component: ARM Compiler 6.9
Tool: armclang [5ced1d00]

 

Не помогают никакие попытки сноса Keil c последующей чисткой реестра.

 

По поиску нашел только это: http://www.keil.com/support/docs/3961.htm

Но это решение не помогает, ибо ситуация не с внешним отдельно устанавливаемым компилятором, а встроенным.

 

Сталкивался кто с подобным?

Share this post


Link to post
Share on other sites

Проверьте банальности - например права доступа к файлу, права на редактирование и т.д.

Или попробовать подложить его в каталог к ArmClang.exe

Share this post


Link to post
Share on other sites
ArmClang.exe: error: Failed to check out a license.Keil Licensing error: No TOOLS.ini file found

А с выделенным всё в порядке? Он на месте...

Share this post


Link to post
Share on other sites
Проверьте банальности - например права доступа к файлу, права на редактирование и т.д.

Или попробовать подложить его в каталог к ArmClang.exe

Пробовал ставить на другие диски, даже на внешний диск (USB-SSD), но ничего не меняется ((

На работе (где тоже обновил винду) такая же беда ((

 

А с выделенным всё в порядке? Он на месте

Да, разумеется. Пробовал даже копировать этот файл в во все папки компилятора, тоже бесполезно ((

Как и писал выше, не помогает полная установка с предварительной чисткой реестра.

 

Как только сношу активацию (удаляя из TOOLS.ini соотв. строку "LIC0=xxxxxx"), компилятор v6 работает, но разумеется сразу включается Trial ограничение 32кб.

Тока вбиваю серийник (активация), то проблема возвращается.

Share this post


Link to post
Share on other sites
Как только сношу активацию (удаляя из TOOLS.ini соотв. строку "LIC0=xxxxxx"), компилятор v6 работает, но разумеется сразу включается Trial ограничение 32кб.

Тока вбиваю серийник (активация), то проблема возвращается.

 

Думаю куйл для проверки активации лезит куда-то, например в железо, а ему не дают.

Надо как-то права кейлу и его экзешникам дать, может от админа запуститиь...

 

Share this post


Link to post
Share on other sites
Думаю куйл для проверки активации лезит куда-то, например в железо, а ему не дают.

Все мои компы и так имеют права админов. Права armclang.exe - полные, ничего не запрещено.

Но странно то, что до обновления винды все работало как часы, а после - накрылась только версия компилятора v6, а версия v5 работает как ни в чем ни бывало :wacko:

 

Пробую запускать компилятор в командной строке:

post-2831-1526055472_thumb.jpg

 

 

После закомментировал ключ (так легко отключается активация) в TOOLS.ini, но повторый запуск компилятора из командной строки привел к такой же "ругани".

После открыл кейл и сразу закрыл. Чтобы он "съел" удаленный ключ.

И как запустил компилятор из командной строки, тот заработал, но очевидно в режиме TRIAL

 

Т.е. получается, что компилятор лезет куда-то в реестр.... А чтобы выяснить куда именно, похоже, придется подключать соотв. софты ((

 

 

Азиатские коллеги тоже наступили на эти грабли с Win10 1803:

http://forum.armfly.com/forum.php?mod=view...d&tid=86498

 

Вот в переводе.

Share this post


Link to post
Share on other sites

Если надо работать, то можно в виртуалку 7-ку поставить как временное решение.

Share this post


Link to post
Share on other sites
Если надо работать, то можно в виртуалку 7-ку поставить как временное решение.

Тоже прихожу к такому же решению ((

Ну и ждать нормального патча от Keil или соотв. обновку от M$ ;)

 

Share this post


Link to post
Share on other sites

Ключ по-новой сгенерить пробовали?

Share this post


Link to post
Share on other sites
Ключ по-новой сгенерить пробовали?

Первым делом с этого начал

 

Share this post


Link to post
Share on other sites

Итоги:

вкатил виртуалку на предыдущей версии win 10 (1709), там все работает. Вердикт - что-то в винде после этого весеннего обновления оч. сильно поменялось, что компилятор взбунтовался.

Чуток по-пробовал работать под виртуалкой, но мне оказалось это очень неудобно, и коряво, по крайней мере в Keil. До этого опыта эксплуатации виртуалок не было, поэтому корявости можно списать не неопытность ))

 

Но к счастью буквально сегодня я выяснил, что предыдущая версия компилятора - v5 - тоже поддерживает C++11 (не все фишки, но очень-очень многие), хотя до этого я был твердо убежден, что V5.x умеет лишь C++03.

А "ларчик просто открывался" - нужно лишь добавить соотв. ключик в строку "misc" компилятора: "--cpp11" (без кавычек). Вот подробности: http://www.keil.com/support/docs/3696.htm

Но есть и минусы v5: "Note: C++11 dynamic syntax checking is not available with the earlier compiler, armcc. The highest C++ standard for syntax checking with armcc in MDK-ARM is C++03." Но это можно потерпеть, пока ARM не вылечит V6 ))

Короче, проекты, заточенные под С++11, теперь успешно собираются, работают.

Ну, а пока ARM не выпустит обновку компилятора V6 (надеюсь, выпустит), будут сидеть по-прежнему под V5.

 

 

зы. С некоторых пор компилятор v6 можно ставить отдельно, я скачивал тут: https://developer.arm.com/products/software...loads/version-6

Он прекрасно подцепился к Keil (как подцеплять есть в интернетах). В данном случае вместо "встроенного" в Keil v6.9 я ставил "внешний" v6.10. Работал .... до обновления винды ((

 

Надеюсь, кому-то пригодятся эта информация ))

Share this post


Link to post
Share on other sites
Чуток по-пробовал работать под виртуалкой, но мне оказалось это очень неудобно, и коряво, по крайней мере в Keil. До этого опыта эксплуатации виртуалок не было, поэтому корявости можно списать не неопытность ))

А что не понравилось? У меня хост Linux, если что-то надо в Win, то стоит "семерка" в VirtualBox. Из 8 потоков 2 отдал ей. Из 16 Гб ОЗУ выделил 4 Гб. В BIOS только нужно проверить, что включена поддержка аппаратной виртуализации. Не отличишь, в виртуалке или нет работаешь. Правда, у меня еще SSD.

Share this post


Link to post
Share on other sites
В BIOS только нужно проверить, что включена поддержка аппаратной виртуализации. Не отличишь, в виртуалке или нет работаешь. Правда, у меня еще SSD.

Не в этом дело, а в том, что у меня проекты находятся на внешнем USB3.0 SSD, который на всех компах определяется под одной и той же буквой ("Z").

Как только подключаю этот диск видимым под виртуалкой, то он сразу перестает быть виден под виндой, а у меня на этом же диски и браузер и почта и т.п.

Да и очково в виртулку подключать важный диск в режим "не только чтение" (((

 

Короче, чтобы проверить все под виртуалкой, пришлось сделать виртуальный диск (файл 2Гб), который в виртуалке подключил под той же буквой.

Этот диск подключил к винде, появился новый диск, закинул туда файлы проектов со своего внешнего SSD диска.

Поработал, теперь все нужно синхронизировать назад...

Короче, сплошной гемор при синхронизации проектов или я просто "не умеют их готовить" ...

 

Была мысль расшарить папку проектов с внешнего диска и сделать ее видимой в виртуалке, как внешний сетевой диск.

Но неожиданное (для меня случайное) решение проблемы с C++11 в компиляторе v5 (см. пред. пост), вовсе отменило нужду в виртуалке.

Поэтому пока не вылечат винду или компилятор V6, буду работать в v5 с соотв. ключом компиляции.

 

 

А виртуалка - отличная находка для теста софта на разных компах или, например, чтобы изолировать некоторый "левый" софт от интернетов.

Share this post


Link to post
Share on other sites

На днях (June 10, 2018) команда Arm Compiler Team признала косяк своего компилятора v6 с новым обновлением Windows 10 "April 2018 Update"

вот тут подробности: http://www.keil.com/support/docs/4043.htm

 

В середине июня обещают выпустить исправленную версию компилятора 6.10.1, также эта версия выйдет в обновлении среды MDK v5.26.

Ура!!! :08:

 

 

зы. Если кто из разработчиков использует этот компилятор, откликнитесь, интересует ваше мнение по этому компилятору. Лучше в личку :)

Share this post


Link to post
Share on other sites
Guest
This topic is now closed to further replies.