View previous topic :: View next topic |
Author |
Message |
Phancy Physicist Apprentice
Joined: 10 Apr 2005 Posts: 193
|
Posted: Mon Aug 13, 2012 7:44 pm Post subject: Arma 2/Day Z on Wine |
|
|
I got Arma 2/Day Z working on my box on my gentoo box so I thought I should share with everyone. Shadows are glitchy sometimes but it does not really affect the game play.
Install wine
First thing you need to do is apply a patch to wine. However I have never gotten this patch to apply in any of the normal ways and my knowledge of making ebuilds is quite limited so this might not be the best way but it works.
Code: |
$ cp <path to patch>/raw3.patch /usr/local/portage/app-emulation/wine/files
$ cp /usr/portage/app-emulation/wine/wine-<version>.ebuild /usr/local/portage/app-emulation/wine/wine-<version>.ebuild
|
3. Run the ebuild commands manually
Code: |
cd /usr/local/portage/app-emulation/wine
ebuild wine-<version>.ebuild manifest
ebuild wine-<version>.ebuild clean
ebuild wine-<version>.ebuild unpack
cd /var/tmp/portage/app-emulation/wine-<version>/work/wine-<version>
patch -p1 < /usr/local/portage/app-emulation/wine/files/raw3.patch
./tools/make_requests
cd -
ebuild wine-<version>.ebuild compile
ebuild wine-<version>.ebuild install
ebuild wine-<version>.ebuild qmerge
|
After that you will have a version of wine that is able to run Arma 2, so now install Arma 2 and Arma 2: AO using wine or steam.
Patch Arma 2
The next step is download the lastest beta patch for Arma 2 from http://www.arma2.com/beta-patch.php. It will be the one at the top with the highest number. Extract and Run with wine
Code: | wine ARMA2_OA_Build_*.exe |
Install Day Z
http://www.dayzwiki.com/wiki/How_to_install_DayZ wrote: |
- Download DayZ Mod files. http://www.armafiles.info/dayz/
- Make a folder named "@DayZ" in your Arma 2: Operation Arrowhead directory.
- Inside "@DayZ" folder create another folder named "Addons". It should look like this: C:\Program Files (x86)\Steam\steamapps\common\arma 2 operation arrowhead\@DayZ\Addons
- Unpack all DayZ Mod files in the "Addons" folder.
|
Run Arma 2 and enjoy. |
|
Back to top |
|
|
nonchip n00b
Joined: 19 Aug 2012 Posts: 1
|
Posted: Sun Aug 19, 2012 7:16 am Post subject: |
|
|
have you tried just copying the raw3.patch to "/etc/portage/patches/app-emulation/wine/"?
should be easier to handle.
oh and could you please tell me the wine version you are using? patching wine-1.5.10 (newest in repo) w/ the raw3.patch you specified fails on my system:
Code: | /var/tmp/portage/app-emulation/wine-1.5.10/work/wine-1.5.10/server/raw_input.c:137:47: warning: ‘struct raw_input_device_registration’ declared inside parameter list
/var/tmp/portage/app-emulation/wine-1.5.10/work/wine-1.5.10/server/raw_input.c:137:47: warning: its scope is only this definition or declaration, which is probably not what you want
/var/tmp/portage/app-emulation/wine-1.5.10/work/wine-1.5.10/server/raw_input.c: In function ‘register_raw_input_device’:
/var/tmp/portage/app-emulation/wine-1.5.10/work/wine-1.5.10/server/raw_input.c:146:57: error: dereferencing pointer to incomplete type
/var/tmp/portage/app-emulation/wine-1.5.10/work/wine-1.5.10/server/raw_input.c:147:42: error: ‘RAW_INPUT_DEVICE_FLAG_PAGEONLY’ undeclared (first use in this function)
/var/tmp/portage/app-emulation/wine-1.5.10/work/wine-1.5.10/server/raw_input.c:147:42: note: each undeclared identifier is reported only once for each function it appears in
/var/tmp/portage/app-emulation/wine-1.5.10/work/wine-1.5.10/server/raw_input.c:148:33: error: dereferencing pointer to incomplete type
/var/tmp/portage/app-emulation/wine-1.5.10/work/wine-1.5.10/server/raw_input.c:150:33: error: dereferencing pointer to incomplete type
/var/tmp/portage/app-emulation/wine-1.5.10/work/wine-1.5.10/server/raw_input.c:151:56: error: dereferencing pointer to incomplete type
/var/tmp/portage/app-emulation/wine-1.5.10/work/wine-1.5.10/server/raw_input.c:154:29: error: dereferencing pointer to incomplete type
/var/tmp/portage/app-emulation/wine-1.5.10/work/wine-1.5.10/server/raw_input.c:154:39: error: ‘RAW_INPUT_DEVICE_FLAG_REMOVE’ undeclared (first use in this function)
/var/tmp/portage/app-emulation/wine-1.5.10/work/wine-1.5.10/server/raw_input.c:162:55: error: dereferencing pointer to incomplete type
/var/tmp/portage/app-emulation/wine-1.5.10/work/wine-1.5.10/server/raw_input.c:163:55: error: dereferencing pointer to incomplete type
/var/tmp/portage/app-emulation/wine-1.5.10/work/wine-1.5.10/server/raw_input.c:167:25: error: dereferencing pointer to incomplete type
/var/tmp/portage/app-emulation/wine-1.5.10/work/wine-1.5.10/server/raw_input.c:171:51: error: dereferencing pointer to incomplete type
/var/tmp/portage/app-emulation/wine-1.5.10/work/wine-1.5.10/server/raw_input.c:172:51: error: dereferencing pointer to incomplete type
/var/tmp/portage/app-emulation/wine-1.5.10/work/wine-1.5.10/server/raw_input.c:173:51: error: dereferencing pointer to incomplete type
/var/tmp/portage/app-emulation/wine-1.5.10/work/wine-1.5.10/server/raw_input.c:174:51: error: dereferencing pointer to incomplete type
|
... and so on (about 200 lines of errors)
btw, your method fails at "ebuild compile":
Code: | >>> Preparing source in /var/tmp/portage/app-emulation/wine-1.5.10/work/wine-1.5.10 ...
* Cannot find $EPATCH_SOURCE! Value for $EPATCH_SOURCE is:
*
* /usr/local/portage/app-emulation/wine/files/wine-1.1.15-winegcc.patch
* ( wine-1.1.15-winegcc.patch )
* ERROR: app-emulation/wine-1.5.10 failed (prepare phase):
* Cannot find $EPATCH_SOURCE!
*
* Call stack:
* ebuild.sh, line 85: Called src_prepare
* environment, line 3395: Called epatch '/usr/local/portage/app-emulation/wine/files/wine-1.1.15-winegcc.patch'
* environment, line 1833: Called die
* The specific snippet of code:
* die "Cannot find \$EPATCH_SOURCE!";
|
after removing the offending file from the ebuild (don't need winegcc anyway...), it compiles fine.
but DayZ crashes with:
Code: | fixme:win:RegisterRawInputDevices RIDEV_CAPTUREMOUSE support is not implemented
fixme:win:RegisterRawInputDevices RIDEV_NOHOTKEYS support is not implemented
fixme:win:RegisterRawInputDevices RIDEV_INPUTSINK support is not implemented
fixme:win:RegisterRawInputDevices RIDEV_CAPTUREMOUSE support is not implemented
fixme:d3d:resource_check_usage Unhandled usage flags 0x8.
fixme:d3d:state_zfunc D3DCMP_NOTEQUAL and D3DCMP_EQUAL do not work correctly yet.
fixme:dbghelp:elf_search_auxv can't find symbol in module
fixme:dbghelp:MiniDumpWriteDump NIY MiniDumpWithDataSegs
wine: Unhandled page fault on read access to 0x00000000 at address 0xb72c1d (thread 003a), starting debugger...
|
|
|
Back to top |
|
|
rh n00b
Joined: 19 Sep 2006 Posts: 58
|
Posted: Mon Aug 20, 2012 7:34 am Post subject: |
|
|
nonchip wrote: | have you tried just copying the raw3.patch to "/etc/portage/patches/app-emulation/wine/"?
should be easier to handle. |
You would still need a way to run ./tools/make_requests after patching, or the compile will fail.
nonchip wrote: | oh and could you please tell me the wine version you are using?
<-snip->
... and so on (about 200 lines of errors) |
The raw3.patch works for me with 1.5.10, and 1.5.11 just released. The errors you get look like the ones I got when I didn't run ./tools/make_requests after patching.
nonchip wrote: | btw, your method fails at "ebuild compile":
Code: | >>> Preparing source in /var/tmp/portage/app-emulation/wine-1.5.10/work/wine-1.5.10 ...
* Cannot find $EPATCH_SOURCE! Value for $EPATCH_SOURCE is:
*
* /usr/local/portage/app-emulation/wine/files/wine-1.1.15-winegcc.patch
* ( wine-1.1.15-winegcc.patch ) |
|
Copy the portage supplied patches from portage tree under wine/files to your local tree, then restart from step 3 "Run the ebuild commands manually".
Code: | cp /usr/portage/app-emulation/wine/files/* /usr/portage/local/app-emulation/wine/files/ |
About the crash, Arma 2 won't work with mesa drivers quite yet, others have got it to work with nvidia-drivers and ati-drivers. If you have them, try an another wine version. |
|
Back to top |
|
|
b3rT n00b
Joined: 09 Jun 2003 Posts: 71 Location: Germany
|
Posted: Tue Aug 28, 2012 5:12 pm Post subject: |
|
|
i think its more comfortable to edit your local copy of the wine-ebuild in step 3. just add Code: | epatch "${FILESDIR}"/raw3.patch
tools/make_requests || die | at the end of the src_prepare - section.
now lets updating the manifest with Code: | ebuild /usr/local/portage/app-emulation/wine/wine-<version>.ebuild manifest | and remerge wine |
|
Back to top |
|
|
|