Запуск програми .Net 4.0 з Wine


17

Я намагаюся запустити просту програму у Wine під Ubuntu 14.04 LTS, проте вона скаржиться на це

fixme:mscoree:parse_supported_runtime sku=L".NETFramework,Version=v4.0" not implemented
fixme:mscoree:parse_probing privatePath=L"assemblies" not implemented
The entry point method could not be loaded

При спробі встановити .Net 4.0 приводить до помилки в установці, кажучи, що .Net 4.0 вже встановлений.

Біг winetricks forcemono

------------------------------------------------------
You are using a 64-bit WINEPREFIX. If you encounter problems, please retest in a
clean 32-bit WINEPREFIX before reporting a bug.
------------------------------------------------------
Executing w_do_call forcemono
Executing load_forcemono
Using native override for following DLLs: mscoree
Executing winetricks_early_wine regedit C:\windows\Temp\_forcemono\override-dll.reg
Using override for following DLLs: mscorsvw.exe
Executing winetricks_early_wine regedit C:\windows\Temp\_forcemono\override-dll.reg

Тоді спроба знову запустити ту саму програму все ще не вдасться

err:module:import_dll Library mscoree.dll (which is needed by L"Z:\\home\\<user>\\tmp\\saveedit_r237\\Gibbed.Borderlands2.SaveEdit.exe") not found
err:module:LdrInitializeThunk Main exe initialization for L"Z:\\home\\<user>\\tmp\\saveedit_r237\\Gibbed.Borderlands2.SaveEdit.exe" failed, status c0000135

Я спробував Wine 1.6 і 1.7.30, і обидва не вдалося. Чи реально реалізовано .Net 4.0? Або частково реалізовано? Чи є спосіб зробити так, щоб програма .Net 4.0 працювала?

Оновлення

Winetricks скаржиться на те, що dotnet40не можна встановити 64-бітну систему. Отже, як це встановити?


Чи можете ви додати подробиці, для якої програми та для якої версії Windows вона розроблена?
Вільф

Відповіді:


27

Спочатку спочатку зверніть увагу на це дуже помітне попередження:

------------------------------------------------------
You are using a 64-bit WINEPREFIX. If you encounter problems, please retest in a
clean 32-bit WINEPREFIX before reporting a bug.
------------------------------------------------------

Це вказує на те, що вам потрібно створити 32-бітний Wineprefix , оскільки Wine краще працює з 32-бітовими речами - це можна зробити, просто запустивши розповісти вину, яку архітектуру використовувати, перш ніж запускати його команди (я думаю, це можна зробити і шляхом видалення Wine x86_64 та встановлення Wine i386 / i686 - у будь-якому випадку, після запуску цього терміналу тримайте відкритим термінал для інших команд вина) :

export WINEARCH="win32"

Це встановлює змінні середовища, яке вино читає перед його запуском (див. man wine).

Було б також хорошою ідеєю запропонувати його створити власний WINEPREFIX (де зберігається віртуальний привід Wine). За замовчуванням це так ~/.wine, але ви можете створити окремі для кожної архітектури та програми - так, щоб створити WINEPREFIX у каталозі /home/USERNAME/.wine-PROGRAM-NAME/:

export WINEPREFIX=~/.wine-PROGRAM-NAME/

Каталог не повинен існувати (в ідеалі він не повинен існувати, тому речі не потрібно перезаписувати), але, мабуть, батьківські каталоги, мабуть, повинні мати дозвіл на читання та запис до нього, а я не думаю, що винний виправлення може бути на диску FAT / NTFS з технічних причин (він не працюватиме) .

Отже, щоб встановити 32-бітний префікс вина для програми:

export WINEARCH="win32"
export WINEPREFIX=~/.wine-PROGRAM-NAME/
wineboot -u

Ви можете замінити PROGRAM-NAMEна ім'я програми, щоб пізніше було визначити програму. Просто переконайтеся, що вона включає лише букву та цифри, оскільки розділові знаки часто мають особливу функцію в різних командних оболонках.

Потім у вас вийде таке вікно:

винний виправлення оновлюється ....

Тоді ви готові йти. Тепер ви можете встановити NET 4.0 з допомогою winetricks(ви можете отримати останню версію з тут перший):

winetricks dotnet40

Це повинно бути в терміналі після export WINEPREFIX=...команди, або розмістивши його безпосередньо перед командою вина як так (корисно для запуску програм, що містить один командний рядок) :

env WINEPREFIX=~/.wine-PROGRAM-NAME/" winetricks dotnet40

Ви також можете використовувати , winetricksщоб встановити деякі інші речі він може знадобитися - наприклад , шрифти (використовуючи опції corefonts, lucida, tahoma). Щоб перелічити параметри winetricks, використовуйте winetricks list-all.

Потім можна встановити програму за допомогою wine "~/Downloads/PATH/TO/INSTALLER.exe". Ще раз (скопіюйте файл, потім "Вставити імена файлів" у термінал, щоб він виглядав, як '/home/wilf/Desktop/name spaces/installer.exe'ні file:///home/wilf/Desktop/name spaces/installer.exe') .

Ви повинні переконатися, що WINEPREFIX був експортований перед запуском цієї команди (особливо якщо ви закрили термінал) або в тому ж рядку. Після того, як ви працюєте (або не працюєте), ви, можливо, захочете скласти звіт про те, як добре він працює тут (включаючи те, що ви робили тощо, щоб ви могли допомогти іншим). Якщо у вас є проблеми, і у виході з’являються помітні помилки, ви можете повідомити про помилку .

Після встановлення програма запуску програми повинна відображатися на тире / меню, а іноді і на робочому столі. Інакше в майбутньому для запуску програми вам може знадобитися запустити додаток разом із export WINEPREFIX=...та wine ....(або env WINEPREFIX=... wine .....) ще раз, якщо ви не створите запуск (прокоментуйте нижче чи десь, якщо вам потрібно знати, як це зробити ....)


Більше інформації, усунення несправностей тощо

Як встановити виноградники?

Ви можете отримати версію з репозиторіїв Ubuntu за допомогою цієї команди (або встановити Winetricks з Центру програмного забезпечення):

sudo apt-get install winetricks

Потім ви можете використовувати winetricks OPTIONSречі.

Для останньої версії ви можете використовувати ці команди для завантаження та використання найновішої версії:

wget  https://raw.githubusercontent.com/Winetricks/winetricks/master/src/winetricks
chmod +x winetricks 

Зауважте, що вам доведеться запустити його як ./winetricks <OPTIONS>, якщо тільки каталог не знаходиться в оболонці $PATH.

Я не хочу використовувати термінал, що я можу зробити?

Додаток, який ви хочете використовувати, може працювати в PlayOnLinux (це може бути, якщо ви можете його знайти тут ) - це майже весь графічний інтерфейс і автоматично робить більшість кроків для вас.

В іншому випадку, ви можете використовувати термінал , щоб зробити це дуже легко (ви , як правило, набагато більше контролю , ніж якщо програма GUI робить це), просто будьте обережні , що ви поклали в (особливо , якщо вона включає в себе команду sudo, rmі т.д.). Спробуйте спочатку зрозуміти, що відбувається з кожною командою.

Крім того, деякі з цих кроків можна виконати і іншими способами - winecfgі winetricksвідкритими графічні інтерфейси, через які можна виконати кілька кроків, але знову ж таки, що ви можете зробити, обмежено.

Як встановити останню версію Wine?

Новіші версії вина є більш сучасними, тому можливо, вони зможуть запустити програму краще (якщо не буде регресу, який впливає на неї). Для встановлення останньої останньої версії (Wine1.7) ви можете скористатися офіційним WA PPA :

sudo apt-add-repository ppa:ubuntu-wine/ppa
sudo apt-get update
sudo apt-get install wine1.7

Якщо він не може знайти пакет wine1.7, спробуйте запустити команду install ще раз, але wineзамістьwine1.7

Для інсталяції та налаштування Wine взагалі ви можете також спробувати це питання .

Програма, яку я хочу використовувати, розроблена для нової версії Windows, що я можу зробити?

Вино за замовчуванням копіює Windows XP, який деякі програми не підтримують, оскільки це EOL (що, мабуть, зручно, оскільки ви, напевно, можете запускати програми для WinXP під Wine під Linux, і ви можете "вигнати WinXP з орбіти" :)

У будь-якому випадку спочатку відкрийте вікно налаштування вина:

export WINEPREFIX=~/.wine-PROGRAM-NAME/
winecfg

Де ~/.wine-PROGRAM-NAME/WINEPREFIX, який ви створили раніше.

І виберіть версію Windows для копіювання в нижній частині вкладки "Програми". Потім спробуйте встановити додаток ще раз.

ВІННИ ВІРУСИ ПІД ВИНОМ?!?!

Цілком можливо . Не встановлюйте випадкове програмне забезпечення в Інтернеті, спробуйте переконатися, що воно є з надійного сайту.


2
Оскільки я не дуже використовую Wine, я подумав, що буду встановити WINEARCHсвій .bashrcсценарій безпосередньо, а потім витер ~/.wineповністю і перейшов до winetricks dotnet40. Це працює зараз. Спасибі!
Янік Рошон
Використовуючи наш веб-сайт, ви визнаєте, що прочитали та зрозуміли наші Політику щодо файлів cookie та Політику конфіденційності.
Licensed under cc by-sa 3.0 with attribution required.