Message boards :
Client :
BURP porting
Message board moderation
Author | Message |
---|---|
Dotsch Send message Joined: 25 Jan 07 Posts: 53 Credit: 98 RAC: 0 |
I try to compile BURP and blender on MacOS Intel. Blender can include a lot of additional packages. Is there a list of needed packages for burp blender available so I have not to compile every aditional package too ? Is anonymous platform enabled and is it posible to attach with this binary to the project,? Is it OK, to distribute this binary to the community ? |
![]() Volunteer moderator Project administrator ![]() Send message Joined: 16 Jun 04 Posts: 4574 Credit: 2,100,463 RAC: 8 |
I try to compile BURP and blender on MacOS Intel. Are we talking about libraries? If so, the BURP patched Blender uses the same set of libraries as tbe official Blender version does, although it may be possible to cut down on some of the libraries for the game engine etc. Is anonymous platform enabled and is it posible to attach with this binary to the project,? Yes. If you get any issues with it please let me know as you may very well be the first one to actually test it. Is it OK, to distribute this binary to the community ? Yes indeed, as long as you clearly state that it isn\'t an official build (ie. it isn\'t compiled by neither Blender Foundation nor BURP) and you release any changes you had to make to the source to get it to work. |
Dotsch Send message Joined: 25 Jan 07 Posts: 53 Credit: 98 RAC: 0 |
I try to compile BURP and blender on MacOS Intel. I meaned also the lot of additional packages, which are listed in the install file of blender. The install file says \"Here are some links to external packages you may or may not need: \"python, libjpeg, libpng, zlib, ode, openal, sdl, smpeg, fmod, mozilla, nspr, glut, mesa (if OpenGL is not installed), quicktime\". For the translations to other languages than English : gettext, freetype2, FTGL Is it OK, to distribute this binary to the community ? Is it also OK, to make the burp application binaries public an let them crunch at burp ? - If I do the porting work, I would also make the binaries available for the other users... |
Dotsch Send message Joined: 25 Jan 07 Posts: 53 Credit: 98 RAC: 0 |
I was able compile a blender application, or better say the make runs thought withount no errors. But I did not find any blender executable... I have also compiled the modified upper_case. But I am not shure, if I understand it right. Is uppercase the wrapper for the blender executable ? - I have not found any calls in the uppercase source for the blender executable. |
Dotsch Send message Joined: 25 Jan 07 Posts: 53 Credit: 98 RAC: 0 |
I was able compile a blender application, or better say the make runs thought withount no errors. But I did not find any blender executable... Oh sorry, my fault, ran into some linking problems. But it is solved now.
I have looked into the windows package. There is the blender executable and a blenderplayer. - Do I need the blenderplayer on MacOS, too ? |
![]() Volunteer moderator Project administrator ![]() Send message Joined: 16 Jun 04 Posts: 4574 Credit: 2,100,463 RAC: 8 |
Is it also OK, to make the burp application binaries public an let them crunch at burp ? - If I do the porting work, I would also make the binaries available for the other users... Yes, as stated before - as long as your clearly say that it isn\'t an official build and you release any changes that you had to do. I have also compiled the modified upper_case. But I am not shure, if I understand it right. Is uppercase the wrapper for the blender executable ? - I have not found any calls in the uppercase source for the blender executable. Yes, the client-side code is a wrapper for Blender. Or really, it\'s a wrapper for any renderer that acts in a specific way so that it works with BURP. That\'s also why you don\'t see the name \"Blender\" anywhere inside the wrapper - it\'s universal. I have looked into the windows package. There is the blender executable and a blenderplayer. - Do I need the blenderplayer on MacOS, too ? No. |
Dotsch Send message Joined: 25 Jan 07 Posts: 53 Credit: 98 RAC: 0 |
I have also complied the boinc wrapper, butthe application is crashing at each start. The output from the stderr : Can\'t set up shared mem: -1 Communication with BOINC CC initialized Detected input arg: argv[0] is ./blender_4.42_i686-apple-darwin Total number of input args is: argc 1 Retrieving application initialization data from BOINC Parsing argv[0] path for filename (basename)... 1: Looking up executable archive: Executable file is in: blender_4.42_i686-apple-darwin.zip Looking up input file: Input file is: in Looking up output file: Output file is: out.zip SIGBUS: bus error Crashed executable name: blender_4.42_i686-apple-darwin Machine type Intel 80486 System version: Macintosh OS 10.4.8 build 8L2127 Mon Mar 12 20:44:45 2007 Stack frame backtrace: # Flags Frame Addr Caller PC Return Address Symbol === === ========== ========== ===================== 1 -P- 0xbfffd468 0x00000000 2 --- 0xbfffd4a8 0x00002ca1 Z14reportProgressd:F(0,1) + 0x3b 3 --- 0xbffffb98 0x00003589 main:F(0,13) + 0x355 4 --- 0xbffffbd8 0x000027fa start:F(0,1) + 0xe4 5 --- 0xbffffbf0 0x00002715 start + 0x29 6 FP- 0x00000000 0x00000001 Thread number 1: Stack frame backtrace: # Flags Frame Addr Caller PC Return Address Symbol === === ========== ========== ===================== 1 F-- 0x00000000 0x90037697 mach_wait_until + 0x7 2 --- 0xb0080728 0x900374de nanosleep + 0x18e 3 --- 0xb0080768 0x90037319 sleep + 0x79 4 --- 0xb00807a8 0x0000c458 5 --- 0xb0080f38 0x0000548a Z12timer_threadPv:F(0,18) + 0x66 6 --- 0xb0080fe8 0x90023d87 _pthread_body + 0x54 7 FP- 0x00000000 0x00000000 Exiting... Janus, have you an idea, whats going wrong here ? |
![]() Volunteer moderator Project administrator ![]() Send message Joined: 16 Jun 04 Posts: 4574 Credit: 2,100,463 RAC: 8 |
I have also complied the boinc wrapper, butthe application is crashing at each start. The output from the stderr : Yes, there\'s a bug in BOINC that causes applications to fail if they report progress while not running alongside the BOINC core. This has been fixed several times, but the bug keeps reappearing every few versions for some reason. To circumvent this while testing you should comment out the line in reportProgress() that says: boinc_report_app_status(getTimeSinceStart(), getTimeAtCheckpoint(), fractionDone); Remember to uncomment it when you make the final version which is to run with the BOINC core (otherwise it will seem as if there is no progress in the BOINC manager). |
Dotsch Send message Joined: 25 Jan 07 Posts: 53 Credit: 98 RAC: 0 |
I get it now to work. If I issue the blender applications in the stanalone mode, it would start blender at the GUI. Am I right, that this is OK ? But, I am not shure what the casue of the crash was. Your fix had no effect, but a recompile of the application without any changes did it. Should the application named as \"blender\" with the version 4.42 in the app_info.xml ? |
![]() Volunteer moderator Project administrator ![]() Send message Joined: 16 Jun 04 Posts: 4574 Credit: 2,100,463 RAC: 8 |
I get it now to work. If I issue the blender applications in the stanalone mode, it would start blender at the GUI. Am I right, that this is OK ? Yup, saving the default cube somewhere on your harddrive and running blender -b path/to/cube/cube.blend -f 1 0 0 1 1 is an easy way to test if everything worked as expected. This should produce a file to your current directory: out.png. Should the application named as \"blender\" with the version 4.42 in the app_info.xml ? The compiled client-side code (upper_case replacement) should be named blender_4.42_powerpc-apple-darwin if you are on Mac OS X 10.3 or later running on Motorola PowerPC or blender_4.42_i686-apple-darwin if you are on a Mac OS 10.4 or later running on Intel In app_info.xml::app_info::app_version::version_num no \".\" are allowed so the version there would be 442. The Blender application with the BURP patchset applied must be packed in a special way in a zip-file named X.zip (where X is whatever name you chose for the application)- for instance \"blender_4.42_powerpc-apple-darwin.zip\". Have a look at the .zip distributed for windows for the internal file and directory structure. |
Dotsch Send message Joined: 25 Jan 07 Posts: 53 Credit: 98 RAC: 0 |
Thank you, Janus ! It works now in the standalone mode. I hope there would be some WUs send out to crunch, so I could test the rest. |
Dotsch Send message Joined: 25 Jan 07 Posts: 53 Credit: 98 RAC: 0 |
With BOINC i get now a signal 11 from the application, but in standalone mode, blender starts successfull. Do you have any idea, what is going wrong or how can I debug this. |
Dotsch Send message Joined: 25 Jan 07 Posts: 53 Credit: 98 RAC: 0 |
With BOINC i get now a signal 11 from the application, but in standalone mode, blender starts successfull. Looks better now. Did not know where the problem was. Now, I get the application in the running state, without a crash. But, the application is shown as running in the BOINC manager, counts to 0.01 % progress, and did not use the CPU (0% CPU). - I have compiled it with the BOINC client 5.4.11 - could this be problematic ? |
![]() Volunteer moderator Project administrator ![]() Send message Joined: 16 Jun 04 Posts: 4574 Credit: 2,100,463 RAC: 8 |
At 0.01% the data is unpacked. Failure to unpack the data will cause the program to... act weirdly. Make sure that you have a Mac-compatible version of the info-zip executables that are distributed along with the BURP client. You can find these here. You will probably have to name them linux_zip and linux_unzip (and include them in the anonymous platform describtion file) since that is what the glue-code assumes they are named if you aren\'t compiling on windows. Also there\'s a stdout and stderr file in the slot-directory that you can check out for more debug information while running the application. |
Dotsch Send message Joined: 25 Jan 07 Posts: 53 Credit: 98 RAC: 0 |
You will probably have to name them linux_zip and linux_unzip (and include them in the anonymous platform describtion file) since that is what the glue-code assumes they are named if you aren\'t compiling on windows. How do I have to reference this helper applications in the app_info.xml ? - Do you have eventualy a working example ? |
![]() Volunteer moderator Project administrator ![]() Send message Joined: 16 Jun 04 Posts: 4574 Credit: 2,100,463 RAC: 8 |
You will probably have to name them linux_zip and linux_unzip (and include them in the anonymous platform describtion file) since that is what the glue-code assumes they are named if you aren\'t compiling on windows. Sorry, I never tried to make an anonymous platform myself, I only helped develop the system a couple of years ago, so this is from my memory: 1) Add an app_info::file_info node for each file (with name and executable subnodes) 2) Refference these files using app_info::app_version::file_ref nodes carrying inside them the app_info::app_version::file_ref::file_name from the name-nodes from step 1. I hope that this information can at least guide you in the right direction. |
Dotsch Send message Joined: 25 Jan 07 Posts: 53 Credit: 98 RAC: 0 |
Thanks. I have now a working app_info.xml. But the zip file with the executables would not been found now. If I make a link from the slots directory to the projects directory, it would find it and unpack it. But I get now some errors at unpacking : UnZip is: ../../projects/burp.boinc.dk/linux_unzip Decompressing executables... checkdir error: blender_4.42_i686-apple-darwin exists but is not directory unable to process blender_4.42_i686-apple-darwin/. |
Dotsch Send message Joined: 25 Jan 07 Posts: 53 Credit: 98 RAC: 0 |
Looks better now. A \"zip -j blender_4.42_i686-apple-darwin.zip ./blender ./blender.app\" made a right zip file. So with the link in the slots directory it crunchs now. I will not crunch some WUs to ensure, that the results are valid. I have used the BOINC API 5.4.11. This is a little bit problematic, because CPU throtteling was included in 5.8.x. So I will recompile it with the 5.8.x API... |
Dotsch Send message Joined: 25 Jan 07 Posts: 53 Credit: 98 RAC: 0 |
It works ! The trick was to include the zip file in the app_info.xml, that the BOINC client reference the file correctly. My app_info.xml : <app_info> <app> <name>blender</name> </app> <file_info> <name>blender_4.42_i686-apple-darwin</name> <executable/> </file_info> <file_info> <name>linux_unzip</name> <executable/> </file_info> <file_info> <name>linux_zip</name> <executable/> </file_info> <file_info> <name>blender_4.42_i686-apple-darwin.zip</name> </file_info> <app_version> <app_name>blender</app_name> <version_num>442</version_num> <file_ref> <file_name>blender_4.42_i686-apple-darwin</file_name> <main_program/> </file_ref> <file_ref> <file_name>linux_unzip</file_name> </file_ref> <file_ref> <file_name>linux_zip</file_name> </file_ref> <file_ref> <file_name>blender_4.42_i686-apple-darwin.zip</file_name> </file_ref> </app_version> </app_info> In the mean time, I have three validated results. I think it looks OK now. I will try to recompile it with the recent BOINC client. Is it OK, that if it works successfull with the new BOINC client, to put it on my webserver for a public download. - Or, janus, will you host the binaries ? |
![]() Volunteer moderator Project administrator ![]() Send message Joined: 16 Jun 04 Posts: 4574 Credit: 2,100,463 RAC: 8 |
It works ! Great to see that you got it working! Is it OK, that if it works successfull with the new BOINC client, to put it on my webserver for a public download. - Or, janus, will you host the binaries ? Feel free to host it on your webserver. I am sure that several people will be willing to help you host it if you ask the community for help. |