КОМПАС 3D уcтановка в МОС-Linux (MOS 12): различия между версиями

Материал из IT в школе
Перейти к навигацииПерейти к поиску
Строка 1: Строка 1:




Строка 59: Строка 60:


</syntaxhighlight>
</syntaxhighlight>
'''При запросе эмулируемой архитектуры выбрать Windows 10'''
После исполнения скриптов, остается перейти в каталог с дистрибутивом КОМПАС и запустить установку командой wine *.msi.  
После исполнения скриптов, остается перейти в каталог с дистрибутивом КОМПАС и запустить установку командой wine *.msi.  



Версия 20:33, 15 января 2023




https://ascon.ru/news_and_events/news/3401/

То есть официально лучшее решение - КУПИТЬ WINE@Etersoft и КОМПАС 3D v20

по сути windows - версия КОМПАС для windows будет установлена в слегка подправленный Эмулятор wine.

Обращаем внимание, что согласно лицензии бесплатно в учебном заведении можно установить только LT версию https://edu.ascon.ru/main/download/freeware/

Для установки windows-версии КОМПАС 3D в эмулятор Windows wine системы МОС-Linux можно использовать приведенные ниже скрипты, которые являются сокращенной версией скрипта от ethersoft.

Они должны подходить для любых версий КОМПАС 3D. Для лицензионных версий нужно также установить haspd.

Первый скрипт устанавливает wine32, запускать его надо от имени root

#!/bin/bash


apt-get -y update
apt-get -y install i586-wine
apt-get -y install winetricks

#установка win32 дополнительных библиотек
# эквивалент команды epm  , которая на момент написания в МОС не работает, только в altlinux
LIST=""
for i in glibc-nss glibc-gconv-modules sssd-client vulkan-amdgpu libvulkan1 $(epmqp --short libnss | grep "^libnss-")  $(epmqp --short xorg-dri | grep "^xorg-dri-")
do
    epm --quiet installed $i && LIST="$LIST i586-$i"
done
epm --auto install $LIST

Если получаете ошибку с ругательством на libopenal можно попробовать

epm downgrade libopenal1

и запустить снова

Второй cкрипт запускается от имени пользователя, который будет работать с КОМПАС и предустанавливает зависимости программы КОМПАС 3D в каталог .wine архитектуры win32 (в иной архитектуре программа работает нестабильно). для чистоты результата скрипт должен использоваться на компьютере, где wine еще не запускали, Удалите каталог .wine


#!/bin/bash

WINEARCH=win32 winecfg

for i in  dotnet48 d3dcompiler_47 jet40 msxml3  msxml4 msxml6 corefonts riched20 vcrun2019 
do
winetricks --force -q ${i}
done 
wine reg add 'HKEY_CURRENT_USER\Software\Wine\DllOverrides' /v *msxml3 /t REG_SZ /d native,builtin /f
wine reg add 'HKCU\SOFTWARE\Microsoft\Avalon.Graphics' /v DisableHWAcceleration /t REG_DWORD /d 1 /f
cp $HOME/.wine/drive_c/windows/system32/rgb9rast_2.dll $HOME/.wine/drive_c/windows/system32/rgb9rast.dll

При запросе эмулируемой архитектуры выбрать Windows 10

После исполнения скриптов, остается перейти в каталог с дистрибутивом КОМПАС и запустить установку командой wine *.msi.

БОНУС: скрипт для копирования настроенного wine на все компьютеры класса (2-15) с первого компьютера. При этом wine должен быть уже установлен на них первым скриптом. Запускается из каталога /home/student первого компьютера от имени student

#!/bin/bash

SCHOOL=648
CORP=1
CAB=41

for i in {2..15} 
do
HOST=m${SCHOOL}-${CORP}-${CAB}-${i}.local
sshpass -p ${STUDENTPASS}  ssh -o StrictHostKeyChecking=no student@${HOST} mkdir /home/student/.wine
sshpass -p ${STUDENTPASS}  rsync -e "ssh -o StrictHostKeyChecking=no" -avzh /home/student/.wine/ student@${HOST}:/home/student/.wine/ --delete
sshpass -p ${STUDENTPASS}  rsync -e "ssh -o StrictHostKeyChecking=no" -avzh /home/student/.config/menus/ student@${HOST}:/home/student/.config/menus/ --delete
sshpass -p ${STUDENTPASS}  rsync -e "ssh -o StrictHostKeyChecking=no" -avzh /home/student/.local/share/desktop-directories/ student@${HOST}:/home/student/.local/share/desktop-directories/ --delete
sshpass -p ${STUDENTPASS}  ssh -o StrictHostKeyChecking=no student@${HOST} mkdir /home/student/.local/share/applications/
sshpass -p ${STUDENTPASS}  ssh -o StrictHostKeyChecking=no student@${HOST} mkdir /home/student/.local/share/applications/wine/
sshpass -p ${STUDENTPASS}  rsync -e "ssh -o StrictHostKeyChecking=no" -avzh /home/student/.local/share/applications/wine/ student@${HOST}:/home/student/.local/share/applications/wine/ --delete
done