Discuss the development of new homebrew software, tools and libraries.
Moderators: cheriff , TyRaNiD
sakya
Posts: 190 Joined: Fri Apr 28, 2006 5:48 pm
Contact:
Post
by sakya » Fri Aug 07, 2009 8:00 pm
Hi! :)
I receive this warning when compiling a project:
Code: Select all
Warning: setting incorrect section attributes for .rodata.sceModuleInfo
This is how module info is set:
Code: Select all
#define VERS 2
#define REVS 52
PSP_MODULE_INFO("StacklessPython", 0, VERS, REVS);
PSP_MAIN_THREAD_ATTR(PSP_THREAD_ATTR_USER|PSP_THREAD_ATTR_VFPU);
PSP_HEAP_SIZE_KB(-1024); /* Leave 1024k to OS, rest to app */
PSP_MAIN_THREAD_STACK_SIZE_KB(64);
I updated the pspsdk, but the warning is still present.
Do someone knows what this warning means and what can cause it?
Many thanks
ciaooo
sakya
ab5000
Posts: 74 Joined: Tue May 06, 2008 2:37 am
Post
by ab5000 » Fri Aug 07, 2009 8:08 pm
can you post your makefile and the .S file causing the error?
Code: Select all
%:include<stdio.h>
int _(int __,int ___,int ____,int _____)
<%for(;____<___;_____=_____*__,____++);
return _____;%>main()<%printf
("%d\n",_(2,5,0,1));%>
sakya
Posts: 190 Joined: Fri Apr 28, 2006 5:48 pm
Contact:
Post
by sakya » Fri Aug 07, 2009 8:12 pm
Hi! :)
Sure:
Code: Select all
# Default build: psp2d, pspnet, pspsnd
# If using OSLIB disable PSP2D and PSPSND
# If using OSLIB MOD disable PSP2D and PSPSND, enable OSLIB and OSLIB_MOD
#
# The exception handler is useful only while developing and testing the interpreter.
# To enable it set to 1 WITH_EXPCETION_HANDLER, build the prx in exceptionhandler\prx and copy
# exception.prx to the PSP with the Stackless EBOOT.PBP
WITH_PSP2D = 0
WITH_PSPSND = 0
WITH_PSPNET = 1
WITH_OSLIB = 1
WITH_OSLIB_MOD = 1
WITH_SQLITE = 0
WITH_PSPOGG = 0
WITH_PSPMP3 = 1
WITH_EXPCETION_HANDLER = 1
WITH_SSL = 0 # SSL not working yet
include Makefile.base
Code: Select all
TARGET = StacklessPSP
BUILD_PRX = 1
PSP_LARGE_MEMORY = 1
PSP_FW_VERSION = 371
RELEASE_NAME = StacklessPSP
RELEASE_VERSION = 2.5.2
RELEASE_DIRECTORY = ../../$(RELEASE_NAME)-$(RELEASE_VERSION)
EXTRA_TARGETS = EBOOT.PBP
PSP_EBOOT_TITLE = Stackless PyPSP 2.5.2
PSP_EBOOT_ICON = icon_slp252.png
#PSP_EBOOT_UNKPNG = pic0.png
#PSP_EBOOT_PIC1 = pic1.png
#PSP_EBOOT_SND0 = snd0.at3
MODULES_STATIC = \
Modules/config.o \
Modules/pspos.o \
../Modules/main.o \
../Modules/getbuildinfo.o \
../Modules/gcmodule.o \
../Modules/getpath.o \
../Modules/timemodule.o \
../Modules/mathmodule.o \
../Modules/_struct.o \
../Modules/binascii.o \
../Modules/_randommodule.o \
../Modules/_sre.o \
../Modules/cStringIO.o \
../Modules/_typesmodule.o \
../Modules/errnomodule.o \
../Modules/threadmodule.o \
../Modules/collectionsmodule.o \
../Modules/md5module.o \
../Modules/md5.o \
../Modules/socketmodule.o \
../Modules/selectmodule.o \
../Modules/pspsocket.o \
../Modules/zipimport.o \
../Modules/shamodule.o \
../Modules/sha256module.o \
../Modules/sha512module.o \
../Modules/_codecsmodule.o \
../Modules/datetimemodule.o \
../Modules/_bisectmodule.o \
../Modules/_csv.o \
../Modules/_heapqmodule.o \
../Modules/_weakref.o \
../Modules/arraymodule.o \
../Modules/audioop.o \
../Modules/cPickle.o \
../Modules/cmathmodule.o \
../Modules/itertoolsmodule.o \
../Modules/operator.o \
../Modules/parsermodule.o \
../Modules/symtablemodule.o \
../Modules/timingmodule.o \
../Modules/unicodedata.o \
../Modules/zlibmodule.o \
../Modules/stropmodule.o \
../Modules/_localemodule.o \
../Modules/pyexpat.o \
../Modules/expat/xmlparse.o \
../Modules/expat/xmlrole.o \
../Modules/expat/xmltok.o \
../Modules/_elementtree.o \
../Modules/_functoolsmodule.o \
../Modules/bz2module.o \
OBJECTS_PYTHON = \
../Python/ast.o \
../Python/Python-ast.o \
../Python/asdl.o \
../Python/atof.o \
../Python/pyarena.o \
../Python/traceback.o \
../Python/sysmodule.o \
../Python/structmember.o \
../Python/strdup.o \
../Python/sigcheck.o \
../Python/pythonrun.o \
../Python/pystate.o \
../Python/pyfpe.o \
../Python/mystrtoul.o \
../Python/mysnprintf.o \
../Python/modsupport.o \
../Python/marshal.o \
../Python/importdl.o \
../Python/import.o \
../Python/graminit.o \
../Python/getversion.o \
../Python/getplatform.o \
../Python/getopt.o \
../Python/getcopyright.o \
../Python/getcompiler.o \
../Python/getargs.o \
../Python/frozenmain.o \
../Python/frozen.o \
../Python/errors.o \
../Python/compile.o \
../Python/ceval.o \
../Python/bltinmodule.o \
../Python/codecs.o \
../Python/symtable.o \
../Python/future.o \
../Python/dynload_stub.o \
../Python/pystrtod.o \
../Python/thread.o \
../Python/getmtime.o
OBJECTS_OBJECTS = \
../Objects/typeobject.o \
../Objects/tupleobject.o \
../Objects/stringobject.o \
../Objects/sliceobject.o \
../Objects/rangeobject.o \
../Objects/object.o \
../Objects/obmalloc.o \
../Objects/moduleobject.o \
../Objects/methodobject.o \
../Objects/longobject.o \
../Objects/listobject.o \
../Objects/intobject.o \
../Objects/boolobject.o \
../Objects/iterobject.o \
../Objects/funcobject.o \
../Objects/frameobject.o \
../Objects/floatobject.o \
../Objects/fileobject.o \
../Objects/enumobject.o \
../Objects/dictobject.o \
../Objects/complexobject.o \
../Objects/cobject.o \
../Objects/classobject.o \
../Objects/cellobject.o \
../Objects/bufferobject.o \
../Objects/abstract.o \
../Objects/unicodectype.o \
../Objects/unicodeobject.o \
../Objects/descrobject.o \
../Objects/weakrefobject.o \
../Objects/structseq.o \
../Objects/setobject.o \
../Objects/exceptions.o \
../Objects/genobject.o \
../Objects/codeobject.o
OBJECTS_PARSER = \
../Parser/tokenizer.o \
../Parser/printgrammar.o \
../Parser/parsetok.o \
../Parser/parser.o \
../Parser/node.o \
../Parser/myreadline.o \
../Parser/metagrammar.o \
../Parser/listnode.o \
../Parser/intrcheck.o \
../Parser/grammar1.o \
../Parser/grammar.o \
../Parser/firstsets.o \
../Parser/bitset.o \
../Parser/acceler.o
OBJS_STACKLESS = ../Stackless/core/cframeobject.o \
../Stackless/core/slp_transfer.o \
../Stackless/core/stackless_util.o \
../Stackless/core/stacklesseval.o \
../Stackless/module/channelobject.o \
../Stackless/module/flextype.o \
../Stackless/module/scheduling.o \
../Stackless/module/stacklessmodule.o \
../Stackless/module/taskletobject.o \
../Stackless/pickling/prickelpit.o \
../Stackless/pickling/safe_pickle.o
OBJS_SQLITE = ../Modules/_sqlite/cache.o \
../Modules/_sqlite/connection.o \
../Modules/_sqlite/cursor.o \
../Modules/_sqlite/microprotocols.o \
../Modules/_sqlite/module.o \
../Modules/_sqlite/prepare_protocol.o \
../Modules/_sqlite/row.o \
../Modules/_sqlite/statement.o \
../Modules/_sqlite/util.o
OBJS_PSP2D = psp2d/psp2d.o \
psp2d/controller.o \
psp2d/screen.o \
psp2d/timer.o \
../../pymaging/color.o \
../../pymaging/filters.o \
../../pymaging/font.o \
../../pymaging/image.o \
../../pymaging/main.o \
../../pymaging/mask.o \
../../pymaging/transform.o
OBJS_PSPSND = \
pspsnd/pspsnd.o \
pspsnd/sound.o \
pspsnd/music.o
OBJS_PSPNET = pspnet/pspnet.o
OBJS_OSLIB = osl/osl.o osl/image.o osl/ctrl.o osl/sound.o osl/map.o osl/font.o
OBJS_OSLIB_MOD = osl/sfont.o
OBJS_EXCEPTION_HANDLER = exceptionhandler/exception.o
OBJS_PSPOGG = pspogg/oggplayer.o pspogg/pspogg.o
OBJS_PSPMP3 = pspmp3/MusicEngine.o pspmp3/pspmp3.o
OBJS_SSL = ../Modules/_ssl.o \
../Modules/_hashopenssl.o
OBJS = main.o psperror.o support.o \
$(MODULES_STATIC) $(OBJECTS_PYTHON) $(OBJECTS_OBJECTS) $(OBJECTS_PARSER) $(OBJS_STACKLESS)
CPPFLAGS=-Ipsp2d -I../../cpplibs -I../../imaging -I../../pymaging
LDFLAGS=-L../../cpplibs -L../../imaging/build-psp
LIBS=
ifeq ($(WITH_SQLITE),1)
OBJS += $(OBJS_SQLITE)
CPPFLAGS += -I../Modules/_sqlite -DMODULE_NAME=\"sqlite3\" -DWITH_SQLITE
LIBS += -lsqlite3
endif
ifeq ($(WITH_PSP2D),1)
OBJS += $(OBJS_PSP2D)
LDFAGS += -Llibpsp2d
LIBS += -lpsp2d -limaging -ljpeg -lpng -lz -lpspgu
CPPFLAGS += -DWITH_PSP2D -DIMAGING_MODULE_NAME=\"psp2d\"
endif
ifeq ($(WITH_PSPSND),1)
OBJS += $(OBJS_PSPSND)
LDFLAGS += -Llibpspsnd
LIBS += -lpspsnd -lmikmod -lmmio -lpspaudiolib -lpspaudio
CPPFLAGS += -DWITH_PSPSND
endif
ifeq ($(WITH_PSPNET),1)
OBJS += $(OBJS_PSPNET)
CPPFLAGS += -DWITH_PSPNET
LIBS += -lpspwlan
endif
ifeq ($(WITH_OSLIB),1)
OBJS += $(OBJS_OSLIB)
LIBS += -losl -lpng -lz -lpspgu -lpspgum -lpspaudio -lpsphprm -ljpeg
CPPFLAGS += -DWITH_OSLIB
endif
ifeq ($(WITH_OSLIB_MOD),1)
OBJS += $(OBJS_OSLIB_MOD)
LIBS += -lpsphttp -lpspssl -lpspwlan
CPPFLAGS += -DWITH_OSLIB_MOD
endif
ifeq ($(WITH_EXPCETION_HANDLER),1)
OBJS += $(OBJS_EXCEPTION_HANDLER)
CPPFLAGS += -DWITH_EXPCETION_HANDLER
endif
ifeq ($(WITH_PSPOGG),1)
OBJS += $(OBJS_PSPOGG)
LIBS += -lvorbisidec -lpspaudiolib -lpspaudio
CPPFLAGS += -DWITH_PSPOGG
endif
ifeq ($(WITH_PSPMP3),1)
OBJS += $(OBJS_PSPMP3)
LIBS += -lpspaudio -lpspaudiocodec
CPPFLAGS += -DWITH_PSPMP3
endif
ifeq ($(WITH_SSL),1)
OBJS += $(OBJS_SSL)
LIBS += -lssl -lcrypto
CPPFLAGS += -DWITH_SSL -I$(PSPDEV)/psp/include/openssl
endif
LIBS += -lpsppower -lpspsircs -lstdc++ -lbz2
CPPFLAGS += -DHAVE_CONFIG_H -DPSP -I../Include -I../Stackless
CPPFLAGS += -I../Modules/expat -DHAVE_MEMMOVE
LIBS += -lc -lm
CFLAGS = -Os -g -G0 -Wall -Wno-strict-aliasing -fPIC
CXXFLAGS = $(CFLAGS) -fno-rtti -fno-strict-aliasing
ASFLAGS = $(CFLAGS)
LIBDIR =
PSPSDK=$(shell psp-config --pspsdk-path)
include $(PSPSDK)/lib/build.mak
psperror.c:
@cp $(PSPDEV)/psp/sdk/include/pspkerror.h ./pspkerror.h
python generr.py
@rm pspkerror.h
release: distclean $(PSP_EBOOT)
@echo "###### Create release package ######"
@echo "1. Creating release directory $(RELEASE_DIRECTORY)/"
@mkdir -p $(RELEASE_DIRECTORY)/
@echo "2. Copying EBOOT to release dir."
@cp -pR EBOOT.PBP $(RELEASE_DIRECTORY)/
@echo "3. Copying Python libraries to release dir."
@cd ../Lib && find . -path '*/.svn*' -prune -o -path '*/plat-*' -prune -o -path './test/*' -prune -o -path '*/msilib/*' -prune -o -path '*/curses/*' -prune -o -path '*/idlelib/*' -prune -o -path '*/lib-tk/*' -prune -o -print | zip $(RELEASE_DIRECTORY)/python.zip -q@
@mkdir -p site-packages
@cp -pR elementtree/elementtree site-packages/
@find site-packages/ -path "*/.svn*" -print0 | xargs -0 rm -rf
@zip -qr $(RELEASE_DIRECTORY)/python.zip site-packages/elementtree
@rm -rf site-packages
@echo "4. Release dir created on $(RELEASE_DIRECTORY)."
@echo "###### Done ######"
distclean:
@echo "Cleaning $(RELEASE_DIRECTORY)"
@rm -rf $(RELEASE_DIRECTORY)
@echo "Done!"
@echo ""
The .S file dosen't exist (it was in the temp directory), I tried stopping the compilation with CTRL-C but probably too late. :)
Ciaooo
Sakya
ab5000
Posts: 74 Joined: Tue May 06, 2008 2:37 am
Post
by ab5000 » Fri Aug 07, 2009 9:09 pm
try adding -S to CFLAGS in Makefile.base. It'll output assembly code of your C files. Try also -save-temps so it'll save temporary files.
Code: Select all
%:include<stdio.h>
int _(int __,int ___,int ____,int _____)
<%for(;____<___;_____=_____*__,____++);
return _____;%>main()<%printf
("%d\n",_(2,5,0,1));%>
sakya
Posts: 190 Joined: Fri Apr 28, 2006 5:48 pm
Contact:
Post
by sakya » Wed Aug 26, 2009 8:55 pm
Hi! :)
Sorry to reply so late (and thanks for your help).
The error is
Code: Select all
main.s:712: Warning: setting incorrect section attributes for .rodata.sceModuleInfo
And line 712 is:
Code: Select all
.section .rodata.sceModuleInfo,"aw",@progbits
Here's the main.s
http://www.megaupload.com/?d=CRT54YNI
Ciaooo
Sakya
ab5000
Posts: 74 Joined: Tue May 06, 2008 2:37 am
Post
by ab5000 » Sat Aug 29, 2009 8:35 pm
sakya wrote: Hi! :)
Sorry to reply so late (and thanks for your help).
The error is
Code: Select all
main.s:712: Warning: setting incorrect section attributes for .rodata.sceModuleInfo
And line 712 is:
Code: Select all
.section .rodata.sceModuleInfo,"aw",@progbits
Here's the main.s
http://www.megaupload.com/?d=CRT54YNI
Ciaooo
Sakya
.rodata.sceModuleInfo shouldn't be writable.
Can you post main.c?
Code: Select all
%:include<stdio.h>
int _(int __,int ___,int ____,int _____)
<%for(;____<___;_____=_____*__,____++);
return _____;%>main()<%printf
("%d\n",_(2,5,0,1));%>
sakya
Posts: 190 Joined: Fri Apr 28, 2006 5:48 pm
Contact:
Post
by sakya » Sat Aug 29, 2009 8:37 pm
Hi! :)
Many thanks. :)
Here's the full main.c
Code: Select all
#include <pspkernel.h>
#include <pspdebug.h>
#include <pspctrl.h>
#include <pspsdk.h>
#include <pspiofilemgr.h>
#include <psppower.h>
#include <psputility_netmodules.h>
#include <psputility_sysparam.h>
#include <pspnet.h>
#include <pspnet_inet.h>
#include <pspnet_apctl.h>
#include <pspnet_resolver.h>
#include <stdlib.h>
#include <string.h>
#include <stdio.h>
#ifdef WITH_SSL
/* Include OpenSSL header files */
#include "openssl/rsa.h"
#include "openssl/crypto.h"
#include "openssl/x509.h"
#include "openssl/pem.h"
#include "openssl/ssl.h"
#include "openssl/err.h"
#include "openssl/rand.h"
#endif
#ifdef WITH_EXPCETION_HANDLER
#include "exceptionhandler/exception.h"
#endif
#ifdef WITH_PSP2D
#include <pspgu.h>
#endif
#ifdef WITH_OSLIB
#include <oslib/oslib.h>
#endif
#include "Python.h"
#define VERS 2
#define REVS 52
PSP_MODULE_INFO("StacklessPython", 0, VERS, REVS);
PSP_MAIN_THREAD_ATTR(PSP_THREAD_ATTR_USER|PSP_THREAD_ATTR_VFPU);
//PSP_HEAP_SIZE_KB(18*1024); /* Use 18Mb */
PSP_HEAP_SIZE_KB(-1024); /* Leave 1024k to OS, rest to app */
PSP_MAIN_THREAD_STACK_SIZE_KB(64);
volatile int pspInterruptOccurred = 0;
/*!
* Exit callback function
*/
int exit_callback(int arg1, int arg2, void *common) {
#ifdef WITH_OSLIB
osl_quit = 1;
#else
pspInterruptOccurred = 1;
printf("--------------------------------------------------------------------------------\n");
fclose(stdout);
fclose(stderr);
sceKernelExitGame();
#endif
return 0;
}
/*!
* Callback thread function
*/
int CallbackThread(SceSize args, void *argp) {
int cbid;
cbid = sceKernelCreateCallback("Exit Callback", exit_callback, NULL);
sceKernelRegisterExitCallback(cbid);
sceKernelSleepThreadCB();
return 0;
}
/*!
* Sets up the callback thread and
* returns its thread id function
*/
int SetupCallbacks(void) {
int thid = 0;
thid = sceKernelCreateThread("update_thread", CallbackThread, 0x11, 0xFA0, 0, 0); //als er foutenzijn dan kan het hieraanliggen
if(thid >= 0) {
sceKernelStartThread(thid, 0, 0);
}
return thid;
}
/*!
* Inits timezone based on PSP settings
*/
void initTimezone() {
int tzOffset = 0;
sceUtilityGetSystemParamInt(PSP_SYSTEMPARAM_ID_INT_TIMEZONE, &tzOffset);
int tzOffsetAbs = tzOffset < 0 ? -tzOffset : tzOffset;
int hours = tzOffsetAbs / 60;
int minutes = tzOffsetAbs - hours * 60;
int pspDaylight = 0;
sceUtilityGetSystemParamInt(PSP_SYSTEMPARAM_ID_INT_DAYLIGHTSAVINGS, &pspDaylight);
static char tz[18];
sprintf(tz, "GMT%s%02i:%02i%s", tzOffset < 0 ? "+" : "-", hours, minutes, pspDaylight ? " DST" : "");
setenv("TZ", tz, 1);
tzset();
}
// Set heap size:
/*void setHeapSize(int newSize)
{
int size = newSize / 1024;
if (size * 1024 < newSize)
size++;
sce_newlib_heap_kb_size = size;
}*/
int main(int argc, char *argv[]) {
SetupCallbacks();
stdout = fopen("pytrace.txt", "w+");
stderr = stdout;
setenv("PYTHONPATH", "python.zip", 1);
setenv("PYTHONHOME", "ms0:/", 1);
#ifdef WITH_EXPCETION_HANDLER
initExceptionHandler();
#endif
initTimezone();
time_t now;
sceKernelLibcTime(&now);
#ifdef WITH_PSPNET
if (sceUtilityLoadNetModule(PSP_NET_MODULE_COMMON) < 0)
return 1;
if(sceUtilityLoadNetModule(PSP_NET_MODULE_INET) < 0)
return 1;
if (sceNetInit(0x20000, 0x20, 0x1000, 0x20, 0x1000) != 0)
return 1;
if (sceNetInetInit() != 0)
return 1;
if (sceNetResolverInit() != 0)
return 1;
if (sceNetApctlInit(0x1400, 0x42) != 0)
return 1;
#endif
#ifdef WITH_PSP2D
sceGuInit();
#endif
#ifdef WITH_OSLIB
oslInit(1);
oslSetExitCallback(exit_callback);
#endif
#ifdef WITH_SSL
/* Start the random number generator */
time_t start_time;
start_time = time(NULL);
RAND_seed((unsigned char *)&start_time, sizeof(time_t));
#endif
char path[1024];
printf("-------------- Python-PSP started %s\n", ctime(&now));
printf("Free stack memory: %d\n", sceKernelGetThreadStackFreeSize(0));
printf("Free memory : %d\n", sceKernelTotalFreeMemSize());
printf("PyPSP running in : %s\n", getcwd(path, sizeof(path)));
printf("Search path : %s\n", Py_GetPath());
printf("\n");
//scePowerSetClockFrequency(333, 333, 166);
FILE *fp;
PySys_ResetWarnOptions();
Py_SetProgramName("python");
Py_Initialize();
PySys_SetArgv(argc, argv);
fp = fopen("script.py", "r");
if (fp) {
PyRun_SimpleFile(fp, "script.py");
fclose(fp);
} else {
printf("Error - could not open script.py\n");
}
Py_Finalize();
#ifdef WITH_PSP2D
sceGuTerm();
#endif
//pspSdkInetTerm();
#ifdef WITH_OSLIB
osl_quit = 1;
#else
pspInterruptOccurred = 1;
#endif
printf("--------------------------------------------------------------------------------\n");
fclose(stdout);
fclose(stderr);
sceKernelExitGame();
return 0;
}
Ciaooo
Sakya
ab5000
Posts: 74 Joined: Tue May 06, 2008 2:37 am
Post
by ab5000 » Sat Aug 29, 2009 8:58 pm
wich pspsdk are you using?
Code: Select all
%:include<stdio.h>
int _(int __,int ___,int ____,int _____)
<%for(;____<___;_____=_____*__,____++);
return _____;%>main()<%printf
("%d\n",_(2,5,0,1));%>
sakya
Posts: 190 Joined: Fri Apr 28, 2006 5:48 pm
Contact:
Post
by sakya » Sat Aug 29, 2009 9:00 pm
ab5000 wrote: wich pspsdk are you using?
I updated it a pair of weeks ago (don't remember the svn version)
EDIT: If this is the problem I can reinstall cygwin+pspsdk (but I'd be happy to avoid it). :)
Ciaooo
Sakya
ab5000
Posts: 74 Joined: Tue May 06, 2008 2:37 am
Post
by ab5000 » Sat Aug 29, 2009 9:07 pm
sakya wrote: ab5000 wrote: wich pspsdk are you using?
I updated it a pair of weeks ago (don't remember the svn version)
Ciaooo
Sakya
umh...
check if in pspdev/psp/sdk/include/pspmoduleinfo.h:
typedef const _sceModuleInfo SceModuleInfo;
if SceModuleInfo is const GCC shouldn't make .rodata.sceModuleInfo writable.
Code: Select all
%:include<stdio.h>
int _(int __,int ___,int ____,int _____)
<%for(;____<___;_____=_____*__,____++);
return _____;%>main()<%printf
("%d\n",_(2,5,0,1));%>
sakya
Posts: 190 Joined: Fri Apr 28, 2006 5:48 pm
Contact:
Post
by sakya » Sat Aug 29, 2009 9:48 pm
Hi! :)
ab5000 wrote: check if in pspdev/psp/sdk/include/pspmoduleinfo.h
Yes, here it is:
Code: Select all
typedef struct _scemoduleinfo {
unsigned short modattribute;
unsigned char modversion[2];
char modname[27];
char terminal;
void * gp_value;
void * ent_top;
void * ent_end;
void * stub_top;
void * stub_end;
} _sceModuleInfo;
typedef const _sceModuleInfo SceModuleInfo;
mmmm...I'll try to reinstall the full cygwin + psptoolchain...uff. :)
Thanks for your help
Ciaooo
Sakya
ab5000
Posts: 74 Joined: Tue May 06, 2008 2:37 am
Post
by ab5000 » Sun Aug 30, 2009 12:08 am
sakya wrote: Hi! :)
ab5000 wrote: check if in pspdev/psp/sdk/include/pspmoduleinfo.h
Yes, here it is:
Code: Select all
typedef struct _scemoduleinfo {
unsigned short modattribute;
unsigned char modversion[2];
char modname[27];
char terminal;
void * gp_value;
void * ent_top;
void * ent_end;
void * stub_top;
void * stub_end;
} _sceModuleInfo;
typedef const _sceModuleInfo SceModuleInfo;
mmmm...I'll try to reinstall the full cygwin + psptoolchain...uff. :)
Thanks for your help
Ciaooo
Sakya
is seem a binutils bug.
try to reinstall the psptoolchain from svn.
Code: Select all
%:include<stdio.h>
int _(int __,int ___,int ____,int _____)
<%for(;____<___;_____=_____*__,____++);
return _____;%>main()<%printf
("%d\n",_(2,5,0,1));%>
sakya
Posts: 190 Joined: Fri Apr 28, 2006 5:48 pm
Contact:
Post
by sakya » Sun Aug 30, 2009 12:37 am
Hi! :)
ab5000 wrote: is seem a binutils bug.
try to reinstall the psptoolchain from svn.
I'm reinstalling the full cygwin+psptoolchain. :)
I'll let you know if this solves the problem.
Btw it's a strange bug: this is the only source which gives me this warning...
Ciaooo
Sakya
sakya
Posts: 190 Joined: Fri Apr 28, 2006 5:48 pm
Contact:
Post
by sakya » Sun Aug 30, 2009 5:07 pm
Hi! :)
Sorry for the doule post.
I reinstalled all the toolchain on Ubuntu but when I try to compile the project I get the same exact warning...
Does someone have an idea to solve this?
Many thanks
Ciaooo
Sakya
jimparis
Posts: 1145 Joined: Fri Jun 10, 2005 4:21 am
Location: Boston
Post
by jimparis » Wed Sep 02, 2009 2:57 am
No idea, as ab5000 says the "const" tag should prevent it from being marked writable. Could you post the full source, so we can try to reproduce the problem?
sakya
Posts: 190 Joined: Fri Apr 28, 2006 5:48 pm
Contact:
Post
by sakya » Wed Sep 02, 2009 4:58 am
Hi! :)
jimparis wrote: No idea, as ab5000 says the "const" tag should prevent it from being marked writable. Could you post the full source, so we can try to reproduce the problem?
I have this problem with the Stackless Python PSP source, you can find it here:
http://code.google.com/p/pspstacklesspython/
Many thanks for your help. ;)
Ciaooo
Sakya
jimparis
Posts: 1145 Joined: Fri Jun 10, 2005 4:21 am
Location: Boston
Post
by jimparis » Thu Sep 03, 2009 4:16 am
Which branch/tag/version? I tried PSPStacklessPython2.5.2_R1 tag and it compiles fine here (with various stuff disabled in the Makefile since I'm too lazy to track down all the dependencies)