Jump to content

Compiling Win2DS


knightmare

Recommended Posts

I am having trouble compiling Win2DS .5

 

The problem is with the makefile in arm7, specifically this line since ld.exe cannot find ldswifi7r:

LIBS := -lnds7 -ldswifi7r

 

I tried changing it to:

LIBS := -lnds7 -ldswifi7

 

but that gives me a different error about iwram.

 

Which version of DevKit Pro do I need to be on anyway? (I'm on the latest version with devkitPro Updater 1.3.5... not sure if I should try some older version...)

 

Can anyone help?

 

Thanks in advance. :lol:

 

Full dump:

C:\devkitPro\win2ds>make clean

make -C arm9 clean

make[1]: Entering directory `/c/devkitPro/win2ds/arm9'

clean ...

make[1]: Leaving directory `/c/devkitPro/win2ds/arm9'

make -C arm7 clean

make[1]: Entering directory `/c/devkitPro/win2ds/arm7'

clean ...

make[1]: Leaving directory `/c/devkitPro/win2ds/arm7'

rm -f win2ds.arm7 win2ds.arm9

 

C:\devkitPro\win2ds>make

make -C arm7

make[1]: Entering directory `/c/devkitPro/win2ds/arm7'

arm7.cpp

arm-eabi-g++ -MMD -MP -MF /c/devkitPro/win2ds/arm7/build/arm7.d -g -Wall -O2 -mc

pu=arm7tdmi -mtune=arm7tdmi -fomit-frame-pointer -ffast-math -mthumb-interwork -

I/c/devkitPro/win2ds/arm7/include -I/c/devkitPro/win2ds/arm7/build -I/c/devkitPr

o/libnds/include -I/c/devkitPro/win2ds/arm7/build -DARM7 -c /c/devkitPro/win2ds/

arm7/source/arm7.cpp -o arm7.o

linking win2ds.arm7.elf

c:/devkitpro/devkitarm/bin/../lib/gcc/arm-eabi/4.1.1/../../../../arm-eabi/bin/ld

.exe: region iwram is full (c:/devkitPro/win2ds/arm7/win2ds.arm7.elf section .ro

data)

c:/devkitpro/devkitarm/bin/../lib/gcc/arm-eabi/4.1.1/../../../../arm-eabi/bin/ld

.exe: section .init [03800000 -> 038000e7] overlaps section .ARM.extab [03800000

-> 038000fb]

c:/devkitpro/devkitarm/bin/../lib/gcc/arm-eabi/4.1.1/../../../../arm-eabi/bin/ld

.exe: section .ARM.exidx [038000fc -> 03800563] overlaps section .text [038000f0

-> 0380fdbb]

c:/devkitpro/devkitarm/bin/../lib/gcc/arm-eabi/4.1.1/../../../../arm-eabi/bin/ld

.exe: c:/devkitPro/win2ds/arm7/win2ds.arm7.elf: section .ARM.extab lma 0x3800000

overlaps previous sections

c:/devkitpro/devkitarm/bin/../lib/gcc/arm-eabi/4.1.1/../../../../arm-eabi/bin/ld

.exe: c:/devkitPro/win2ds/arm7/win2ds.arm7.elf: section .text lma 0x38000f0 over

laps previous sections

c:/devkitpro/devkitarm/bin/../lib/gcc/arm-eabi/4.1.1/../../../../arm-eabi/bin/ld

.exe: c:/devkitPro/win2ds/arm7/win2ds.arm7.elf: section .ARM.exidx lma 0x38000fc

overlaps previous sections

c:/devkitpro/devkitarm/bin/../lib/gcc/arm-eabi/4.1.1/../../../../arm-eabi/bin/ld

.exe: c:/devkitPro/win2ds/arm7/win2ds.arm7.elf: section .init_array lma 0x380056

4 overlaps previous sections

c:/devkitpro/devkitarm/bin/../lib/gcc/arm-eabi/4.1.1/../../../../arm-eabi/bin/ld

.exe: c:/devkitPro/win2ds/arm7/win2ds.arm7.elf: section .fini_array lma 0x380056

8 overlaps previous sections

c:/devkitpro/devkitarm/bin/../lib/gcc/arm-eabi/4.1.1/../../../../arm-eabi/bin/ld

.exe: c:/devkitPro/win2ds/arm7/win2ds.arm7.elf: section .eh_frame lma 0x380056c

overlaps previous sections

c:/devkitpro/devkitarm/bin/../lib/gcc/arm-eabi/4.1.1/../../../../arm-eabi/bin/ld

.exe: c:/devkitPro/win2ds/arm7/win2ds.arm7.elf: section .jcr lma 0x3800570 overl

aps previous sections

c:/devkitpro/devkitarm/bin/../lib/gcc/arm-eabi/4.1.1/../../../../arm-eabi/bin/ld

.exe: c:/devkitPro/win2ds/arm7/win2ds.arm7.elf: section .data lma 0x3800574 over

laps previous sections

collect2: ld returned 1 exit status

make[2]: *** [/c/devkitPro/win2ds/arm7/win2ds.arm7.elf] Error 1

make[1]: *** [build] Error 2

make[1]: Leaving directory `/c/devkitPro/win2ds/arm7'

make: *** [arm7/win2ds.elf] Error 2

 

C:\devkitPro\win2ds>pause

Press any key to continue . . .

Link to comment
Share on other sites

Since the last version was made before the wifi lib was fully integrated into libnds, it works a little differently. You should just remove the -ldswifi7 part altogether and -lnds7 will suffice. You'll get undefined errors for some of the wifi stuff, but go by the arm7.c template in the examples (get rid of the old one and just use the template.c and rename it to arm7.c and use that should work fine). You'll also need to remove the -ldswifi9 in the arm9 makefile. However, that comes with many undefined references too, you probably need to include something else or the function names have just changed. I assume the unofficial Win2DS version 0.6 that someone posted has done all this, so get that one.

 

edit: Oh it doesn't have source, but maybe he'll chime in, at least from what I've said you should be able to figure it out.

 

edit2: It occured to me that the template might not have the wifi stuff built in, but you should be able to find an example that does and take it from that.

Edited by Sintax
Link to comment
Share on other sites

So it wasn't quite as easy as what you said, but thanks for the hints since that did enable me to eventually stumble through the process and get it compiling. :(

 

I'm attaching the DS2WIN source after getting it to work with the latest libs but before any of my customized edits in case anyone else would benefit from it.

 

Thanks again. ;)

 

Oh hmm... guess I can't upload it since I can't use more than 100k total for attachments...

 

Putting it on rapidshare instead...

 

http://rapidshare.de/files/36954146/DS2Win.rar.html

DS2Win.part1.rar

Link to comment
Share on other sites

  • 1 year later...

Since the rapidshare link above doesn't work, I've managed to find the problems myself and recompile it.

 

Its now compiled with the very latest devkitpro r21 and dswifi 0.3.4

 

I've also made some optimizations which speed it up a lot, the mouse moves smoothly for me now, and screen updates are very fast 0.25 seconds on zoomed mode with full screen set off, or reasonably fast if full screen is enabled.

 

The initial menu also now displays on the bottom screen as it should.

 

A bit of advice to anyone who tries setting up with wireless on any older apps (and possibly this one) - DONT USE CHANNEL 0 or 1, make sure you set your channel to something like 10.. took me ages to figure this one out. (Older versions of dswifi had a bug when trying to set the channel to 0 or 1).

 

If anyone wants to try it out, you can download it from http://rapidshare.de/files/37941108/ds2win.ds.zip.html

Edited by monkeynz
Link to comment
Share on other sites

Create an account or sign in to comment

You need to be a member in order to leave a comment

Create an account

Sign up for a new account in our community. It's easy!

Register a new account

Sign in

Already have an account? Sign in here.

Sign In Now
×
×
  • Create New...