之前用PlayOnLinux(简称POL)来安装Office 2010的时候,OneNote总是作怪,隔几分钟就崩溃,实在是没法用。当时迫不得已,用wine直接装,用了一段时间,但是某次系统大更新,把wine升级了之后,OneNote就没办法调出中文输入法,又废掉了。结果只能回来研究POL怎么安装才能搞定。直接按照流程来做的话,因为国内网络的问题,十有八九会在下载包的过程中断开连接而fail掉。但是即使是丢了一些包,竟然还能打得开,所以就有了手动修复依赖包的想法。浏览到POL论坛的Office2010的安装script(附在文章结尾了),依赖包有dotnet20 gecko corefonts gdiplus riched20 riched30 msxml6 mspatcha
。
所以如果fail了,点开POL的“配置”,选中Office2010,然后“安装内容”里面先把dotnet20
和它的sp1、sp2安装上,然后corefonts
对应的是Microsoft Core Fonts,剩下的包名字都能找到,就不多说了。
安装完还要在“Wine”标签页里面配置Wine,在“函数库”里面确保gdiplus mspatcha riched20 riched30 msxml6
全都有而且设置成了“原装优先于内建”(native,builtin)。
最后还需要在“杂项”标签页里选择“在此虚拟盘中运行可执行文件”,把Office 2010的SP1补丁安装上。之后Office就能顺利运行啦。如果掉不出输入法,记得把环境变量LANG设置成zh_CN.UTF-8,而且环境变量已经设置好fcitx作为输入法模块。
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54 55 56 57 58 59 60 61 62 63 64 65 66 67 68 69 70 71 72 73 74 75 76 77 78 79 80 81 82 83 84 85 86 87 88 89 90 91 92 93 94 95 96 97 98 99 100 101 102 103 104 105 106 107 108 109 110 111 112 113 114 115
| #!/bin/bash # CHANGELOG # [Quentin PÂRIS] (2012-05-05 14-45) # Wine version set to 1.5.3, Outlook 2010 compatiblity # [Quentin PÂRIS] (2012-05-05 15-05) # Check winbind (samba) presence on Linux, required to install # Adding gettext support # [Quentin PÂRIS] (2012-05-12 18-36) # Requires 4.0.18 # [SuperPlumus] (2013-06-09 14-44) # gettext # [Quentin PÂRIS] (2014-07-21 17-09) # Updating with the latest WineHQ version # [rbelo] (2018-07-22 15-50) # Updating with the latest stable WineHQ version (3.0.2), ver 1.7.52 does not seem to work. # [Mrjacobarussell] (2018-09-25 20-50) # Updating missing dotnet20 , gdiplus, gecko, corefonts, msxml6 # [diogoborges14] (2018-12-01) # mspatcha [ "$PLAYONLINUX" = "" ] && exit 0 source "$PLAYONLINUX/lib/sources" PREFIX="Office2010" WINEVERSION="3.0.2" TITLE="Microsoft Office 2010" POL_GetSetupImages "http://files.playonlinux.com/resources/setups/Office/top.jpg" "http://files.playonlinux.com/resources/setups/Office/left.png" "$TITLE" POL_SetupWindow_Init POL_SetupWindow_SetID 801 POL_SetupWindow_presentation "$TITLE" "Microsoft" "http://www.microsoft.com" "Quentin PÂRIS" "$PREFIX" POL_RequiredVersion 4.0.18 || POL_Debug_Fatal "$TITLE won't work with $APPLICATION_TITLE $VERSION\nPlease update" if [ "$POL_OS" = "Linux" ]; then wbinfo -V || POL_Debug_Fatal "Please install winbind (or samba, on Arch Linux) before installing $TITLE" fi POL_Debug_Init POL_System_SetArch "x86" POL_SetupWindow_InstallMethod "LOCAL,DVD" if [ "$INSTALL_METHOD" = "DVD" ]; then POL_SetupWindow_cdrom POL_SetupWindow_check_cdrom "x86/setup.exe" "setup.exe" SetupIs="$CDROM_SETUP" cd "$CDROM" else POL_SetupWindow_browse "$(eval_gettext 'Please select the setup file to run')" "$TITLE" SetupIs="$APP_ANSWER" fi POL_Wine_SelectPrefix "$PREFIX" POL_Wine_PrefixCreate "$WINEVERSION" if [ "$POL_OS" = "Mac" ]; then # Samba support POL_Call POL_GetTool_samba3 source "$POL_USER_ROOT/tools/samba3/init" fi POL_Wine_WaitBefore "$TITLE" [ "$CDROM" ] && cd "$CDROM" if [ ! "$(file $SetupIs | grep 'x86-64')" = "" ]; then POL_Debug_Fatal "$(eval_gettext "The 64bits version is not compatible! Sorry")"; fi POL_Wine "$SetupIs" POL_Wine_WaitExit "$TITLE" POL_Call POL_Install_dotnet20 POL_Call POL_Install_gecko POL_Call POL_Install_corefonts POL_Call POL_Install_gdiplus POL_Call POL_Install_riched20 POL_Call POL_Install_riched30 POL_Call POL_Install_msxml6 POL_Call POL_Install_mspatcha # See http://forum.winehq.org/viewtopic.php?f=8&t=23126&p=95555#p95555 POL_Wine_OverrideDLL "native,builtin" "riched20" POL_Wine_OverrideDLL "native,builtin" "riched30" POL_Wine_OverrideDLL "native,builtin" "gdiplus" plsy # Fix a crash when loading a file POL_Shortcut "WINWORD.EXE" "Microsoft Word 2010" "" "" "Office;WordProcessor;" POL_Shortcut "EXCEL.EXE" "Microsoft Excel 2010" "" "" "Office;Spreadsheet;" POL_Shortcut "POWERPNT.EXE" "Microsoft Powerpoint 2010" "" "" "Office;Presentation;" POL_Shortcut "ONENOTE.EXE" "Microsoft OneNote 2010" "" "" "Network;InstantMessaging;" # No category for collaborative work? POL_Shortcut "OUTLOOK.EXE" "Microsoft Outlook 2010" "" "" "Network;Email;" # Calendar;ContactManagement; ? :p POL_Extension_Write doc "Microsoft Word 2010" POL_Extension_Write docx "Microsoft Word 2010" POL_Extension_Write xls "Microsoft Excel 2010" POL_Extension_Write xlsx "Microsoft Excel 2010" POL_Extension_Write ppt "Microsoft Powerpoint 2010" POL_Extension_Write pptx "Microsoft Powerpoint 2010" if [ "$POL_OS" = "Mac" ]; then POL_Shortcut_InsertBeforeWine "Microsoft Word 2010" "source \"$POL_USER_ROOT/tools/samba3/init\"" POL_Shortcut_InsertBeforeWine "Microsoft Excel 2010" "source \"$POL_USER_ROOT/tools/samba3/init\"" POL_Shortcut_InsertBeforeWine "Microsoft Powerpoint 2010" "source \"$POL_USER_ROOT/tools/samba3/init\"" POL_Shortcut_InsertBeforeWine "Microsoft OneNote 2010" "source \"$POL_USER_ROOT/tools/samba3/init\"" POL_Shortcut_InsertBeforeWine "Microsoft Outlook 2010" "source \"$POL_USER_ROOT/tools/samba3/init\"" fi POL_SetupWindow_message "$(eval_gettext '$TITLE has been installed successfully\n\nIf an installation Windows prevent your programs from running, you must remove and reinstall $TITLE')" "$TITLE" POL_SetupWindow_Close exit
|