Post: SPRX Linker Error
03-18-2016, 09:12 PM #1
gopro_2027
Vault dweller
(adsbygoogle = window.adsbygoogle || []).push({}); I'm pretty sure I can fix this by adding the correct .a file to the linker list, but the problem is I do not know which one!
This code it vital to my current project so I could use an answer asap if possible Smile
    
char *ptr = new char[s];
delete ptr;

those 2 lines of code give me the linker error
    
Link:
undefined reference to `__cxa_call_unexpected'
undefined reference to `__cxa_allocate_exception'
undefined reference to `__cxa_throw'
undefined reference to `__cxa_call_unexpected'
undefined reference to `__cxa_call_unexpected'
undefined reference to `__exit_user_prx_modules'
undefined reference to `__fini'
undefined reference to `_exit'
undefined reference to `__cxa_call_unexpected'
undefined reference to `__cxa_call_unexpected'
undefined reference to `_ZTVN10__cxxabiv120__si_class_type_infoE' == "vtable for __cxxabiv1::__si_class_type_info"
undefined reference to `_ZTVN10__cxxabiv117__class_type_infoE' == "vtable for __cxxabiv1::__class_type_info"
ps3ppuld 400.1.4646.0 (rel,ps3,400.1,common,src @124681 ) C:\usr\local\cell\host-win32\sn\bin\ps3ppuld32.exe
Command line : error : L0303: error generating PRX (prx-fixup failed)
Command line : error : L0064: Linking aborted

Build FAILED.

Time Elapsed 00:00:07.64
========== Build: 0 succeeded, 1 failed, 0 up-to-date, 0 skipped ==========

So if someone knows the correct .a file to add that would be great!

BTW...
FIRST
(adsbygoogle = window.adsbygoogle || []).push({});
03-18-2016, 10:50 PM #2
gopro_2027
Vault dweller
fkn ps3 don't wanna work so I made my own goddamn malloc function. Ghetto af but works. You can change the size of the array around if you like.
You must login or register to view this content.
03-19-2016, 06:47 PM #3
SC58
Former Staff
there is alot stuff u can't use, best reading up the sdk :p
03-19-2016, 08:29 PM #4
gopro_2027
Vault dweller
Originally posted by SC58 View Post
there is alot stuff u can't use, best reading up the sdk :p


Yea I hear ya. I purposely uploaded the whole sdk to my website so I can read about it while I'm at school. You must login or register to view this content.
if you go to the html part and scroll to the bottom and go to ppu it shows all of the ppu functions but it doesn't show the files you need to include on all of them which sucks.
Oh btw my thing has a bug in it. Imma have to go fix it but I am pissed atm lmao been working to hard on this little thing.
03-20-2016, 02:02 AM #5
Hash847
Purple God
Originally posted by pro View Post
I'm pretty sure I can fix this by adding the correct .a file to the linker list, but the problem is I do not know which one!
This code it vital to my current project so I could use an answer asap if possible Smile
    
char *ptr = new char[s];
delete ptr;

those 2 lines of code give me the linker error
    
Link:
undefined reference to `__cxa_call_unexpected'
undefined reference to `__cxa_allocate_exception'
undefined reference to `__cxa_throw'
undefined reference to `__cxa_call_unexpected'
undefined reference to `__cxa_call_unexpected'
undefined reference to `__exit_user_prx_modules'
undefined reference to `__fini'
undefined reference to `_exit'
undefined reference to `__cxa_call_unexpected'
undefined reference to `__cxa_call_unexpected'
undefined reference to `_ZTVN10__cxxabiv120__si_class_type_infoE' == "vtable for __cxxabiv1::__si_class_type_info"
undefined reference to `_ZTVN10__cxxabiv117__class_type_infoE' == "vtable for __cxxabiv1::__class_type_info"
ps3ppuld 400.1.4646.0 (rel,ps3,400.1,common,src @124681 ) C:\usr\local\cell\host-win32\sn\bin\ps3ppuld32.exe
Command line : error : L0303: error generating PRX (prx-fixup failed)
Command line : error : L0064: Linking aborted

Build FAILED.

Time Elapsed 00:00:07.64
========== Build: 0 succeeded, 1 failed, 0 up-to-date, 0 skipped ==========

So if someone knows the correct .a file to add that would be great!

BTW...
FIRST


    
void* malloc(uint32_t a_uiSize) {
sys_addr_t l_uiAddr;
a_uiSize = ((a_uiSize + 65536) / 65536) * 65536;

sys_memory_allocate(a_uiSize, SYS_MEMORY_PAGE_SIZE_64K, &l_uiAddr);

return (void*)l_uiAddr;
}
void free(void* a_Addr) {
sys_memory_free((sys_addr_t)a_Addr);
}

void * operator new (std::size_t sz){
void *p;

if (sz == 0)
sz = 1;

p = malloc(sz);
return p;
}


void operator delete (void *ptr) {
free(ptr);
}


enjoy

edit: normally adding libc.a would fix this issue, but because of the SDK being broken as shit it does not work.

Copyright © 2026, NextGenUpdate.
All Rights Reserved.

Gray NextGenUpdate Logo