понедельник, 18 января 2010 г.

PowerDesigner под Ubuntu и Wine

PowerDesigner нормально устанавливается, запускается и работает под Wine. Однако попытки сгенерировать SQL-скрипт приводят к ошибкам в VBScript. Поиск в интернете привел к таким же горемыкам - редактировать можно, а генерировать нельзя.

Полностью доверившись интуитивному бессознательному, после nnn-й попытки я нашел такой гарантированный способ решения проблемы для PowerDesigner 15.1

1. Устанавливаем самый свежий wine (у меня сейчас 1.1.36).
2. Качаем winetricks (http://wiki.winehq.org/winetricks) и даем ему права на исполнение.
3. Стираем ~/.wine на всякий случай (если есть)
4. Запускаем winetricks и устанавливаем модули corefonts, fontssmooth-rgb, tahoma, vb6run, wsh56js, wsh56vb
5. Устанавливаем PowerDesigner ("wine PowerDesigner15.exe")
6. Запускаем winetricks опять и устанавливаем модули native_mdac, native_oleaut32
7. Заходим в настройки Wine и на закладке Applications выбираем исполняемый файл pdshell15.exe, после чего устанавливаем для него версию Windows NT 4.0
8. Лицензии и прочее по вкусу - кто на что богат.

Почему именно так и как это работает - объяснить не смогу все равно.

Если вы где-то запутались, что-то пошло не так или что-то просто не нравится, можете запросто снести директорию ~/.wine и начинать все сначала с шага #3.

Запускать PowerDesigner теперь можно с помощью команды

wine start "c:\\Program Files\\Sybase\\PowerDesigner 15\\pdshell15.exe"


Вроде пока все работает и генерируется.

В PowerDesigner не отрисовываются незадоченные тулбары и панели, и не таскаются уже задоченые инструментальные панельки - поэтому постарайтесь поставить ключевую панель "Palette" сразу на нужное место. Иначе придется тасовать их через "Customize..."

Еще один момент. Поскольку настройка PowerDesigner столь специфична - было бы неплохо защитить его от других WINE-приложений, а другие приложения защитить от специфичных настроек PowerDesigner. Для этого можно использовать профили Wine.

Переименовываем директорию "~/.wine" в "~/.wine-powerdesigner", а также создаем скрипт "~/bin/wine-powerdesigner" с помощью которого и будем запускать PowerDesigner

#!/bin/bash

export WINEPREFIX=~/.wine-powerdesigner

wine start "c:\\Program Files\\Sybase\\PowerDesigner 15\\pdshell15.exe"


Таким же образом можно изолировать друг от друга и другие приложения со специфичными настройками.

Комментариев нет:

Отправить комментарий