Recompiling DGEN

Discuss the development of new homebrew software, tools and libraries.

Moderators: cheriff, TyRaNiD

Post Reply
Brunni
Posts: 186
Joined: Sat Oct 08, 2005 10:27 pm

Recompiling DGEN

Post by Brunni »

Hi all ^^
I'm trying to recompile DGEN for PSP, in order to try some optimizations, but there's no way. I followed the notice (someone traduced it from japanese for me), made the 3 libraries it asks (and right versions, I downloaded their code source and ran a make in their directory and placed the resulting .a file into /lib/), but at linking, I am getting a lot of errors. Here is the log if you want it:

Code: Select all

Florian@FLORIAN ~/projets/dgen
$ make
psp-gcc psp/startup.o psp/psp_main.o psp/psp_std.o psp/psp_screen.o psp/mdcore_m
ain.o psp/emu_core.o mdcore/mem.o mdcore/vdp.o mdcore/mdfr.o mdcore/ras.o mdcore
/fm.o mdcore/musa/m68kcpu.o mdcore/musa/m68kopac.o mdcore/musa/m68kopdm.o mdcore
/musa/m68kops.o mdcore/musa/m68kopnz.o mdcore/sn76496.o mdcore/myfm.o mdcore/zz8
0.o mdcore/graph.o mdcore/romload.o mdcore/save.o mdcore/md-joe.o mdcore/md.o ps
p/psp_menu.o psp/psp_bitmap.o psp/psp_cfg_file.o psp/emu_config.o psp/emu_state.
o psp/emu_cheat.o lib/libz.a lib/libpng.a lib/unziplib.a -lc -nostartfiles -Wl,-
Ttext=0x08900000 -o dgen.out > dgen.map
mdcore/romload.o: In function `load_rom_into':
romload.c:(.text+0x308): undefined reference to `gzopen'
romload.c:(.text+0x35c): undefined reference to `gzread'
romload.c:(.text+0x36c): undefined reference to `gzread'
romload.c:(.text+0x378): undefined reference to `gzclose'
psp/emu_state.o: In function `EmuStateSlot_Save_MSD':
emu_state.c:(.text+0x5f8): undefined reference to `compress'
psp/emu_state.o: In function `EmuStateSlot_Load_MSD':
emu_state.c:(.text+0xf1c): undefined reference to `uncompress'
lib/libpng.a(png.o): In function `png_reset_crc':
png.c:(.text+0x1b0): undefined reference to `crc32'
lib/libpng.a(png.o): In function `png_calculate_crc':
png.c:(.text+0x1fc): undefined reference to `crc32'
png.c:(.text+0x228): undefined reference to `crc32'
lib/libpng.a(png.o): In function `png_reset_zstream':
png.c:(.text+0xb98): undefined reference to `inflateReset'
lib/libpng.a(pngread.o): In function `png_create_read_struct_2':
pngread.c:(.text+0x134): undefined reference to `inflateInit_'
pngread.c:(.text+0x27c): undefined reference to `inflateInit_'
lib/libpng.a(pngread.o): In function `png_read_init_3':
pngread.c:(.text+0x4ac): undefined reference to `inflateInit_'
lib/libpng.a(pngread.o): In function `png_read_row':
pngread.c:(.text+0xf38): undefined reference to `inflate'
lib/libpng.a(pngread.o): In function `png_read_destroy':
pngread.c:(.text+0x1c38): undefined reference to `inflateEnd'
lib/libpng.a(pngrutil.o): In function `png_decompress_chunk':
pngrutil.c:(.text+0x334): undefined reference to `inflate'
pngrutil.c:(.text+0x43c): undefined reference to `inflateReset'
pngrutil.c:(.text+0x584): undefined reference to `inflateReset'
lib/libpng.a(pngrutil.o): In function `png_read_finish_row':
pngrutil.c:(.text+0x43c4): undefined reference to `inflate'
pngrutil.c:(.text+0x444c): undefined reference to `inflateReset'
pngrutil.c:(.text+0x4490): undefined reference to `inflateReset'
lib/unziplib.a(unzip.o): In function `unzReadCurrentFile':
unzip.c:(.text+0x268): undefined reference to `crc32'
unzip.c:(.text+0x2c8): undefined reference to `inflate'
unzip.c:(.text+0x2f4): undefined reference to `crc32'
lib/unziplib.a(unzip.o): In function `unzCloseCurrentFile':
unzip.c:(.text+0x65c): undefined reference to `inflateEnd'
lib/unziplib.a(unzip.o): In function `unzClose':
unzip.c:(.text+0x844): undefined reference to `inflateEnd'
lib/unziplib.a(unzip.o): In function `unzOpenCurrentFile3':
unzip.c:(.text+0x1694): undefined reference to `inflateEnd'
unzip.c:(.text+0x19f4): undefined reference to `get_crc_table'
unzip.c:(.text+0x1c38): undefined reference to `inflateInit2_'
/usr/local/pspdev/lib/gcc/psp/4.0.1/../../../../psp/lib/libc.a(pspcwd.o): In fun
ction `__psp_init_cwd':
../../../../../../newlib/libc/sys/psp/pspcwd.c:28: undefined reference to `__psp
_argv_0'
../../../../../../newlib/libc/sys/psp/pspcwd.c:28: undefined reference to `__psp
_argv_0'
collect2: ld returned 1 exit status
make: *** [dgen.out] Error 1
I didn't found the author's email address, and I don't think that he speaks English at all :-(
Can someone help me please, or has someone ever recompiled DGEN (he says the procedure is basically identical to the RIN one)? It would be very kind, thanks.
Sorry if I should not post such things here, feel free to delete it then.
Wraggster
Posts: 121
Joined: Fri Aug 26, 2005 7:40 am
Contact:

Post by Wraggster »

Not sure if you know already but the sources to the other 2 megadrive emus for the PSP are at http://osakanapsp.hp.infoseek.co.jp/ (Generator) and the source code to PSP Genesis is here --> http://psp-news.dcemu.co.uk/pspgenesis.shtml
Webmaster of http://www.dcemu.co.uk

DCEMU The Worlds Only Homebrew & Gaming Network of Sites.
Brunni
Posts: 186
Joined: Sat Oct 08, 2005 10:27 pm

Post by Brunni »

Yes. As I said in another topic, I have some programming skills, but I have very few knowledge about linux, command line, gcc, linking, or whatever, and it's very difficult for me to work with this SDK.
I tried PSPGenesis first, but the latest source I found was version 0.15, which is very old. I can't recompile it either because it uses lots of symbols which are now blamed in PSPSDK.

Could someone help me please? It seems the libraries I compiled are false, but they are the version demanded by DGEN... I really don't know what to do now...
Sorry for my bad english
Image Oldschool library for PSP - PC version released
MikeDX
Posts: 30
Joined: Wed Oct 19, 2005 9:24 am

Post by MikeDX »

All of those errors are to do with zlib by the looks of things. is your zlib.a corrupt??
Brunni
Posts: 186
Joined: Sat Oct 08, 2005 10:27 pm

Post by Brunni »

In fact, I found had to use a custom makefile for this to work. It's okay now. But I have some other problems, due to the blamed symbols.

Code: Select all

lib/libz.a(gzio.o): In function `gzerror':
gzio.c:(.text+0x6b0): undefined reference to `zstrerror'
/usr/local/pspdev/lib/gcc/psp/4.0.1/../../../../psp/lib/libc.a(pspcwd.o): In fun
ction `__psp_init_cwd':
../../../../../../newlib/libc/sys/psp/pspcwd.c:28: undefined reference to `__psp
_argv_0'
../../../../../../newlib/libc/sys/psp/pspcwd.c:28: undefined reference to `__psp
_argv_0'
collect2: ld returned 1 exit status
make: *** [dgen.out] Error 1
My PSPSDK build is not very old (a week only), the error seems to come from newlib. What can I do? Am I obliged to rebuild all (5 hours >_<)?
Thank you in advance
Sorry for my bad english
Image Oldschool library for PSP - PC version released
jimparis
Posts: 1145
Joined: Fri Jun 10, 2005 4:21 am
Location: Boston

Post by jimparis »

Yeah, you'll need to also rebuild newlib. Use the latest toolchain from oopo's site (currently psptoolchain-20051021.tgz) or get it from svn.
Post Reply