dc v6 graphics

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

Moderators: cheriff, TyRaNiD

Post Reply
phobox
Posts: 127
Joined: Mon Mar 24, 2008 6:22 pm

dc v6 graphics

Post by phobox »

ehi ehi ehi! darkalex, moonlight...
how could you do that??!?...

can you please tell us????
Ciao! from Italy
KickinAezz
Posts: 328
Joined: Sun Jun 03, 2007 10:05 pm

Post by KickinAezz »

Somethings can't be disclosed :D

You'll have to find out by yourself...
Intrigued by PSP system Since December 2006.
Use it more for Development than for Gaming.
phobox
Posts: 127
Joined: Mon Mar 24, 2008 6:22 pm

Post by phobox »

why they can't?

at least give us the possibility to do that, for example a COMPILED prx and an header file containing exported functions from that prx...
Ciao! from Italy
Mashphealh
Posts: 18
Joined: Wed Nov 28, 2007 4:18 am

Post by Mashphealh »

I haven't looked the DC6 but it's posible that it uses scePaf or pspGu library for do that.
moonlight
Posts: 567
Joined: Wed Oct 26, 2005 7:46 pm

Post by moonlight »

The vlf library is far from being finished, this could be like a 0.001 version :p and it is not prepared for a devs release, but...

Anyways here is the main program (resurrection.prx) source code that uses the vlf gui.

http://www.sendspace.com/file/pmvxzn

Some notes:

- vlf.prx contains the libc. To program using vlf gui your program has to use the vlf libc and not newlib/pspsdk libc, you have to use the included build.mak. For a normal application where you have the required prx's in your same directory(iop.prx, intraFont.prx and vlf.prx), you should modify the start_thread source code in crt0.c to the following one:

Code: Select all

int start_thread(SceSize args, void *argp)
{
	SceUID mod;
	char *path = (char *)argp;
	int last_trail = -1;
	int i;

	if (path)
	{
		for (i = 0; path[i]; i++)
		{
			if (path[i] == '/')
				last_trail = i;
		}
	}

	if (last_trail >= 0)
		path[last_trail] = 0;

	sceIoChdir(path);
	path[last_trail] = '/';

	mod = sceKernelLoadModule("iop.prx", 0, NULL);
	mod = sceKernelStartModule(mod, args, argp, NULL, NULL);
	mod = sceKernelLoadModule("intraFont.prx", 0, NULL);
	mod = sceKernelStartModule(mod, args, argp, NULL, NULL);
	mod = sceKernelLoadModule("vlf.prx", 0, NULL);
	mod = sceKernelStartModule(mod, args, argp, NULL, NULL);
	vlfGuiInit(-1, app_main);
	
	return sceKernelExitDeleteThread(0);
}
- Use the binaries from DC6 release.

- The heap size is passed as first parameter of vlfGuiInit. In this case -1 = all available. I think my version of the newlib is a bit old, so vlf.prx shouldn't support other negative values for the heap, just try anyways.
- The vlf libc currently only exports the following functions, as I was adding them to exports as I was needing them:

Code: Select all

PSP_EXPORT_START(VlfLIBC, 0, 0x0001)
PSP_EXPORT_FUNC_NID(memcpy, 0x9BECFB07)
PSP_EXPORT_FUNC_NID(memset, 0xC37F286B)
PSP_EXPORT_FUNC_NID(memmove, 0x0B80B98F)
PSP_EXPORT_FUNC_NID(strcpy, 0x6FD77CF1)
PSP_EXPORT_FUNC_NID(strncpy, 0xAD1B8B78)
PSP_EXPORT_FUNC_NID(strcat, 0x785B4AD2)
PSP_EXPORT_FUNC_NID(strncat, 0x37816C4B)
PSP_EXPORT_FUNC_NID(strstr, 0x1189DEE4)
PSP_EXPORT_FUNC_NID(strchr, 0x71BD4392)
PSP_EXPORT_FUNC_NID(strrchr, 0xDE6B20E6)
PSP_EXPORT_FUNC_NID(printf, 0xEE062811)
PSP_EXPORT_FUNC_NID(sprintf, 0x90586B92)
PSP_EXPORT_FUNC_NID(snprintf, 0xCAEE18EE)
PSP_EXPORT_FUNC_NID(fprintf, 0xA48C1D67)
PSP_EXPORT_FUNC_NID(scanf, 0xDEFA2111)
PSP_EXPORT_FUNC_NID(sscanf, 0x7AD5E2FB)
PSP_EXPORT_FUNC_NID(fscanf, 0x18432C05)
PSP_EXPORT_FUNC_NID(strlen, 0x8CA6D7FA)
PSP_EXPORT_FUNC_NID(strnlen, 0x97627E33)
PSP_EXPORT_FUNC_NID(strcmp, 0x0D254CA5)
PSP_EXPORT_FUNC_NID(strncmp, 0x65AA73A2)
PSP_EXPORT_FUNC_NID(memcmp, 0x963F2271)
PSP_EXPORT_FUNC_NID(fopen, 0x72A04F8E)
PSP_EXPORT_FUNC_NID(fread, 0x352D1ECF)
PSP_EXPORT_FUNC_NID(fclose, 0xBC709C1A)
PSP_EXPORT_FUNC_NID(fwrite, 0x4F6D4257)
PSP_EXPORT_FUNC_NID(fgetc, 0x5F463703)
PSP_EXPORT_FUNC_NID(fputc, 0x577B6792)
PSP_EXPORT_FUNC_NID(memchr, 0x7003937A)
PSP_EXPORT_FUNC_NID(strcasecmp, 0xE5C7324A)
PSP_EXPORT_FUNC_NID(strncasecmp, 0xF992589C)
PSP_EXPORT_FUNC_NID(malloc, 0xAC773996)
PSP_EXPORT_FUNC_NID(memalign, 0x4BCFEC4C)
PSP_EXPORT_FUNC_NID(free, 0x8A93DF0A)
PSP_EXPORT_FUNC_NID(ftell, 0x710D2ED5)
PSP_EXPORT_FUNC_NID(fseek, 0x903689DE)
PSP_EXPORT_FUNC_NID(vsnprintf, 0x4B49491B)
PSP_EXPORT_FUNC_NID(atoi, 0xF6FF2554)
PSP_EXPORT_FUNC_NID(vsprintf, 0x13B380E2)
PSP_EXPORT_FUNC_NID(realloc, 0x8F770741)
PSP_EXPORT_FUNC_NID(__extendsfdf2, 0x285066C2)
PSP_EXPORT_FUNC_NID(__muldf3, 0x33FC8858)
PSP_EXPORT_FUNC_NID(__adddf3, 0x2812E321)
PSP_EXPORT_FUNC_NID(__truncdfsf2, 0x00616999)
PSP_EXPORT_END
- vlf.h file has lot of things not commented yet, as it is not prepared for a release.
- Some functions won't work properly or won't work at all, some of them are just there for test.
- There is a lot of probabilities that I change a lot of the functions, and that it won't be compatible with new vlf versions. (for example those resources functions that I hate how they are).
- Objects have to be added/removed/modified in the drawing thread, otherwise you may get a bad drawing.
IF you are in thread X and you want to add/modify/remove an object you would do something like this:

Code: Select all


int UpdateItems(void *param)
{
  // update items
  return VLF_EV_RET_REMOVE_HANDLERS;
}

int thread_X()
{
...
vlfGuiAddEventHandler(0, -1, UpdateItems, NULL);
...
}
All event handlers are executed in the drawing thread just before drawing objects.

- The set background function has problems with the height of the image not being a divisor of 272.

Well, good luck to make this working lol
ne0h
Posts: 386
Joined: Thu Feb 21, 2008 2:15 am

Post by ne0h »

wooow!
Thanks moonlight, I've tryed to reverse the vlf.prx but it export a very lot of function!
However now a problem is resolved!
phobox
Posts: 127
Joined: Mon Mar 24, 2008 6:22 pm

Post by phobox »

ooohh! thank you very much!
I'll have a deep deep deep look at your code tomorrow...
really well done! thank you.

I think you should release that library... maby with a later m33sdk... i hope so!

neh0.. i've done it too....
precisely
5 exports: syslib, vlfgui, vlflibc, graphicsUtility, vlfutils
functions: 2+102+44+82+11=241!... yes, a lot of functions ;)

bye!
Ciao! from Italy
ne0h
Posts: 386
Joined: Thu Feb 21, 2008 2:15 am

Post by ne0h »

Ok, I've just rebuilt it to made it works, and it works perfect!
I've try only the Reboot and Shutdown function! ( All the rest of funct is dangerous, I think )
However the code is simple, not impossible to understand as you said!
Thanks moonlight, very good work!
Last edited by ne0h on Sat Dec 20, 2008 12:31 am, edited 1 time in total.
BenHur
Posts: 28
Joined: Sat Oct 20, 2007 5:26 pm

Post by BenHur »

Moonlight, really cool!

I'm in the middle of writing the intraGUI library (reading and decrypting rcos, loading gims and displaying dialogs with the PSP look-and-feel) and boom: everything's here!

Out of curiosity: is the font displaying that much of a pain that you use intraFont?

Again, this is a lot and great work, thanks!

BenHur
moonlight
Posts: 567
Joined: Wed Oct 26, 2005 7:46 pm

Post by moonlight »

BenHur wrote:Out of curiosity: is the font displaying that much of a pain that you use intraFont?
Well I was just lazy to write somehting it was already done.
phobox
Posts: 127
Joined: Mon Mar 24, 2008 6:22 pm

Post by phobox »

ne0h wrote:Ok, I've just rebuilt it to made it works, and it works perfect!
I've try only the Reboot and Shutdown function! ( All the rest of funct is dangerous, I think )
However the code is simple, not impossible to understand as you say!
Thanks moonlight, very good work!
yes you are right!, it's quite easy, but there still are a lot of non commented functions, but it's ok anyway!

a question moonlight (or dark_alex, which one do you prefer?:)):
in the crt0.c of the package, you load and start those 3 famous modules(well, really 2 :)), but i notice they are flashed! when where they flashed? with the dc installer? you should include those in the m33 firmware when you think to release the vlf lib. right?
Last edited by phobox on Thu Aug 07, 2008 7:34 am, edited 1 time in total.
Ciao! from Italy
moonlight
Posts: 567
Joined: Wed Oct 26, 2005 7:46 pm

Post by moonlight »

Those modules are in the pseudo flash of DC6. (e.g. /TM/DC6), the installer wrote them there.
User avatar
Torch
Posts: 825
Joined: Wed May 28, 2008 2:50 am

Post by Torch »

Thanks for this. I had asked the same thing before but got nowhere: http://forums.ps2dev.org/viewtopic.php?t=10586
k!rk
Posts: 11
Joined: Fri Jul 18, 2008 8:26 am

Post by k!rk »

Much thanks Boss!!!
sauron_le_noir
Posts: 203
Joined: Sat Jul 05, 2008 8:03 am

Post by sauron_le_noir »

many thx for the code to detecting the hardware present in the psp
User avatar
Torch
Posts: 825
Joined: Wed May 28, 2008 2:50 am

Post by Torch »

I've got a few problems. I hope someone can help me.

1) What is the easiest way to clear the screen after I've drawn several pictures.
Do I have to keep track of the return values of all the pictures I've drawn and manually remove them, or is there some other way to clear everything on the screen? I'm not creating any menus or anything. I'm just initializing the wave and putting some pictures on top.

2) int vlfGuiClonePicture(int pic, int real, int x, int y);
What is "real" supposed to be?

3) Does anyone know offhand how much memory this VLF stuff consumes just to draw the background wave. I'm trying to keep it under 2MB.
moonlight
Posts: 567
Joined: Wed Oct 26, 2005 7:46 pm

Post by moonlight »

Torch wrote:I've got a few problems. I hope someone can help me.

1) What is the easiest way to clear the screen after I've drawn several pictures.
Do I have to keep track of the return values of all the pictures I've drawn and manually remove them, or is there some other way to clear everything on the screen? I'm not creating any menus or anything. I'm just initializing the wave and putting some pictures on top.

2) int vlfGuiClonePicture(int pic, int real, int x, int y);
What is "real" supposed to be?

3) Does anyone know offhand how much memory this VLF stuff consumes just to draw the background wave. I'm trying to keep it under 2MB.
1. Well you could use vlfGuiSetRectangleVisibility which still is buggy and doesn't affect all objects, but this won't delete pictures so memory will still be there, probably I will add a function to clear all objects in a rectangle.

2. Real = 1 means that it creates a new independent picture with same data. If real is 0, it just copies references, using less memory.

3. No idea :)
User avatar
Torch
Posts: 825
Joined: Wed May 28, 2008 2:50 am

Post by Torch »

Is there a proper way to terminate & unload the VLF library. I need to load vshmain.prx after my application exits, so I need to be sure that ALL memory is freed, especially for Phat.

And will int vlfGuiAddPicture(void *data, int size, int x, int y); allocate more memory for the picture, or will it directly use *data.
Is it safe to free *data after calling the function??
moonlight
Posts: 567
Joined: Wed Oct 26, 2005 7:46 pm

Post by moonlight »

Yes, you can free data after calling the function. Currently there is no proper way to shutdown the library, although the module_stop will free the libc heap, however it won't delete timers and callbacks.
phobox
Posts: 127
Joined: Mon Mar 24, 2008 6:22 pm

Post by phobox »

a bug?
if you set the background with vlfGuiSetBackgroundPlane and than you use vlfGuiSetTitleBar, the psp crashes. if you set the background with vlfGuiSetBackgroundDate everything works well. not tried with other functions used to set background.

i found other bugs/errors, i'll post them all together later, because i have to perform some other tests.
anyway, thanks!

i love this lib because i think it's really very very easy to use!
Ciao! from Italy
moonlight
Posts: 567
Joined: Wed Oct 26, 2005 7:46 pm

Post by moonlight »

Background plane + title bar bugfix: http://www.sendspace.com/file/rp2i1w
It was just a stupid thing.
User avatar
Torch
Posts: 825
Joined: Wed May 28, 2008 2:50 am

Post by Torch »

How do I add more exports to the libc.
I'm getting TONS of missing functions when using some libs.
moonlight
Posts: 567
Joined: Wed Oct 26, 2005 7:46 pm

Post by moonlight »

which funcs are you missing? I was adding them as I was needing them, tell me and I will recompile :)
User avatar
Torch
Posts: 825
Joined: Wed May 28, 2008 2:50 am

Post by Torch »

I'm trying to use libpng.
Sorry for the huge list. Didn't know how to eliminate duplicates.

Think its important to support the libpng imports, because we can't afford to store uncompressed images.

Code: Select all

/usr/local/pspdev/lib/gcc/psp/4.1.0/../../../../psp/lib/libpng.a(pngerror.o): In function `png_warning':
pngerror.c:(.text+0x194): undefined reference to `_impure_ptr'
pngerror.c:(.text+0x194): relocation truncated to fit: R_MIPS_GPREL16 against `_impure_ptr'
pngerror.c:(.text+0x1a0): undefined reference to `fprintf'
pngerror.c:(.text+0x1f8): undefined reference to `_impure_ptr'
pngerror.c:(.text+0x1f8): relocation truncated to fit: R_MIPS_GPREL16 against `_impure_ptr'
pngerror.c:(.text+0x1fc): undefined reference to `_impure_ptr'
pngerror.c:(.text+0x1fc): relocation truncated to fit: R_MIPS_GPREL16 against `_impure_ptr'
pngerror.c:(.text+0x218): undefined reference to `fprintf'
/usr/local/pspdev/lib/gcc/psp/4.1.0/../../../../psp/lib/libpng.a(pngerror.o): In function `png_error':
pngerror.c:(.text+0x2f4): undefined reference to `_impure_ptr'
pngerror.c:(.text+0x2f4): relocation truncated to fit: R_MIPS_GPREL16 against `_impure_ptr'
pngerror.c:(.text+0x304): undefined reference to `fprintf'
pngerror.c:(.text+0x360): undefined reference to `_impure_ptr'
pngerror.c:(.text+0x360): relocation truncated to fit: R_MIPS_GPREL16 against `_impure_ptr'
pngerror.c:(.text+0x364): undefined reference to `_impure_ptr'
pngerror.c:(.text+0x364): relocation truncated to fit: R_MIPS_GPREL16 against `_impure_ptr'
pngerror.c:(.text+0x37c): undefined reference to `fprintf'
pngerror.c:(.text+0x398): undefined reference to `fprintf'
/usr/local/pspdev/lib/gcc/psp/4.1.0/../../../../psp/lib/libpng.a(pngget.o): In function `png_get_cHRM':
pngget.c:(.text+0x4a8): undefined reference to `__extendsfdf2'
pngget.c:(.text+0x4c0): undefined reference to `__extendsfdf2'
pngget.c:(.text+0x4d8): undefined reference to `__extendsfdf2'
pngget.c:(.text+0x4f0): undefined reference to `__extendsfdf2'
pngget.c:(.text+0x508): undefined reference to `__extendsfdf2'
/usr/local/pspdev/lib/gcc/psp/4.1.0/../../../../psp/lib/libpng.a(pngget.o):pngget.c:(.text+0x520): more undefined references to `__extendsfdf2' follow
/usr/local/pspdev/lib/gcc/psp/4.1.0/../../../../psp/lib/libpng.a(pngread.o): In function `png_create_read_struct_2':
pngread.c:(.text+0x21b4): undefined reference to `abort'
/usr/local/pspdev/lib/gcc/psp/4.1.0/../../../../psp/lib/libpng.a(pngrio.o): In function `png_default_read_data':
pngrio.c:(.text+0x8c): undefined reference to `fread'
/usr/local/pspdev/lib/gcc/psp/4.1.0/../../../../psp/lib/libpng.a(pngrtran.o): In function `png_set_gamma':
pngrtran.c:(.text+0x60): undefined reference to `__muldf3'
pngrtran.c:(.text+0x78): undefined reference to `__subdf3'
pngrtran.c:(.text+0x98): undefined reference to `__gtdf2'
pngrtran.c:(.text+0xc8): undefined reference to `__truncdfsf2'
pngrtran.c:(.text+0xd8): undefined reference to `__truncdfsf2'
/usr/local/pspdev/lib/gcc/psp/4.1.0/../../../../psp/lib/libpng.a(pngrtran.o): In function `png_build_gamma_table':
pngrtran.c:(.text+0x2a78): undefined reference to `__extendsfdf2'
pngrtran.c:(.text+0x2a90): undefined reference to `__gtdf2'
pngrtran.c:(.text+0x2b1c): undefined reference to `__divdf3'
pngrtran.c:(.text+0x2b4c): undefined reference to `__floatsidf'
pngrtran.c:(.text+0x2b70): undefined reference to `__muldf3'
pngrtran.c:(.text+0x2b7c): undefined reference to `__fixunsdfsi'
pngrtran.c:(.text+0x2be8): undefined reference to `__floatsidf'
pngrtran.c:(.text+0x2c00): undefined reference to `__adddf3'
pngrtran.c:(.text+0x2c18): undefined reference to `__muldf3'
pngrtran.c:(.text+0x2c40): undefined reference to `__muldf3'
pngrtran.c:(.text+0x2c4c): undefined reference to `__fixunsdfsi'
pngrtran.c:(.text+0x2cd0): undefined reference to `__extendsfdf2'
pngrtran.c:(.text+0x2ce8): undefined reference to `__divdf3'
pngrtran.c:(.text+0x2d80): undefined reference to `__divdf3'
pngrtran.c:(.text+0x2da8): undefined reference to `__muldf3'
pngrtran.c:(.text+0x2dc4): undefined reference to `__adddf3'
pngrtran.c:(.text+0x2dd0): undefined reference to `__fixunsdfsi'
pngrtran.c:(.text+0x2dfc): undefined reference to `__floatsidf'
pngrtran.c:(.text+0x2e18): undefined reference to `__adddf3'
pngrtran.c:(.text+0x2e74): undefined reference to `__extendsfdf2'
pngrtran.c:(.text+0x2e8c): undefined reference to `__gtdf2'
pngrtran.c:(.text+0x2ecc): undefined reference to `__floatsidf'
pngrtran.c:(.text+0x2ee0): undefined reference to `__divdf3'
pngrtran.c:(.text+0x2f0c): undefined reference to `__muldf3'
pngrtran.c:(.text+0x2f28): undefined reference to `__adddf3'
pngrtran.c:(.text+0x2f34): undefined reference to `__fixunsdfsi'
pngrtran.c:(.text+0x2f68): undefined reference to `__extendsfdf2'
pngrtran.c:(.text+0x2f80): undefined reference to `__divdf3'
pngrtran.c:(.text+0x2fa8): undefined reference to `__floatsidf'
pngrtran.c:(.text+0x2fbc): undefined reference to `__divdf3'
pngrtran.c:(.text+0x2fe8): undefined reference to `__muldf3'
pngrtran.c:(.text+0x3004): undefined reference to `__adddf3'
pngrtran.c:(.text+0x3010): undefined reference to `__fixunsdfsi'
pngrtran.c:(.text+0x3034): undefined reference to `__extendsfdf2'
pngrtran.c:(.text+0x3054): undefined reference to `__gtdf2'
pngrtran.c:(.text+0x3070): undefined reference to `__divdf3'
pngrtran.c:(.text+0x3094): undefined reference to `__floatsidf'
pngrtran.c:(.text+0x30a8): undefined reference to `__divdf3'
pngrtran.c:(.text+0x30d4): undefined reference to `__muldf3'
pngrtran.c:(.text+0x30f0): undefined reference to `__adddf3'
pngrtran.c:(.text+0x30fc): undefined reference to `__fixunsdfsi'
pngrtran.c:(.text+0x315c): undefined reference to `__extendsfdf2'
pngrtran.c:(.text+0x3174): undefined reference to `__divdf3'
pngrtran.c:(.text+0x31b4): undefined reference to `__extendsfdf2'
pngrtran.c:(.text+0x31d4): undefined reference to `__gtdf2'
pngrtran.c:(.text+0x31f0): undefined reference to `__divdf3'
pngrtran.c:(.text+0x3288): undefined reference to `__divdf3'
pngrtran.c:(.text+0x32b0): undefined reference to `__muldf3'
pngrtran.c:(.text+0x32cc): undefined reference to `__adddf3'
pngrtran.c:(.text+0x32d8): undefined reference to `__fixunsdfsi'
pngrtran.c:(.text+0x3304): undefined reference to `__floatsidf'
pngrtran.c:(.text+0x3320): undefined reference to `__adddf3'
pngrtran.c:(.text+0x33a4): undefined reference to `__divdf3'
pngrtran.c:(.text+0x33cc): undefined reference to `__muldf3'
pngrtran.c:(.text+0x33e8): undefined reference to `__adddf3'
pngrtran.c:(.text+0x33f4): undefined reference to `__fixunsdfsi'
pngrtran.c:(.text+0x3420): undefined reference to `__floatsidf'
pngrtran.c:(.text+0x343c): undefined reference to `__adddf3'
pngrtran.c:(.text+0x3468): undefined reference to `__extendsfdf2'
pngrtran.c:(.text+0x3480): undefined reference to `__divdf3'
pngrtran.c:(.text+0x34bc): undefined reference to `__extendsfdf2'
pngrtran.c:(.text+0x34d8): undefined reference to `__extendsfdf2'
pngrtran.c:(.text+0x34fc): undefined reference to `__adddf3'
/usr/local/pspdev/lib/gcc/psp/4.1.0/../../../../psp/lib/libpng.a(pngrtran.o): In function `png_init_read_transformations':
pngrtran.c:(.text+0x37d4): undefined reference to `__extendsfdf2'
pngrtran.c:(.text+0x37ec): undefined reference to `__subdf3'
pngrtran.c:(.text+0x380c): undefined reference to `__ltdf2'
pngrtran.c:(.text+0x389c): undefined reference to `__floatsidf'
pngrtran.c:(.text+0x38ec): undefined reference to `__floatsidf'
pngrtran.c:(.text+0x3904): undefined reference to `__divdf3'
pngrtran.c:(.text+0x392c): undefined reference to `__muldf3'
pngrtran.c:(.text+0x394c): undefined reference to `__adddf3'
pngrtran.c:(.text+0x3958): undefined reference to `__fixunsdfsi'
pngrtran.c:(.text+0x3968): undefined reference to `__floatsidf'
pngrtran.c:(.text+0x3980): undefined reference to `__divdf3'
pngrtran.c:(.text+0x39a8): undefined reference to `__muldf3'
pngrtran.c:(.text+0x39bc): undefined reference to `__adddf3'
pngrtran.c:(.text+0x39c8): undefined reference to `__fixunsdfsi'
pngrtran.c:(.text+0x39f4): undefined reference to `__floatsidf'
pngrtran.c:(.text+0x3a0c): undefined reference to `__divdf3'
pngrtran.c:(.text+0x3a34): undefined reference to `__muldf3'
pngrtran.c:(.text+0x3a54): undefined reference to `__adddf3'
pngrtran.c:(.text+0x3a60): undefined reference to `__fixunsdfsi'
pngrtran.c:(.text+0x3a70): undefined reference to `__floatsidf'
pngrtran.c:(.text+0x3a88): undefined reference to `__divdf3'
pngrtran.c:(.text+0x3ab0): undefined reference to `__muldf3'
pngrtran.c:(.text+0x3ac4): undefined reference to `__adddf3'
pngrtran.c:(.text+0x3ad0): undefined reference to `__fixunsdfsi'
pngrtran.c:(.text+0x3ae0): undefined reference to `__floatsidf'
pngrtran.c:(.text+0x3af8): undefined reference to `__divdf3'
pngrtran.c:(.text+0x3b20): undefined reference to `__muldf3'
pngrtran.c:(.text+0x3b34): undefined reference to `__adddf3'
pngrtran.c:(.text+0x3b40): undefined reference to `__fixunsdfsi'
pngrtran.c:(.text+0x3b50): undefined reference to `__floatsidf'
pngrtran.c:(.text+0x3b68): undefined reference to `__divdf3'
pngrtran.c:(.text+0x3b90): undefined reference to `__muldf3'
pngrtran.c:(.text+0x3ba4): undefined reference to `__adddf3'
pngrtran.c:(.text+0x3bb0): undefined reference to `__fixunsdfsi'
pngrtran.c:(.text+0x3bc0): undefined reference to `__floatsidf'
pngrtran.c:(.text+0x3bd8): undefined reference to `__divdf3'
pngrtran.c:(.text+0x3c00): undefined reference to `__muldf3'
pngrtran.c:(.text+0x3c14): undefined reference to `__adddf3'
pngrtran.c:(.text+0x3c20): undefined reference to `__fixunsdfsi'
pngrtran.c:(.text+0x3c30): undefined reference to `__floatsidf'
pngrtran.c:(.text+0x3c48): undefined reference to `__divdf3'
pngrtran.c:(.text+0x3c70): undefined reference to `__muldf3'
pngrtran.c:(.text+0x3c84): undefined reference to `__adddf3'
pngrtran.c:(.text+0x3c90): undefined reference to `__fixunsdfsi'
pngrtran.c:(.text+0x3d78): undefined reference to `__extendsfdf2'
pngrtran.c:(.text+0x3e50): undefined reference to `__ltdf2'
pngrtran.c:(.text+0x3e78): undefined reference to `__floatsidf'
pngrtran.c:(.text+0x3e9c): undefined reference to `__divdf3'
pngrtran.c:(.text+0x3ec4): undefined reference to `__muldf3'
pngrtran.c:(.text+0x3ee4): undefined reference to `__adddf3'
pngrtran.c:(.text+0x3ef0): undefined reference to `__fixunsdfsi'
pngrtran.c:(.text+0x3f04): undefined reference to `__floatsidf'
pngrtran.c:(.text+0x3f1c): undefined reference to `__divdf3'
pngrtran.c:(.text+0x3f44): undefined reference to `__muldf3'
pngrtran.c:(.text+0x3f58): undefined reference to `__adddf3'
pngrtran.c:(.text+0x3f64): undefined reference to `__fixunsdfsi'
pngrtran.c:(.text+0x3f78): undefined reference to `__floatsidf'
pngrtran.c:(.text+0x3f90): undefined reference to `__divdf3'
pngrtran.c:(.text+0x3fb8): undefined reference to `__muldf3'
pngrtran.c:(.text+0x3fcc): undefined reference to `__adddf3'
pngrtran.c:(.text+0x3fd8): undefined reference to `__fixunsdfsi'
pngrtran.c:(.text+0x422c): undefined reference to `__extendsfdf2'
pngrtran.c:(.text+0x424c): undefined reference to `__divdf3'
pngrtran.c:(.text+0x4260): undefined reference to `__extendsfdf2'
pngrtran.c:(.text+0x4274): undefined reference to `__divdf3'
pngrtran.c:(.text+0x4290): undefined reference to `__adddf3'
pngrtran.c:(.text+0x42ac): undefined reference to `__adddf3'
pngrtran.c:(.text+0x42d0): undefined reference to `__adddf3'
pngrtran.c:(.text+0x42ec): undefined reference to `__adddf3'
pngrtran.c:(.text+0x4308): undefined reference to `__adddf3'
/usr/local/pspdev/lib/gcc/psp/4.1.0/../../../../psp/lib/libpng.a(pngrtran.o):pngrtran.c:(.text+0x4324): more undefined references to `__adddf3' follow
/usr/local/pspdev/lib/gcc/psp/4.1.0/../../../../psp/lib/libpng.a(pngrtran.o): In function `png_init_read_transformations':
pngrtran.c:(.text+0x4414): undefined reference to `__extendsfdf2'
pngrtran.c:(.text+0x4434): undefined reference to `__divdf3'
pngrtran.c:(.text+0x4448): undefined reference to `__extendsfdf2'
pngrtran.c:(.text+0x445c): undefined reference to `__divdf3'
pngrtran.c:(.text+0x4478): undefined reference to `__subdf3'
pngrtran.c:(.text+0x4494): undefined reference to `__floatsidf'
pngrtran.c:(.text+0x44b8): undefined reference to `__divdf3'
pngrtran.c:(.text+0x44e0): undefined reference to `__muldf3'
pngrtran.c:(.text+0x44fc): undefined reference to `__adddf3'
pngrtran.c:(.text+0x4508): undefined reference to `__fixunsdfsi'
pngrtran.c:(.text+0x451c): undefined reference to `__floatsidf'
pngrtran.c:(.text+0x4534): undefined reference to `__divdf3'
pngrtran.c:(.text+0x455c): undefined reference to `__muldf3'
pngrtran.c:(.text+0x4578): undefined reference to `__adddf3'
pngrtran.c:(.text+0x4584): undefined reference to `__fixunsdfsi'
pngrtran.c:(.text+0x4598): undefined reference to `__floatsidf'
pngrtran.c:(.text+0x45b0): undefined reference to `__divdf3'
pngrtran.c:(.text+0x45d8): undefined reference to `__muldf3'
pngrtran.c:(.text+0x45f4): undefined reference to `__adddf3'
pngrtran.c:(.text+0x4600): undefined reference to `__fixunsdfsi'
pngrtran.c:(.text+0x4618): undefined reference to `__adddf3'
pngrtran.c:(.text+0x4634): undefined reference to `__adddf3'
pngrtran.c:(.text+0x4650): undefined reference to `__adddf3'
pngrtran.c:(.text+0x4664): undefined reference to `__extendsfdf2'
pngrtran.c:(.text+0x4680): undefined reference to `__adddf3'
pngrtran.c:(.text+0x469c): undefined reference to `__adddf3'
pngrtran.c:(.text+0x46b8): undefined reference to `__adddf3'
/usr/local/pspdev/lib/gcc/psp/4.1.0/../../../../psp/lib/libpng.a(pngrtran.o): In function `png_set_rgb_to_gray':
pngrtran.c:(.text+0x5b14): undefined reference to `__truncdfsf2'
pngrtran.c:(.text+0x5b1c): undefined reference to `__extendsfdf2'
pngrtran.c:(.text+0x5b3c): undefined reference to `__muldf3'
pngrtran.c:(.text+0x5b5c): undefined reference to `__adddf3'
pngrtran.c:(.text+0x5b68): undefined reference to `__fixdfsi'
pngrtran.c:(.text+0x5b78): undefined reference to `__truncdfsf2'
pngrtran.c:(.text+0x5b80): undefined reference to `__extendsfdf2'
pngrtran.c:(.text+0x5b94): undefined reference to `__muldf3'
pngrtran.c:(.text+0x5ba8): undefined reference to `__adddf3'
pngrtran.c:(.text+0x5bb4): undefined reference to `__fixdfsi'
/usr/local/pspdev/lib/gcc/psp/4.1.0/../../../../psp/lib/libpng.a(pngrtran.o): In function `png_set_background':
pngrtran.c:(.text+0x5c98): undefined reference to `__truncdfsf2'
/usr/local/pspdev/lib/gcc/psp/4.1.0/../../../../psp/lib/libpng.a(pngrutil.o): In function `png_handle_sCAL':
pngrutil.c:(.text+0x21f0): undefined reference to `strtod'
pngrutil.c:(.text+0x2234): undefined reference to `strtod'
pngrutil.c:(.text+0x2264): undefined reference to `__ledf2'
pngrutil.c:(.text+0x227c): undefined reference to `__ledf2'
/usr/local/pspdev/lib/gcc/psp/4.1.0/../../../../psp/lib/libpng.a(pngrutil.o): In function `png_handle_sRGB':
pngrutil.c:(.text+0x3854): undefined reference to `_impure_ptr'
pngrutil.c:(.text+0x3854): relocation truncated to fit: R_MIPS_GPREL16 against `_impure_ptr'
pngrutil.c:(.text+0x3864): undefined reference to `fprintf'
/usr/local/pspdev/lib/gcc/psp/4.1.0/../../../../psp/lib/libpng.a(pngrutil.o): In function `png_handle_cHRM':
pngrutil.c:(.text+0x3dc4): undefined reference to `_impure_ptr'
pngrutil.c:(.text+0x3dc4): relocation truncated to fit: R_MIPS_GPREL16 against `_impure_ptr'
pngrutil.c:(.text+0x3dcc): undefined reference to `__extendsfdf2'
pngrutil.c:(.text+0x3ddc): undefined reference to `__extendsfdf2'
pngrutil.c:(.text+0x3dec): undefined reference to `__extendsfdf2'
pngrutil.c:(.text+0x3dfc): undefined reference to `__extendsfdf2'
pngrutil.c:(.text+0x3e2c): undefined reference to `fprintf'
pngrutil.c:(.text+0x3e34): undefined reference to `_impure_ptr'
pngrutil.c:(.text+0x3e34): relocation truncated to fit: R_MIPS_GPREL16 against `_impure_ptr'
pngrutil.c:(.text+0x3e3c): undefined reference to `__extendsfdf2'
pngrutil.c:(.text+0x3e4c): undefined reference to `__extendsfdf2'
pngrutil.c:(.text+0x3e5c): undefined reference to `__extendsfdf2'
pngrutil.c:(.text+0x3e6c): undefined reference to `__extendsfdf2'
pngrutil.c:(.text+0x3e9c): undefined reference to `fprintf'
pngrutil.c:(.text+0x3edc): undefined reference to `__extendsfdf2'
pngrutil.c:(.text+0x3eec): undefined reference to `__extendsfdf2'
pngrutil.c:(.text+0x3efc): undefined reference to `__extendsfdf2'
pngrutil.c:(.text+0x3f0c): undefined reference to `__extendsfdf2'
pngrutil.c:(.text+0x3f1c): undefined reference to `__extendsfdf2'
/usr/local/pspdev/lib/gcc/psp/4.1.0/../../../../psp/lib/libpng.a(pngrutil.o):pngrutil.c:(.text+0x3f2c): more undefined references to `__extendsfdf2' follow
/usr/local/pspdev/lib/gcc/psp/4.1.0/../../../../psp/lib/libpng.a(pngrutil.o): In function `png_handle_gAMA':
pngrutil.c:(.text+0x4298): undefined reference to `_impure_ptr'
pngrutil.c:(.text+0x4298): relocation truncated to fit: R_MIPS_GPREL16 against `_impure_ptr'
pngrutil.c:(.text+0x42a8): undefined reference to `fprintf'
pngrutil.c:(.text+0x42e0): undefined reference to `__extendsfdf2'
/usr/local/pspdev/lib/gcc/psp/4.1.0/../../../../psp/lib/libpng.a(pngset.o): In function `png_set_gAMA_fixed':
pngset.c:(.text+0x714): undefined reference to `__floatsidf'
pngset.c:(.text+0x72c): undefined reference to `__divdf3'
pngset.c:(.text+0x738): undefined reference to `__truncdfsf2'
/usr/local/pspdev/lib/gcc/psp/4.1.0/../../../../psp/lib/libpng.a(pngset.o): In function `png_set_gAMA':
pngset.c:(.text+0x7f4): undefined reference to `__gtdf2'
pngset.c:(.text+0x808): undefined reference to `__truncdfsf2'
pngset.c:(.text+0x824): undefined reference to `__muldf3'
pngset.c:(.text+0x83c): undefined reference to `__adddf3'
pngset.c:(.text+0x848): undefined reference to `__fixdfsi'
pngset.c:(.text+0x86c): undefined reference to `__eqdf2'
/usr/local/pspdev/lib/gcc/psp/4.1.0/../../../../psp/lib/libpng.a(pngset.o): In function `png_set_cHRM_fixed':
pngset.c:(.text+0x9b0): undefined reference to `__floatsidf'
pngset.c:(.text+0x9d4): undefined reference to `__gtdf2'
pngset.c:(.text+0x9e4): undefined reference to `__floatsidf'
pngset.c:(.text+0xa08): undefined reference to `__gtdf2'
pngset.c:(.text+0xa18): undefined reference to `__floatsidf'
pngset.c:(.text+0xa3c): undefined reference to `__gtdf2'
pngset.c:(.text+0xa4c): undefined reference to `__floatsidf'
pngset.c:(.text+0xa70): undefined reference to `__gtdf2'
pngset.c:(.text+0xa80): undefined reference to `__floatsidf'
pngset.c:(.text+0xaa4): undefined reference to `__gtdf2'
pngset.c:(.text+0xab4): undefined reference to `__floatsidf'
pngset.c:(.text+0xad8): undefined reference to `__gtdf2'
pngset.c:(.text+0xae8): undefined reference to `__floatsidf'
pngset.c:(.text+0xb0c): undefined reference to `__gtdf2'
pngset.c:(.text+0xb1c): undefined reference to `__floatsidf'
pngset.c:(.text+0xb40): undefined reference to `__gtdf2'
pngset.c:(.text+0xb88): undefined reference to `__divdf3'
pngset.c:(.text+0xb94): undefined reference to `__truncdfsf2'
pngset.c:(.text+0xbb4): undefined reference to `__divdf3'
pngset.c:(.text+0xbc0): undefined reference to `__truncdfsf2'
pngset.c:(.text+0xbe0): undefined reference to `__divdf3'
pngset.c:(.text+0xbec): undefined reference to `__truncdfsf2'
pngset.c:(.text+0xc0c): undefined reference to `__divdf3'
pngset.c:(.text+0xc18): undefined reference to `__truncdfsf2'
pngset.c:(.text+0xc38): undefined reference to `__divdf3'
pngset.c:(.text+0xc44): undefined reference to `__truncdfsf2'
pngset.c:(.text+0xc64): undefined reference to `__divdf3'
pngset.c:(.text+0xc70): undefined reference to `__truncdfsf2'
pngset.c:(.text+0xc90): undefined reference to `__divdf3'
pngset.c:(.text+0xc9c): undefined reference to `__truncdfsf2'
pngset.c:(.text+0xcbc): undefined reference to `__divdf3'
pngset.c:(.text+0xcc8): undefined reference to `__truncdfsf2'
/usr/local/pspdev/lib/gcc/psp/4.1.0/../../../../psp/lib/libpng.a(pngset.o): In function `png_set_cHRM':
pngset.c:(.text+0xe30): undefined reference to `__ltdf2'
pngset.c:(.text+0xe48): undefined reference to `__ltdf2'
pngset.c:(.text+0xe60): undefined reference to `__ltdf2'
pngset.c:(.text+0xe78): undefined reference to `__ltdf2'
pngset.c:(.text+0xe90): undefined reference to `__ltdf2'
/usr/local/pspdev/lib/gcc/psp/4.1.0/../../../../psp/lib/libpng.a(pngset.o):pngset.c:(.text+0xea8): more undefined references to `__ltdf2' follow
/usr/local/pspdev/lib/gcc/psp/4.1.0/../../../../psp/lib/libpng.a(pngset.o): In function `png_set_cHRM':
pngset.c:(.text+0xef8): undefined reference to `__gtdf2'
pngset.c:(.text+0xf18): undefined reference to `__gtdf2'
pngset.c:(.text+0xf3c): undefined reference to `__gtdf2'
pngset.c:(.text+0xf60): undefined reference to `__gtdf2'
pngset.c:(.text+0xf84): undefined reference to `__gtdf2'
/usr/local/pspdev/lib/gcc/psp/4.1.0/../../../../psp/lib/libpng.a(pngset.o):pngset.c:(.text+0xfa8): more undefined references to `__gtdf2' follow
/usr/local/pspdev/lib/gcc/psp/4.1.0/../../../../psp/lib/libpng.a(pngset.o): In function `png_set_cHRM':
pngset.c:(.text+0x1004): undefined reference to `__truncdfsf2'
pngset.c:(.text+0x1014): undefined reference to `__truncdfsf2'
pngset.c:(.text+0x1024): undefined reference to `__truncdfsf2'
pngset.c:(.text+0x1034): undefined reference to `__truncdfsf2'
pngset.c:(.text+0x1044): undefined reference to `__truncdfsf2'
/usr/local/pspdev/lib/gcc/psp/4.1.0/../../../../psp/lib/libpng.a(pngset.o):pngset.c:(.text+0x1054): more undefined references to `__truncdfsf2' follow
/usr/local/pspdev/lib/gcc/psp/4.1.0/../../../../psp/lib/libpng.a(pngset.o): In function `png_set_cHRM':
pngset.c:(.text+0x1098): undefined reference to `__muldf3'
pngset.c:(.text+0x10b8): undefined reference to `__adddf3'
pngset.c:(.text+0x10c4): undefined reference to `__fixdfsi'
pngset.c:(.text+0x10dc): undefined reference to `__muldf3'
pngset.c:(.text+0x10f0): undefined reference to `__adddf3'
pngset.c:(.text+0x10fc): undefined reference to `__fixdfsi'
pngset.c:(.text+0x1114): undefined reference to `__muldf3'
pngset.c:(.text+0x1128): undefined reference to `__adddf3'
pngset.c:(.text+0x1134): undefined reference to `__fixdfsi'
pngset.c:(.text+0x114c): undefined reference to `__muldf3'
pngset.c:(.text+0x1160): undefined reference to `__adddf3'
pngset.c:(.text+0x116c): undefined reference to `__fixdfsi'
pngset.c:(.text+0x1184): undefined reference to `__muldf3'
pngset.c:(.text+0x1198): undefined reference to `__adddf3'
pngset.c:(.text+0x11a4): undefined reference to `__fixdfsi'
pngset.c:(.text+0x11bc): undefined reference to `__muldf3'
pngset.c:(.text+0x11d0): undefined reference to `__adddf3'
pngset.c:(.text+0x11dc): undefined reference to `__fixdfsi'
pngset.c:(.text+0x11f4): undefined reference to `__muldf3'
pngset.c:(.text+0x1208): undefined reference to `__adddf3'
pngset.c:(.text+0x1214): undefined reference to `__fixdfsi'
pngset.c:(.text+0x122c): undefined reference to `__muldf3'
pngset.c:(.text+0x1240): undefined reference to `__adddf3'
pngset.c:(.text+0x124c): undefined reference to `__fixdfsi'
/usr/local/pspdev/lib/gcc/psp/4.1.0/../../../../psp/lib/libm.a(lib_a-w_pow.o): In function `pow':
../../../../../newlib/libm/math/w_pow.c:108: undefined reference to `__eqdf2'
../../../../../newlib/libm/math/w_pow.c:109: undefined reference to `__eqdf2'
../../../../../newlib/libm/math/w_pow.c:88: undefined reference to `__eqdf2'
../../../../../newlib/libm/math/w_pow.c:210: undefined reference to `__errno'
../../../../../newlib/libm/math/w_pow.c:126: undefined reference to `__ltdf2'
../../../../../newlib/libm/math/w_pow.c:164: undefined reference to `__errno'
../../../../../newlib/libm/math/w_pow.c:196: undefined reference to `__eqdf2'
../../../../../newlib/libm/math/w_pow.c:207: undefined reference to `__errno'
../../../../../newlib/libm/math/w_pow.c:160: undefined reference to `__divdf3'
../../../../../newlib/libm/math/w_pow.c:179: undefined reference to `__ltdf2'
../../../../../newlib/libm/math/w_pow.c:178: undefined reference to `__muldf3'
../../../../../newlib/libm/math/w_pow.c:179: undefined reference to `__nedf2'
../../../../../newlib/libm/math/w_pow.c:183: undefined reference to `__ltdf2'
../../../../../newlib/libm/math/w_pow.c:182: undefined reference to `__muldf3'
../../../../../newlib/libm/math/w_pow.c:183: undefined reference to `__nedf2'
/usr/local/pspdev/lib/gcc/psp/4.1.0/../../../../psp/lib/libm.a(lib_a-e_pow.o): In function `__ieee754_pow':
../../../../../newlib/libm/math/e_pow.c:123: undefined reference to `__adddf3'
../../../../../newlib/libm/math/e_pow.c:186: undefined reference to `__subdf3'
../../../../../newlib/libm/math/e_pow.c:186: undefined reference to `__divdf3'
../../../../../newlib/libm/math/e_pow.c:149: undefined reference to `__subdf3'
../../../../../newlib/libm/math/e_pow.c:191: undefined reference to `__muldf3'
../../../../../newlib/libm/math/e_pow.c:222: undefined reference to `__subdf3'
../../../../../newlib/libm/math/e_pow.c:223: undefined reference to `__adddf3'
../../../../../newlib/libm/math/e_pow.c:223: undefined reference to `__divdf3'
../../../../../newlib/libm/math/e_pow.c:224: undefined reference to `__muldf3'
../../../../../newlib/libm/math/e_pow.c:231: undefined reference to `__muldf3'
../../../../../newlib/libm/math/e_pow.c:231: undefined reference to `__subdf3'
../../../../../newlib/libm/math/e_pow.c:231: undefined reference to `__subdf3'
../../../../../newlib/libm/math/e_pow.c:231: undefined reference to `__subdf3'
../../../../../newlib/libm/math/e_pow.c:231: undefined reference to `__muldf3'
../../../../../newlib/libm/math/e_pow.c:231: undefined reference to `__subdf3'
../../../../../newlib/libm/math/e_pow.c:231: undefined reference to `__muldf3'
../../../../../newlib/libm/math/e_pow.c:233: undefined reference to `__muldf3'
../../../../../newlib/libm/math/e_pow.c:234: undefined reference to `__muldf3'
../../../../../newlib/libm/math/e_pow.c:234: undefined reference to `__muldf3'
../../../../../newlib/libm/math/e_pow.c:234: undefined reference to `__adddf3'
../../../../../newlib/libm/math/e_pow.c:234: undefined reference to `__muldf3'
../../../../../newlib/libm/math/e_pow.c:234: undefined reference to `__adddf3'
../../../../../newlib/libm/math/e_pow.c:234: undefined reference to `__muldf3'
../../../../../newlib/libm/math/e_pow.c:234: undefined reference to `__adddf3'
../../../../../newlib/libm/math/e_pow.c:234: undefined reference to `__muldf3'
../../../../../newlib/libm/math/e_pow.c:234: undefined reference to `__adddf3'
../../../../../newlib/libm/math/e_pow.c:234: undefined reference to `__muldf3'
../../../../../newlib/libm/math/e_pow.c:234: undefined reference to `__adddf3'
../../../../../newlib/libm/math/e_pow.c:234: undefined reference to `__muldf3'
../../../../../newlib/libm/math/e_pow.c:235: undefined reference to `__adddf3'
../../../../../newlib/libm/math/e_pow.c:235: undefined reference to `__muldf3'
../../../../../newlib/libm/math/e_pow.c:235: undefined reference to `__adddf3'
../../../../../newlib/libm/math/e_pow.c:236: undefined reference to `__muldf3'
../../../../../newlib/libm/math/e_pow.c:238: undefined reference to `__adddf3'
../../../../../newlib/libm/math/e_pow.c:238: undefined reference to `__adddf3'
../../../../../newlib/libm/math/e_pow.c:241: undefined reference to `__muldf3'
../../../../../newlib/libm/math/e_pow.c:242: undefined reference to `__muldf3'
../../../../../newlib/libm/math/e_pow.c:242: undefined reference to `__subdf3'
../../../../../newlib/libm/math/e_pow.c:242: undefined reference to `__subdf3'
../../../../../newlib/libm/math/e_pow.c:242: undefined reference to `__subdf3'
../../../../../newlib/libm/math/e_pow.c:242: undefined reference to `__muldf3'
../../../../../newlib/libm/math/e_pow.c:242: undefined reference to `__adddf3'
../../../../../newlib/libm/math/e_pow.c:245: undefined reference to `__adddf3'
../../../../../newlib/libm/math/e_pow.c:247: undefined reference to `__muldf3'
../../../../../newlib/libm/math/e_pow.c:248: undefined reference to `__muldf3'
../../../../../newlib/libm/math/e_pow.c:248: undefined reference to `__subdf3'
../../../../../newlib/libm/math/e_pow.c:248: undefined reference to `__subdf3'
../../../../../newlib/libm/math/e_pow.c:248: undefined reference to `__muldf3'
../../../../../newlib/libm/math/e_pow.c:248: undefined reference to `__adddf3'
../../../../../newlib/libm/math/e_pow.c:248: undefined reference to `__adddf3'
../../../../../newlib/libm/math/e_pow.c:250: undefined reference to `__floatsidf'
../../../../../newlib/libm/math/e_pow.c:252: undefined reference to `__adddf3'
../../../../../newlib/libm/math/e_pow.c:252: undefined reference to `__adddf3'
../../../../../newlib/libm/math/e_pow.c:252: undefined reference to `__adddf3'
../../../../../newlib/libm/math/e_pow.c:253: undefined reference to `__subdf3'
../../../../../newlib/libm/math/e_pow.c:253: undefined reference to `__subdf3'
../../../../../newlib/libm/math/e_pow.c:253: undefined reference to `__subdf3'
../../../../../newlib/libm/math/e_pow.c:253: undefined reference to `__subdf3'
../../../../../newlib/libm/math/e_pow.c:263: undefined reference to `__subdf3'
../../../../../newlib/libm/math/e_pow.c:263: undefined reference to `__muldf3'
../../../../../newlib/libm/math/e_pow.c:263: undefined reference to `__muldf3'
../../../../../newlib/libm/math/e_pow.c:263: undefined reference to `__adddf3'
../../../../../newlib/libm/math/e_pow.c:264: undefined reference to `__muldf3'
../../../../../newlib/libm/math/e_pow.c:265: undefined reference to `__adddf3'
../../../../../newlib/libm/math/e_pow.c:271: undefined reference to `__adddf3'
../../../../../newlib/libm/math/e_pow.c:271: undefined reference to `__subdf3'
../../../../../newlib/libm/math/e_pow.c:271: undefined reference to `__gtdf2'
../../../../../newlib/libm/math/e_pow.c:297: undefined reference to `__muldf3'
../../../../../newlib/libm/math/e_pow.c:298: undefined reference to `__subdf3'
../../../../../newlib/libm/math/e_pow.c:298: undefined reference to `__subdf3'
../../../../../newlib/libm/math/e_pow.c:298: undefined reference to `__muldf3'
../../../../../newlib/libm/math/e_pow.c:298: undefined reference to `__muldf3'
../../../../../newlib/libm/math/e_pow.c:298: undefined reference to `__adddf3'
../../../../../newlib/libm/math/e_pow.c:299: undefined reference to `__adddf3'
../../../../../newlib/libm/math/e_pow.c:300: undefined reference to `__subdf3'
../../../../../newlib/libm/math/e_pow.c:300: undefined reference to `__subdf3'
../../../../../newlib/libm/math/e_pow.c:301: undefined reference to `__muldf3'
../../../../../newlib/libm/math/e_pow.c:302: undefined reference to `__muldf3'
../../../../../newlib/libm/math/e_pow.c:302: undefined reference to `__subdf3'
../../../../../newlib/libm/math/e_pow.c:302: undefined reference to `__muldf3'
../../../../../newlib/libm/math/e_pow.c:302: undefined reference to `__adddf3'
../../../../../newlib/libm/math/e_pow.c:302: undefined reference to `__muldf3'
../../../../../newlib/libm/math/e_pow.c:302: undefined reference to `__subdf3'
../../../../../newlib/libm/math/e_pow.c:302: undefined reference to `__muldf3'
../../../../../newlib/libm/math/e_pow.c:302: undefined reference to `__adddf3'
../../../../../newlib/libm/math/e_pow.c:302: undefined reference to `__muldf3'
../../../../../newlib/libm/math/e_pow.c:302: undefined reference to `__subdf3'
../../../../../newlib/libm/math/e_pow.c:304: undefined reference to `__muldf3'
../../../../../newlib/libm/math/e_pow.c:304: undefined reference to `__subdf3'
../../../../../newlib/libm/math/e_pow.c:304: undefined reference to `__divdf3'
../../../../../newlib/libm/math/e_pow.c:304: undefined reference to `__muldf3'
../../../../../newlib/libm/math/e_pow.c:304: undefined reference to `__adddf3'
../../../../../newlib/libm/math/e_pow.c:304: undefined reference to `__subdf3'
../../../../../newlib/libm/math/e_pow.c:304: undefined reference to `__subdf3'
../../../../../newlib/libm/math/e_pow.c:304: undefined reference to `__subdf3'
../../../../../newlib/libm/math/e_pow.c:309: undefined reference to `__muldf3'
../../../../../newlib/libm/math/e_pow.c:277: undefined reference to `__subdf3'
../../../../../newlib/libm/math/e_pow.c:277: undefined reference to `__ledf2'
../../../../../newlib/libm/math/e_pow.c:277: undefined reference to `__muldf3'
../../../../../newlib/libm/math/e_pow.c:277: undefined reference to `__muldf3'
../../../../../newlib/libm/math/e_pow.c:211: undefined reference to `__muldf3'
../../../../../newlib/libm/math/e_pow.c:170: undefined reference to `__divdf3'
../../../../../newlib/libm/math/e_pow.c:199: undefined reference to `__subdf3'
../../../../../newlib/libm/math/e_pow.c:201: undefined reference to `__muldf3'
../../../../../newlib/libm/math/e_pow.c:202: undefined reference to `__muldf3'
../../../../../newlib/libm/math/e_pow.c:202: undefined reference to `__muldf3'
../../../../../newlib/libm/math/e_pow.c:202: undefined reference to `__muldf3'
../../../../../newlib/libm/math/e_pow.c:202: undefined reference to `__adddf3'
../../../../../newlib/libm/math/e_pow.c:202: undefined reference to `__muldf3'
../../../../../newlib/libm/math/e_pow.c:202: undefined reference to `__subdf3'
../../../../../newlib/libm/math/e_pow.c:202: undefined reference to `__muldf3'
../../../../../newlib/libm/math/e_pow.c:202: undefined reference to `__muldf3'
../../../../../newlib/libm/math/e_pow.c:202: undefined reference to `__adddf3'
../../../../../newlib/libm/math/e_pow.c:204: undefined reference to `__adddf3'
../../../../../newlib/libm/math/e_pow.c:205: undefined reference to `__subdf3'
../../../../../newlib/libm/math/e_pow.c:156: undefined reference to `__divdf3'
../../../../../newlib/libm/math/e_pow.c:293: undefined reference to `__subdf3'
../../../../../newlib/libm/math/e_pow.c:293: undefined reference to `__adddf3'
/usr/local/pspdev/lib/gcc/psp/4.1.0/../../../../psp/lib/libm.a(lib_a-e_sqrt.o): In function `__ieee754_sqrt':
../../../../../newlib/libm/math/e_sqrt.c:110: undefined reference to `__muldf3'
../../../../../newlib/libm/math/e_sqrt.c:110: undefined reference to `__adddf3'
../../../../../newlib/libm/math/e_sqrt.c:117: undefined reference to `__subdf3'
../../../../../newlib/libm/math/e_sqrt.c:117: undefined reference to `__divdf3'
/usr/local/pspdev/lib/gcc/psp/4.1.0/../../../../psp/lib/libm.a(lib_a-s_rint.o): In function `rint':
../../../../../newlib/libm/common/s_rint.c:83: undefined reference to `__adddf3'
../../../../../newlib/libm/common/s_rint.c:84: undefined reference to `__subdf3'
../../../../../newlib/libm/common/s_rint.c:74: undefined reference to `__adddf3'
../../../../../newlib/libm/common/s_rint.c:59: undefined reference to `__adddf3'
../../../../../newlib/libm/common/s_rint.c:60: undefined reference to `__subdf3'
/usr/local/pspdev/lib/gcc/psp/4.1.0/../../../../psp/lib/libm.a(lib_a-s_scalbn.o): In function `scalbn':
../../../../../newlib/libm/common/s_scalbn.c:84: undefined reference to `__muldf3'
../../../../../newlib/libm/common/s_scalbn.c:87: undefined reference to `__muldf3'
../../../../../newlib/libm/common/s_scalbn.c:89: undefined reference to `__adddf3'
../../../../../newlib/libm/common/s_scalbn.c:97: undefined reference to `__muldf3'
../../../../../newlib/libm/common/s_scalbn.c:101: undefined reference to `__muldf3'
collect2: ld returned 1 exit status
make: *** [vshmain.elf] Error 1
Execution terminated
User avatar
Torch
Posts: 825
Joined: Wed May 28, 2008 2:50 am

Post by Torch »

Heres are the functions that use libpng in case you need to test.
http://www.sendspace.com/file/6x20fg
moonlight
Posts: 567
Joined: Wed Oct 26, 2005 7:46 pm

Post by moonlight »

Can you show me your makefile? It is possible that some of the undefined reference are caused by incorrect order, while there are anyways some that are not there.
User avatar
Torch
Posts: 825
Joined: Wed May 28, 2008 2:50 am

Post by Torch »

moonlight wrote:Can you show me your makefile? It is possible that some of the undefined reference are caused by incorrect order, while there are anyways some that are not there.

Code: Select all

TARGET = vshmain
OBJS = crt0.o main.o graphics.o

INCDIR = ./include
CFLAGS = -O2 -G0 -Wall -fshort-wchar -fno-pic -mno-check-zero-division 
CXXFLAGS = $(CFLAGS) -fno-exceptions -fno-rtti
ASFLAGS = $(CFLAGS) -c

LIBDIR = ./lib
LDFLAGS = -mno-crt0 -nostdlib -nodefaultlibs
LIBS = -lvlfgui -lvlfgu -lvlfutils -lvlflibc -lpspkubridge -lpng -lz -lm

PSP_FW_VERSION = 150

BUILD_PRX = 1

EXTRA_TARGETS = EBOOT.PBP
PSP_EBOOT_TITLE = PasswordVLF
#PSP_EBOOT_ICON="icon0.png"
#PSP_EBOOT_PIC1="pic1.png"
#PSP_EBOOT_SND0="snd0.at3"

PSPSDK=$(shell psp-config --pspsdk-path)
include ./build.mak
moonlight
Posts: 567
Joined: Wed Oct 26, 2005 7:46 pm

Post by moonlight »

Try to put -lpng -lz -lm before -lvlflibc . It should reduce the number of undefined references,
User avatar
Torch
Posts: 825
Joined: Wed May 28, 2008 2:50 am

Post by Torch »

moonlight wrote:Try to put -lpng -lz -lm before -lvlflibc . It should reduce the number of undefined references,

Code: Select all

TARGET = vshmain
OBJS = crt0.o main.o graphics.o

INCDIR = ./include
CFLAGS = -O2 -G0 -Wall -fshort-wchar -fno-pic -mno-check-zero-division 
CXXFLAGS = $(CFLAGS) -fno-exceptions -fno-rtti
ASFLAGS = $(CFLAGS) -c

LIBDIR = ./lib
LDFLAGS = -mno-crt0 -nostdlib -nodefaultlibs
LIBS = -lvlfgui -lvlfgu -lvlfutils -lpng -lz -lm -lvlflibc -lpspkubridge

PSP_FW_VERSION = 150

BUILD_PRX = 1

EXTRA_TARGETS = EBOOT.PBP
PSP_EBOOT_TITLE = PasswordVLF
#PSP_EBOOT_ICON="icon0.png"
#PSP_EBOOT_PIC1="pic1.png"
#PSP_EBOOT_SND0="snd0.at3"

PSPSDK=$(shell psp-config --pspsdk-path)
include ./build.mak

Code: Select all

Compiler: PSP
Executing  make...
make.exe -f "Makefile" all
psp-gcc -I./include -I. -I/usr/local/pspdev/psp/sdk/include -O2 -G0 -Wall -fshort-wchar -fno-pic -mno-check-zero-division  -D_PSP_FW_VERSION=150  -L./lib -L. -L/usr/local/pspdev/psp/sdk/lib -specs=/usr/local/pspdev/psp/sdk/lib/prxspecs -Wl,-q,-T/usr/local/pspdev/psp/sdk/lib/linkfile.prx -mno-crt0 -nostdlib -nodefaultlibs  crt0.o main.o graphics.o /usr/local/pspdev/psp/sdk/lib/prxexports.o -lvlfgui -lvlfgu -lvlfutils -lpng -lz -lm -lvlflibc -lpspkubridge -lpspdisplay -lpspge -lpspctrl -lpspsdk  -lpspnet -lpspnet_inet -lpspnet_apctl -lpspnet_resolver -lpsputility -lpspuser -lpspkernel -o vshmain.elf
/usr/local/pspdev/lib/gcc/psp/4.1.0/../../../../psp/lib/libpng.a(pngerror.o): In function `png_warning':
pngerror.c:(.text+0x194): undefined reference to `_impure_ptr'
pngerror.c:(.text+0x194): relocation truncated to fit: R_MIPS_GPREL16 against `_impure_ptr'
pngerror.c:(.text+0x1f8): undefined reference to `_impure_ptr'
pngerror.c:(.text+0x1f8): relocation truncated to fit: R_MIPS_GPREL16 against `_impure_ptr'
pngerror.c:(.text+0x1fc): undefined reference to `_impure_ptr'
pngerror.c:(.text+0x1fc): relocation truncated to fit: R_MIPS_GPREL16 against `_impure_ptr'
/usr/local/pspdev/lib/gcc/psp/4.1.0/../../../../psp/lib/libpng.a(pngerror.o): In function `png_error':
pngerror.c:(.text+0x2f4): undefined reference to `_impure_ptr'
pngerror.c:(.text+0x2f4): relocation truncated to fit: R_MIPS_GPREL16 against `_impure_ptr'
pngerror.c:(.text+0x360): undefined reference to `_impure_ptr'
pngerror.c:(.text+0x360): relocation truncated to fit: R_MIPS_GPREL16 against `_impure_ptr'
/usr/local/pspdev/lib/gcc/psp/4.1.0/../../../../psp/lib/libpng.a(pngerror.o):pngerror.c:(.text+0x364): more undefined references to `_impure_ptr' follow
/usr/local/pspdev/lib/gcc/psp/4.1.0/../../../../psp/lib/libpng.a(pngerror.o): In function `png_error':
pngerror.c:(.text+0x364): relocation truncated to fit: R_MIPS_GPREL16 against `_impure_ptr'
/usr/local/pspdev/lib/gcc/psp/4.1.0/../../../../psp/lib/libpng.a(pngread.o): In function `png_create_read_struct_2':
pngread.c:(.text+0x21b4): undefined reference to `abort'
/usr/local/pspdev/lib/gcc/psp/4.1.0/../../../../psp/lib/libpng.a(pngrtran.o): In function `png_set_gamma':
pngrtran.c:(.text+0x78): undefined reference to `__subdf3'
pngrtran.c:(.text+0x98): undefined reference to `__gtdf2'
/usr/local/pspdev/lib/gcc/psp/4.1.0/../../../../psp/lib/libpng.a(pngrtran.o): In function `png_build_gamma_table':
pngrtran.c:(.text+0x2a90): undefined reference to `__gtdf2'
pngrtran.c:(.text+0x2b1c): undefined reference to `__divdf3'
pngrtran.c:(.text+0x2b4c): undefined reference to `__floatsidf'
pngrtran.c:(.text+0x2b7c): undefined reference to `__fixunsdfsi'
pngrtran.c:(.text+0x2be8): undefined reference to `__floatsidf'
pngrtran.c:(.text+0x2c4c): undefined reference to `__fixunsdfsi'
pngrtran.c:(.text+0x2ce8): undefined reference to `__divdf3'
pngrtran.c:(.text+0x2d80): undefined reference to `__divdf3'
pngrtran.c:(.text+0x2dd0): undefined reference to `__fixunsdfsi'
pngrtran.c:(.text+0x2dfc): undefined reference to `__floatsidf'
pngrtran.c:(.text+0x2e8c): undefined reference to `__gtdf2'
pngrtran.c:(.text+0x2ecc): undefined reference to `__floatsidf'
pngrtran.c:(.text+0x2ee0): undefined reference to `__divdf3'
pngrtran.c:(.text+0x2f34): undefined reference to `__fixunsdfsi'
pngrtran.c:(.text+0x2f80): undefined reference to `__divdf3'
pngrtran.c:(.text+0x2fa8): undefined reference to `__floatsidf'
pngrtran.c:(.text+0x2fbc): undefined reference to `__divdf3'
pngrtran.c:(.text+0x3010): undefined reference to `__fixunsdfsi'
pngrtran.c:(.text+0x3054): undefined reference to `__gtdf2'
pngrtran.c:(.text+0x3070): undefined reference to `__divdf3'
pngrtran.c:(.text+0x3094): undefined reference to `__floatsidf'
pngrtran.c:(.text+0x30a8): undefined reference to `__divdf3'
pngrtran.c:(.text+0x30fc): undefined reference to `__fixunsdfsi'
pngrtran.c:(.text+0x3174): undefined reference to `__divdf3'
pngrtran.c:(.text+0x31d4): undefined reference to `__gtdf2'
pngrtran.c:(.text+0x31f0): undefined reference to `__divdf3'
pngrtran.c:(.text+0x3288): undefined reference to `__divdf3'
pngrtran.c:(.text+0x32d8): undefined reference to `__fixunsdfsi'
pngrtran.c:(.text+0x3304): undefined reference to `__floatsidf'
pngrtran.c:(.text+0x33a4): undefined reference to `__divdf3'
pngrtran.c:(.text+0x33f4): undefined reference to `__fixunsdfsi'
pngrtran.c:(.text+0x3420): undefined reference to `__floatsidf'
pngrtran.c:(.text+0x3480): undefined reference to `__divdf3'
/usr/local/pspdev/lib/gcc/psp/4.1.0/../../../../psp/lib/libpng.a(pngrtran.o): In function `png_init_read_transformations':
pngrtran.c:(.text+0x37ec): undefined reference to `__subdf3'
pngrtran.c:(.text+0x380c): undefined reference to `__ltdf2'
pngrtran.c:(.text+0x389c): undefined reference to `__floatsidf'
pngrtran.c:(.text+0x38ec): undefined reference to `__floatsidf'
pngrtran.c:(.text+0x3904): undefined reference to `__divdf3'
pngrtran.c:(.text+0x3958): undefined reference to `__fixunsdfsi'
pngrtran.c:(.text+0x3968): undefined reference to `__floatsidf'
pngrtran.c:(.text+0x3980): undefined reference to `__divdf3'
pngrtran.c:(.text+0x39c8): undefined reference to `__fixunsdfsi'
pngrtran.c:(.text+0x39f4): undefined reference to `__floatsidf'
pngrtran.c:(.text+0x3a0c): undefined reference to `__divdf3'
pngrtran.c:(.text+0x3a60): undefined reference to `__fixunsdfsi'
pngrtran.c:(.text+0x3a70): undefined reference to `__floatsidf'
pngrtran.c:(.text+0x3a88): undefined reference to `__divdf3'
pngrtran.c:(.text+0x3ad0): undefined reference to `__fixunsdfsi'
pngrtran.c:(.text+0x3ae0): undefined reference to `__floatsidf'
pngrtran.c:(.text+0x3af8): undefined reference to `__divdf3'
pngrtran.c:(.text+0x3b40): undefined reference to `__fixunsdfsi'
pngrtran.c:(.text+0x3b50): undefined reference to `__floatsidf'
pngrtran.c:(.text+0x3b68): undefined reference to `__divdf3'
pngrtran.c:(.text+0x3bb0): undefined reference to `__fixunsdfsi'
pngrtran.c:(.text+0x3bc0): undefined reference to `__floatsidf'
pngrtran.c:(.text+0x3bd8): undefined reference to `__divdf3'
pngrtran.c:(.text+0x3c20): undefined reference to `__fixunsdfsi'
pngrtran.c:(.text+0x3c30): undefined reference to `__floatsidf'
pngrtran.c:(.text+0x3c48): undefined reference to `__divdf3'
pngrtran.c:(.text+0x3c90): undefined reference to `__fixunsdfsi'
pngrtran.c:(.text+0x3e50): undefined reference to `__ltdf2'
pngrtran.c:(.text+0x3e78): undefined reference to `__floatsidf'
pngrtran.c:(.text+0x3e9c): undefined reference to `__divdf3'
pngrtran.c:(.text+0x3ef0): undefined reference to `__fixunsdfsi'
pngrtran.c:(.text+0x3f04): undefined reference to `__floatsidf'
pngrtran.c:(.text+0x3f1c): undefined reference to `__divdf3'
pngrtran.c:(.text+0x3f64): undefined reference to `__fixunsdfsi'
pngrtran.c:(.text+0x3f78): undefined reference to `__floatsidf'
pngrtran.c:(.text+0x3f90): undefined reference to `__divdf3'
pngrtran.c:(.text+0x3fd8): undefined reference to `__fixunsdfsi'
pngrtran.c:(.text+0x424c): undefined reference to `__divdf3'
pngrtran.c:(.text+0x4274): undefined reference to `__divdf3'
pngrtran.c:(.text+0x4434): undefined reference to `__divdf3'
pngrtran.c:(.text+0x445c): undefined reference to `__divdf3'
pngrtran.c:(.text+0x4478): undefined reference to `__subdf3'
pngrtran.c:(.text+0x4494): undefined reference to `__floatsidf'
pngrtran.c:(.text+0x44b8): undefined reference to `__divdf3'
pngrtran.c:(.text+0x4508): undefined reference to `__fixunsdfsi'
pngrtran.c:(.text+0x451c): undefined reference to `__floatsidf'
pngrtran.c:(.text+0x4534): undefined reference to `__divdf3'
pngrtran.c:(.text+0x4584): undefined reference to `__fixunsdfsi'
pngrtran.c:(.text+0x4598): undefined reference to `__floatsidf'
pngrtran.c:(.text+0x45b0): undefined reference to `__divdf3'
pngrtran.c:(.text+0x4600): undefined reference to `__fixunsdfsi'
/usr/local/pspdev/lib/gcc/psp/4.1.0/../../../../psp/lib/libpng.a(pngrtran.o): In function `png_set_rgb_to_gray':
pngrtran.c:(.text+0x5b68): undefined reference to `__fixdfsi'
pngrtran.c:(.text+0x5bb4): undefined reference to `__fixdfsi'
/usr/local/pspdev/lib/gcc/psp/4.1.0/../../../../psp/lib/libpng.a(pngrutil.o): In function `png_handle_sCAL':
pngrutil.c:(.text+0x21f0): undefined reference to `strtod'
pngrutil.c:(.text+0x2234): undefined reference to `strtod'
pngrutil.c:(.text+0x2264): undefined reference to `__ledf2'
pngrutil.c:(.text+0x227c): undefined reference to `__ledf2'
/usr/local/pspdev/lib/gcc/psp/4.1.0/../../../../psp/lib/libpng.a(pngrutil.o): In function `png_handle_sRGB':
pngrutil.c:(.text+0x3854): undefined reference to `_impure_ptr'
pngrutil.c:(.text+0x3854): relocation truncated to fit: R_MIPS_GPREL16 against `_impure_ptr'
/usr/local/pspdev/lib/gcc/psp/4.1.0/../../../../psp/lib/libpng.a(pngrutil.o): In function `png_handle_cHRM':
pngrutil.c:(.text+0x3dc4): undefined reference to `_impure_ptr'
pngrutil.c:(.text+0x3dc4): relocation truncated to fit: R_MIPS_GPREL16 against `_impure_ptr'
pngrutil.c:(.text+0x3e34): undefined reference to `_impure_ptr'
pngrutil.c:(.text+0x3e34): relocation truncated to fit: R_MIPS_GPREL16 against `_impure_ptr'
/usr/local/pspdev/lib/gcc/psp/4.1.0/../../../../psp/lib/libpng.a(pngrutil.o): In function `png_handle_gAMA':
pngrutil.c:(.text+0x4298): undefined reference to `_impure_ptr'
pngrutil.c:(.text+0x4298): relocation truncated to fit: R_MIPS_GPREL16 against `_impure_ptr'
/usr/local/pspdev/lib/gcc/psp/4.1.0/../../../../psp/lib/libpng.a(pngset.o): In function `png_set_gAMA_fixed':
pngset.c:(.text+0x714): undefined reference to `__floatsidf'
pngset.c:(.text+0x72c): undefined reference to `__divdf3'
/usr/local/pspdev/lib/gcc/psp/4.1.0/../../../../psp/lib/libpng.a(pngset.o): In function `png_set_gAMA':
pngset.c:(.text+0x7f4): undefined reference to `__gtdf2'
pngset.c:(.text+0x848): undefined reference to `__fixdfsi'
pngset.c:(.text+0x86c): undefined reference to `__eqdf2'
/usr/local/pspdev/lib/gcc/psp/4.1.0/../../../../psp/lib/libpng.a(pngset.o): In function `png_set_cHRM_fixed':
pngset.c:(.text+0x9b0): undefined reference to `__floatsidf'
pngset.c:(.text+0x9d4): undefined reference to `__gtdf2'
pngset.c:(.text+0x9e4): undefined reference to `__floatsidf'
pngset.c:(.text+0xa08): undefined reference to `__gtdf2'
pngset.c:(.text+0xa18): undefined reference to `__floatsidf'
pngset.c:(.text+0xa3c): undefined reference to `__gtdf2'
pngset.c:(.text+0xa4c): undefined reference to `__floatsidf'
pngset.c:(.text+0xa70): undefined reference to `__gtdf2'
pngset.c:(.text+0xa80): undefined reference to `__floatsidf'
pngset.c:(.text+0xaa4): undefined reference to `__gtdf2'
pngset.c:(.text+0xab4): undefined reference to `__floatsidf'
pngset.c:(.text+0xad8): undefined reference to `__gtdf2'
pngset.c:(.text+0xae8): undefined reference to `__floatsidf'
pngset.c:(.text+0xb0c): undefined reference to `__gtdf2'
pngset.c:(.text+0xb1c): undefined reference to `__floatsidf'
pngset.c:(.text+0xb40): undefined reference to `__gtdf2'
pngset.c:(.text+0xb88): undefined reference to `__divdf3'
pngset.c:(.text+0xbb4): undefined reference to `__divdf3'
pngset.c:(.text+0xbe0): undefined reference to `__divdf3'
pngset.c:(.text+0xc0c): undefined reference to `__divdf3'
pngset.c:(.text+0xc38): undefined reference to `__divdf3'
/usr/local/pspdev/lib/gcc/psp/4.1.0/../../../../psp/lib/libpng.a(pngset.o):pngset.c:(.text+0xc64): more undefined references to `__divdf3' follow
/usr/local/pspdev/lib/gcc/psp/4.1.0/../../../../psp/lib/libpng.a(pngset.o): In function `png_set_cHRM':
pngset.c:(.text+0xe30): undefined reference to `__ltdf2'
pngset.c:(.text+0xe48): undefined reference to `__ltdf2'
pngset.c:(.text+0xe60): undefined reference to `__ltdf2'
pngset.c:(.text+0xe78): undefined reference to `__ltdf2'
pngset.c:(.text+0xe90): undefined reference to `__ltdf2'
/usr/local/pspdev/lib/gcc/psp/4.1.0/../../../../psp/lib/libpng.a(pngset.o):pngset.c:(.text+0xea8): more undefined references to `__ltdf2' follow
/usr/local/pspdev/lib/gcc/psp/4.1.0/../../../../psp/lib/libpng.a(pngset.o): In function `png_set_cHRM':
pngset.c:(.text+0xef8): undefined reference to `__gtdf2'
pngset.c:(.text+0xf18): undefined reference to `__gtdf2'
pngset.c:(.text+0xf3c): undefined reference to `__gtdf2'
pngset.c:(.text+0xf60): undefined reference to `__gtdf2'
pngset.c:(.text+0xf84): undefined reference to `__gtdf2'
/usr/local/pspdev/lib/gcc/psp/4.1.0/../../../../psp/lib/libpng.a(pngset.o):pngset.c:(.text+0xfa8): more undefined references to `__gtdf2' follow
/usr/local/pspdev/lib/gcc/psp/4.1.0/../../../../psp/lib/libpng.a(pngset.o): In function `png_set_cHRM':
pngset.c:(.text+0x10c4): undefined reference to `__fixdfsi'
pngset.c:(.text+0x10fc): undefined reference to `__fixdfsi'
pngset.c:(.text+0x1134): undefined reference to `__fixdfsi'
pngset.c:(.text+0x116c): undefined reference to `__fixdfsi'
pngset.c:(.text+0x11a4): undefined reference to `__fixdfsi'
/usr/local/pspdev/lib/gcc/psp/4.1.0/../../../../psp/lib/libpng.a(pngset.o):pngset.c:(.text+0x11dc): more undefined references to `__fixdfsi' follow
/usr/local/pspdev/lib/gcc/psp/4.1.0/../../../../psp/lib/libm.a(lib_a-w_pow.o): In function `pow':
../../../../../newlib/libm/math/w_pow.c:108: undefined reference to `__eqdf2'
../../../../../newlib/libm/math/w_pow.c:109: undefined reference to `__eqdf2'
../../../../../newlib/libm/math/w_pow.c:88: undefined reference to `__eqdf2'
../../../../../newlib/libm/math/w_pow.c:210: undefined reference to `__errno'
../../../../../newlib/libm/math/w_pow.c:126: undefined reference to `__ltdf2'
../../../../../newlib/libm/math/w_pow.c:164: undefined reference to `__errno'
../../../../../newlib/libm/math/w_pow.c:196: undefined reference to `__eqdf2'
../../../../../newlib/libm/math/w_pow.c:207: undefined reference to `__errno'
../../../../../newlib/libm/math/w_pow.c:160: undefined reference to `__divdf3'
../../../../../newlib/libm/math/w_pow.c:179: undefined reference to `__ltdf2'
../../../../../newlib/libm/math/w_pow.c:179: undefined reference to `__nedf2'
../../../../../newlib/libm/math/w_pow.c:183: undefined reference to `__ltdf2'
../../../../../newlib/libm/math/w_pow.c:183: undefined reference to `__nedf2'
/usr/local/pspdev/lib/gcc/psp/4.1.0/../../../../psp/lib/libm.a(lib_a-e_pow.o): In function `__ieee754_pow':
../../../../../newlib/libm/math/e_pow.c:186: undefined reference to `__subdf3'
../../../../../newlib/libm/math/e_pow.c:186: undefined reference to `__divdf3'
../../../../../newlib/libm/math/e_pow.c:149: undefined reference to `__subdf3'
../../../../../newlib/libm/math/e_pow.c:222: undefined reference to `__subdf3'
../../../../../newlib/libm/math/e_pow.c:223: undefined reference to `__divdf3'
../../../../../newlib/libm/math/e_pow.c:231: undefined reference to `__subdf3'
../../../../../newlib/libm/math/e_pow.c:231: undefined reference to `__subdf3'
../../../../../newlib/libm/math/e_pow.c:231: undefined reference to `__subdf3'
../../../../../newlib/libm/math/e_pow.c:231: undefined reference to `__subdf3'
../../../../../newlib/libm/math/e_pow.c:242: undefined reference to `__subdf3'
/usr/local/pspdev/lib/gcc/psp/4.1.0/../../../../psp/lib/libm.a(lib_a-e_pow.o):../../../../../newlib/libm/math/e_pow.c:242: more undefined references to `__subdf3' follow
/usr/local/pspdev/lib/gcc/psp/4.1.0/../../../../psp/lib/libm.a(lib_a-e_pow.o): In function `__ieee754_pow':
../../../../../newlib/libm/math/e_pow.c:250: undefined reference to `__floatsidf'
../../../../../newlib/libm/math/e_pow.c:253: undefined reference to `__subdf3'
../../../../../newlib/libm/math/e_pow.c:253: undefined reference to `__subdf3'
../../../../../newlib/libm/math/e_pow.c:253: undefined reference to `__subdf3'
../../../../../newlib/libm/math/e_pow.c:253: undefined reference to `__subdf3'
../../../../../newlib/libm/math/e_pow.c:263: undefined reference to `__subdf3'
/usr/local/pspdev/lib/gcc/psp/4.1.0/../../../../psp/lib/libm.a(lib_a-e_pow.o):../../../../../newlib/libm/math/e_pow.c:271: more undefined references to `__subdf3' follow
/usr/local/pspdev/lib/gcc/psp/4.1.0/../../../../psp/lib/libm.a(lib_a-e_pow.o): In function `__ieee754_pow':
../../../../../newlib/libm/math/e_pow.c:271: undefined reference to `__gtdf2'
../../../../../newlib/libm/math/e_pow.c:298: undefined reference to `__subdf3'
../../../../../newlib/libm/math/e_pow.c:298: undefined reference to `__subdf3'
../../../../../newlib/libm/math/e_pow.c:300: undefined reference to `__subdf3'
../../../../../newlib/libm/math/e_pow.c:300: undefined reference to `__subdf3'
../../../../../newlib/libm/math/e_pow.c:302: undefined reference to `__subdf3'
/usr/local/pspdev/lib/gcc/psp/4.1.0/../../../../psp/lib/libm.a(lib_a-e_pow.o):../../../../../newlib/libm/math/e_pow.c:302: more undefined references to `__subdf3' follow
/usr/local/pspdev/lib/gcc/psp/4.1.0/../../../../psp/lib/libm.a(lib_a-e_pow.o): In function `__ieee754_pow':
../../../../../newlib/libm/math/e_pow.c:304: undefined reference to `__divdf3'
../../../../../newlib/libm/math/e_pow.c:304: undefined reference to `__subdf3'
../../../../../newlib/libm/math/e_pow.c:304: undefined reference to `__subdf3'
../../../../../newlib/libm/math/e_pow.c:304: undefined reference to `__subdf3'
../../../../../newlib/libm/math/e_pow.c:277: undefined reference to `__subdf3'
../../../../../newlib/libm/math/e_pow.c:277: undefined reference to `__ledf2'
../../../../../newlib/libm/math/e_pow.c:170: undefined reference to `__divdf3'
../../../../../newlib/libm/math/e_pow.c:199: undefined reference to `__subdf3'
../../../../../newlib/libm/math/e_pow.c:202: undefined reference to `__subdf3'
../../../../../newlib/libm/math/e_pow.c:205: undefined reference to `__subdf3'
../../../../../newlib/libm/math/e_pow.c:156: undefined reference to `__divdf3'
../../../../../newlib/libm/math/e_pow.c:293: undefined reference to `__subdf3'
/usr/local/pspdev/lib/gcc/psp/4.1.0/../../../../psp/lib/libm.a(lib_a-e_sqrt.o): In function `__ieee754_sqrt':
../../../../../newlib/libm/math/e_sqrt.c:117: undefined reference to `__subdf3'
../../../../../newlib/libm/math/e_sqrt.c:117: undefined reference to `__divdf3'
/usr/local/pspdev/lib/gcc/psp/4.1.0/../../../../psp/lib/libm.a(lib_a-s_rint.o): In function `rint':
../../../../../newlib/libm/common/s_rint.c:84: undefined reference to `__subdf3'
../../../../../newlib/libm/common/s_rint.c:60: undefined reference to `__subdf3'
collect2: ld returned 1 exit status
make: *** [vshmain.elf] Error 1
Execution terminated

User avatar
Torch
Posts: 825
Joined: Wed May 28, 2008 2:50 am

Post by Torch »

Edited my post...check now.
Post Reply