Just compiled the CVS on my linux AMD64 system. I compiled the CVS about a month ago with little problem. I downloaded and compiled the CVS today and received this message in the terminal when starting blender.
“64 bits compiles will give incorrectly saved .blend files. Do not use it. For testing purposes please remove this line from creator.c”
Actually, blender fails to start. Anyone else seen this message?
Yes, found the line in the “YESIAMSTUPID” section of the creator.c file…must be that Dutch humour… commented out exit(0) and blender is up and running.
I’m wondering, the files you save with the 64bit build are useable and just not compatible with 32 bit versions or are they totally thrashed? I guess the former.
Log:
I need to use the 64-bit Linux blender, but I don’t want to accidentally
commit creator.c, so if this file is compiled and the macro YESIAMSTUPID
is defined, the executable will run, with a mean warning printed to stdout.
Enable in cmake by setting YESIAMSTUPID to On, or with make by putting
“export NAN_YESIAMSTUPID=true” in user-def.mk.
That wasn’t the commit that added the 64bit check, that’s something Hos committed later for developers to be able to “easily” switch it to a warning instead of a full stop.
IIRC, one of the known problem is in the interaction between 32bit generated files and 64bit ones (in linking between them). There might very well be other problems too, so disable that code at your own risk.
Here’s the quote from Ton after he added it in (from bf-committers):
Hi,
I cannot emphasise enough that Blender is not 64 bits safe yet. Files
you write with 64 bits Blenders now might corrupt 32 bits Blender
versions. Using library referencing won’t work, and not to forget the
code itself isn’t 64 bits safe, meaning you most likely won’t have the
possibility to reliably use up to 8 or 16 GB memory.
To warn developers/users for this situation I’ve added a line of code
in Blender that exits when you compile a 64 bits, with this message:
“64 bits compiles will give incorrectly saved .blend files. Do not use
it. For testing purposes please remove this line from creator.c”
This exiting is a bit unfriendly yes, but it’s easy to locate this line
and remove it for your own compiles. At least people then cannot claim
they didn’t know.
-Ton-
I say if Ton says it’s a bad idea it’s a good idea to agree with him. Wait until the next version. Ton said this in reply to my questions about it:
Hi,
See it as a quality issue; people nowadays expect from Blender to work
on a much higher level than years ago. They expect (and should get)
from a 64 bits Blenders the same as for a 32 bits version.
For individuals who work with Blender and don’t spread/exchange files,
nor work in teams, nor use it for projects demanding allocations of > 4
gig, the 64 bits version is pretty much OK.
> So, the question still remains, is there something that group can
> tackle, or is this simply a “Almighty Ton Only” coding job?
Haha, not so much the ‘almighty’ thing here is in place. Just someone
with a lot of time, who knows the code and what the issues are
I’ll definitely do this work this year, or help someone to do it
instead. Let’s make it a target for next release, ok?
I’m about to switch to a 64bit machine here at work-
I’m not making compiles or anything- just using the full release of Blender.
Is he saying that as long as I don’t mix-and-match my old 32bit files with new files made on my 64bit machine, then Blender will be just fine? No appending or modifying the old files?
Basically he’s saying that any files made with the current 64-bit version of blender may or may not work with past or future versions of blender. So any files you create may be unreadable in the next version of Blender. And the worst part of it is it’s kindof hit and miss from what I hear. The files work but they may not. Basically stick to 32 bit for now. the risks of buggering up you .blend files isn’t worth any performance boost you may get. You can run 32-bit blender on 64-bit OSes (most OSes that is).
Blender used to be fine with 64-bits but some rookie programmers didn’t understand how it all worked and kindof bungled things up. Not that I would have done any better. .blend files are basically a memory dump, which makes loading/saving fast but makes things like this a nightmare.
OK- thanks. I don’t have a choice about upgrading my machine- 64bit is what they got me. Blender makes up a pretty small portion of what I do here at work (they got the machine with other apps in mind), so it won’t be too big a deal.
I’ve talked to our IT guy and he suggested running Blender in a 32bit emulator for when I do need to use it.
What OS are you running? If you’re running Linux just make sure you have th 32 bit libraries installed and the release versions of Blender will work out of the box.
Same with Windows. In fact, on 64-bit windows you have to have 32-bit IE/Firefox installed to run Adobe Flash etc. The only 64-bit OSes I know of that won’t run 32-bit programs are some obscure linux distros (Archs I think?). So chances are no special software will be required.
I’m running Windows XP Professional x64 Edition (just got the new system today).
Yeah, I was told that my new OS would run 32bit programs, but I thought you guys just told me that Blender was quirky in a 64bit environment. That in order to get it to run you had to take a line out of the code and even then it wouldn’t save properly and was incompatible with different versions.
Did I misunderstand the whole thing?
Sorry if I’m being a pain…
Oh- I’ve been reading your posts more carefully-
Basically he’s saying that any files made with the current 64-bit version of blender
So, there is a 64bit version of Blender, and that’s what is unstable? So, using the regular 32bit version on my 64bit machine will run normally (it won’t, of course, take advantage of the 64bit ‘beef’, though)?
I’m running ubuntu 64, and I got the same error. My question is, when running a 64 bit system, (how) can I compile blender as a 32 bit app? (Sorry if it’s a stupid question, I’m still quite new to linux)