Suddenly Blender trunk doesn't compile successfully - Linux Mint 13

Hi all, suddenly today Blender trunk won’t compile. I keep up to date with SVN and am compiling on Linux Mint 13. I get a bunch of stuff like this using cmake -

codepage.cpp:(.text._ZN5boost6locale4conv4impl14uconv_from_utfIwE4openEPKcNS1_11method_typeE[boost::locale::conv::impl::uconv_from_utf<wchar_t>::open(char const*, boost::locale::conv::method_type)]+0x27c): undefined reference to ucnv_close_3_8'/home/joel/Documents/blender-svn/lib/linux64/boost/lib/libboost_locale.a(codepage.o): In functionboost::locale::conv::impl::uconv_to_utf<wchar_t>::open(char const*, boost::locale::conv::method_type)’:
codepage.cpp:(.text._ZN5boost6locale4conv4impl12uconv_to_utfIwE4openEPKcNS1_11method_typeE[boost::locale::conv::impl::uconv_to_utf<wchar_t>::open(char const*, boost::locale::conv::method_type)]+0xc4): undefined reference to ucnv_getMaxCharSize_3_8' codepage.cpp:(.text._ZN5boost6locale4conv4impl12uconv_to_utfIwE4openEPKcNS1_11method_typeE[boost::locale::conv::impl::uconv_to_utf<wchar_t>::open(char const*, boost::locale::conv::method_type)]+0xd3): undefined reference toucnv_close_3_8’
codepage.cpp:(.text._ZN5boost6locale4conv4impl12uconv_to_utfIwE4openEPKcNS1_11method_typeE[boost::locale::conv::impl::uconv_to_utf<wchar_t>::open(char const*, boost::locale::conv::method_type)]+0x285): undefined reference to ucnv_close_3_8' /home/joel/Documents/blender-svn/lib/linux64/boost/lib/libboost_locale.a(codepage.o): In functionboost::locale::conv::impl::uconv_from_utf<char>::open(char const*, boost::locale::conv::method_type)’:
codepage.cpp:(.text._ZN5boost6locale4conv4impl14uconv_from_utfIcE4openEPKcNS1_11method_typeE[boost::locale::conv::impl::uconv_from_utf<char>::open(char const*, boost::locale::conv::method_type)]+0xcc): undefined reference to ucnv_getMaxCharSize_3_8' codepage.cpp:(.text._ZN5boost6locale4conv4impl14uconv_from_utfIcE4openEPKcNS1_11method_typeE[boost::locale::conv::impl::uconv_from_utf<char>::open(char const*, boost::locale::conv::method_type)]+0xdc): undefined reference toucnv_close_3_8’
codepage.cpp:(.text._ZN5boost6locale4conv4impl14uconv_from_utfIcE4openEPKcNS1_11method_typeE[boost::locale::conv::impl::uconv_from_utf<char>::open(char const*, boost::locale::conv::method_type)]+0x17c): undefined reference to ucnv_getMaxCharSize_3_8' codepage.cpp:(.text._ZN5boost6locale4conv4impl14uconv_from_utfIcE4openEPKcNS1_11method_typeE[boost::locale::conv::impl::uconv_from_utf<char>::open(char const*, boost::locale::conv::method_type)]+0x18c): undefined reference toucnv_close_3_8’
codepage.cpp:(.text._ZN5boost6locale4conv4impl14uconv_from_utfIcE4openEPKcNS1_11method_typeE[boost::locale::conv::impl::uconv_from_utf<char>::open(char const*, boost::locale::conv::method_type)]+0x3f4): undefined reference to ucnv_close_3_8' codepage.cpp:(.text._ZN5boost6locale4conv4impl14uconv_from_utfIcE4openEPKcNS1_11method_typeE[boost::locale::conv::impl::uconv_from_utf<char>::open(char const*, boost::locale::conv::method_type)]+0x407): undefined reference toucnv_close_3_8’
/home/joel/Documents/blender-svn/lib/linux64/boost/lib/libboost_locale.a(codepage.o): In function boost::locale::conv::impl::uconv_between::open(char const*, char const*, boost::locale::conv::method_type)': codepage.cpp:(.text._ZN5boost6locale4conv4impl13uconv_between4openEPKcS5_NS1_11method_typeE[boost::locale::conv::impl::uconv_between::open(char const*, char const*, boost::locale::conv::method_type)]+0xdc): undefined reference toucnv_getMaxCharSize_3_8’
codepage.cpp:(.text._ZN5boost6locale4conv4impl13uconv_between4openEPKcS5_NS1_11method_typeE[boost::locale::conv::impl::uconv_between::open(char const*, char const*, boost::locale::conv::method_type)]+0xeb): undefined reference to ucnv_close_3_8' codepage.cpp:(.text._ZN5boost6locale4conv4impl13uconv_between4openEPKcS5_NS1_11method_typeE[boost::locale::conv::impl::uconv_between::open(char const*, char const*, boost::locale::conv::method_type)]+0x3a1): undefined reference toucnv_close_3_8’
collect2: ld returned 1 exit status
make[2]: *** [bin/blender] Error 1
make[1]: *** [source/creator/CMakeFiles/blender.dir/all] Error 2
make: *** [all] Error 2

i’ve had issues with boost recently, getting similar messages, when trying to compile with OSL support. but i got all that cleared up when i found out that i wasn’t using the right branch of OSL source, then it compiled fine. now, trying to compile even vanilla Blender gives me these errors. i’ve cleared out my libs and downloaded the most recent ones from trunk.

what am i doing wrong?

oh, found this - i wonder if this is the issue…

[TABLE=“width: 700”]

Revision 52130 by Campbell Barton
2 hours 22 min ago

build fix: recent commit broke building on 64bit linux


i’m attempting to compile 52134 right now…

update: fail. good grief…

Well the thing is not easy. I’ve had the same problem on Ubuntu 10.04.4 and 12.04.1

No problems:

svn -r52100 up

Best Regards

Ditto for UbuntuStudio 12.04 amd64 and 32bit. Sometimes it gets broken for a day or two, tho…

i’ve noticed that. it’s just a mild inconvience :frowning: especially when one uses his/her own build for everything, then it’s suddenly broken for a stretch at a time.

My 64bit compiled last night. 32bit today seems to be having yet another issue with boost. Par for the course when compiling bleeding edge development. What I do to ensure I always have a working SVN version to play with I run

cp -rf install release

After another successful compile, and as time goes I’ll move the release to release-bak and copy install to release and then the circle of life begins - delete the release-bak, mv release to release-bak and cp install release. Immediately after compiling in the blender directory I will type the following:

cd ..
rm -rf release-bak
mv release release-bak
cp -rf install release

Then I’ll test the new release…

That way I have a copy that I know worked in release-bak, and a copy that successfully compiled in release to test. I don’t run anything out of install because that gets over-written during compile and if compile fails that directory is buggered until I get a successful compile.

I have an icon on my task-bar that links to the blender in the release directory that I use. If it doesn’t work, then after testing and perhaps reporting a bug, I delete the release directory and copy the release-bak to release so I have a working SVN version until the next compile.

MikeV, are you using the libs from trunk, or did you compile them yourself? i’m compiling 64-bit blender and getting nothing but errors about boost. i wonder if i just need to delete everything and start from scratch. it’s helped before…

yeah, i shoulda backed up my working copy of blender. hindsight…

Have you seen this was posted on blendernation on the 12 November

Here’s the notes from today’s meeting in #blendercoders

  1. Blender 2.65 release status

UI translations: Bastien Montagne tested boost::locale, it works much better than our current gettext library. Meeting agrees on removing
gettext/iconv and have the i8n module use boost for it. Bastien will handle this further with the platform maintainers.


I’ve been using the libs from SVN. I may end up compiling my own if this keeps up tho. After Ton fixed the locale issue in boost - long enough for me to squeek by a successful compile on my 64bit maching, another issue has popped up in their version of boost that’s preventing linking on both boxes:

filesystem.cpp:(.text+0x977): undefined reference to `boost::filesystem::path::filename() const'
collect2: ld returned 1 exit status

I may delete both dirs and dl a fresh copy from SVN too. If you do that, be sure to back up your

Fresh dl of svn did no good. Did the devs make a change to the environment requirements without posting a note on their wiki? My build environment is EXACTLY as their wiki indicates.

MikeV, yes, I do exactly the same thing, keeping my last successful compile in a separate folder.
With win 32, I got 52211 to work, but with the new libs, although it compile’s without errors I get
“InterlockCompareExchange64 could not be located in the dynamic link library KERNEL 32.dll.” message when trying to start it.
Sounds like it should be an easy fix for someone who knows what there doing.

Hi all my blender build fail today… But when i want to update my 64-bit lib folder from svn it say that linux lib doesn’t exist, then i updatet boost, oiio, ffmpeg folders separetly and my svn just deleted them from my drive:( And i checked the trunk/lib via browser and there is no linux libs at all… So i think it is general problem for compilation… But i dont find any answer in net for right now. (I have Ubuntu 12.04)

There is no trunk/lib/linux folder on blender svn… I dont know why… but i think it is problem, why my build fail on Ubuntu 12.04…

Not happy with that sudden transition - is FAR from ready for people keeping an eye on SVN development. OIIO does not compile on ANY of my boxes, both Ubuntustudio 12.04 and 12.10, for instance. And it arbitrarily removes packages if lib versions change without keeping a log of removed packages for you to re-install on the updated libs. I had to copy the text on the run while running the script and paste it into gedit. It installs JackD1 when I use JackD2 as well. Why??? JackD2 works perfectly for my audio work and I prefer it over JackD1. As for the libs, had I not had a backup of the libs, I’d be out of the SVN game altogether until the devs got things working again. SCONS fails to build for the same reason that OIIO fails - problems in Boost. Oddly, CMAKE does build so I’ve been using that until they get Boost squared away. I know SVN is considered broken between releases, but I think there are levels of broken and currently it’s very broken. But I expect that means soon it’ll become less broken as we gear up to 2.65. Perhaps by then they’ll have Boost squared away along with OSL and whatnot - I know they’re working hard at it. Just wish they’d leave the precompiled libs up until they get the build issues worked out.

Hi Thanks i just findout about that script in other post… Script do some job, i have libs on my opt/lib folder, but with broken links to oiio and osl and no oiio libs on my system anymore since svn deleted all static libs folderst i want build blender with cycles without oiio cmake fails to configure.
Thanks for replay

I guess we’ll have to accept that for the time being.
Transitions are hardly ever smooth.
It’s just that it should be been officially announced so that people would not waste hours trying to build blender using the wiki instructions.

Update: problem solved, courtesy of Sergey on blendercoders! :slight_smile:
Will update my own thread.

Latest changes have improved it a lot - am working with it on my primary system now. Still not sure why they have opted for jackd1 over jackd2 except that jackd2 did remove oss support, IIRC and from reading there’s not much difference otherwise. OIIO now compiles, thankfully. Having issues getting all the ffmpeg libs installed - it’s missing a lot that the SVN version has (and that scons complains about missing) even tho I’ve set the optionals to true so I am probably missing something simple if others have it working. Scons still craters on the boost issue, however. But I’ve set Cmake to look to /opt/libs now for all but ffmpeg. Hopefully soon for ffmpeg…

MikeV, don’t know about Jack but I’m absolutely positive that you can compile ffmpeg and install it on a custom dir so that it doesn’t interfere with the rest of your setup. I’ve been doing just that for quite a long time really. What’s more, the install_deps script simply installs ffmpeg on /opt/lib/ffmpeg. To be honest, I haven’t checked if the ffmpeg version the install script compiles is any different from the one I compiled myself yesterday.
Maybe give cmake a go and see how it works out.
Note that on 12.10 cmake builds Blender without any errors whatsoever.

Hi @blendercomp this is not solved on 12.04 Xubuntu i think my system libs are to old and adding path in cmake to “script” boost libs (that is by default set to usr/lib by cmake) dont help - so many errors when compile Updating OS to have updated blender it’s not my happy dream :wink: I mentioned, that i haved set more Blender branches for build and now i have one big nightmare mess… Regards