Установщик NSIS (в OS X) выдает «Недопустимая команда: TargetMinimalOS» - PullRequest
3 голосов
/ 22 сентября 2010

Я собрал NSIS 2.46 на своем компьютере с OS X в соответствии с инструкциями, приведенными на http://nsis.sourceforge.net/Docs/AppendixG.html#G.3. Сборка работала нормально, и он правильно создает мой установщик.

Мой установщик полностью работает, но я попытался добавить команду:

TargetMinimalOS 5.0

Это не важно для моей задачи; насколько я понимаю, все это позволяет установщику работать в Юникоде, что не обязательно. Казалось бы, что-то, что было бы разумно добавить, так как я все равно не поддерживаю старые версии Windows. Я поставил его сразу после команды «SetCompressor lzma», которая отлично работает. Тем не менее, Макенсис сообщает:

[...]
SetCompressor: lzma
Неверная команда: TargetMinimalOS

и затем прерывается.

Чтобы проверить, что я правильно понял, я скопировал и вставил его прямо из документации (не могу добавить гиперссылку - Docs / Chapter4.html # 4.8.2.9 на том же сайте, что и выше), но она все равно выдает эту ошибку. Ошибка такая же, как если бы я придумал глупое имя команды, например «FrogXyzzy».

Я решу эту проблему, не используя команду! Однако кто-нибудь знает, почему это не сработало? Это проблема, связанная с тем, как я собрал nsis? (Я предпочитаю не использовать DarwinPorts или Fink, но, возможно, они построили бы это по-другому ...) Или я делаю что-то глупое с именем команды, которое я не заметил?

Ответы [ 3 ]

4 голосов
/ 23 сентября 2010

Онлайн-документы генерируются из SVN и опережают стабильную сборку (в настоящее время 2,46)

Если вам нужен Unicode сегодня, вы должны использовать ветвь scratchpaper.com или скомпилировать из SVN самостоятельно (The forkбудет объединен обратно, и следующая официальная версия будет Unicode)

1 голос
/ 20 августа 2012

Для Windows, я думаю, TargetMinimalOS может изменить основную и вспомогательную версии подсистемы в формате PE исполняемого файла установщика, чтобы он работал в более старых операционных системах.Поскольку предполагается, что NSIS работает в Windows 95, я попытался запустить мой установщик в Windows 95. Когда я это сделал, он выдал ошибку, сообщив, что для работы программы установки требуется обновленная версия Windows.Я смог запустить его на Windows 95, когда изменил версию подсистемы исполняемого файла установщика на 4.0.Существует утилита EditVersion.exe из LegacyExtender , которая позволила мне сделать это.

1 голос
/ 22 сентября 2010

В разделе раздела об установщиках Unicode начинается «Начиная с MakeNSIS v2.50 ....». Это означает, что функциональность недоступна в 2.46. Похоже, они немного преждевременно с документацией.

Насколько я могу судить, до 2.50 существует отдельная Unicode-версия NSIS . Нет никаких гарантий относительно того, будет ли он даже компилироваться на OSX, но, возможно, оно того стоит.

...