[Bf-committers] blender libXi build tail

luxInteg lux-integ at btconnect.com
Sun Aug 22 14:33:10 CEST 2010


On Sun Aug 22 06:36:04 CEST 2010 Campbell Barton ideasman42 at gmail.com 

> libXi is for XInput (IIRC we only use this for tablet support),
> the debian package http://packages.debian.org/sid/libxi-dev
> 
> This is set in ./CMakeLists.txt:299 with:
>  SET(LLIBS "-lXi -lutil -lc -lm -lpthread -lstdc++ -lX11")

Thanks for your suggestion,

Secondly thanks to the blender community and especially to those   who have  
worked on the blender CMake build systed.  It has improved considerably wihin 
the last year.

Now to the problem I reported: I do not have X11 in /usr. I found the 
problematic -lXi  at line 235 in the CMakeLists.txt in the base direcory of 
blender. 
(Quite strange how my grepping did not find it)

I made these changes to the said  CMakeLists.txt:
-----A} added the line   FIND_PACKAGE(X11 REQUIRED)  --line 233
-----B) removed  -lX1 and  -lX11  from SET(LLIBS)   and created one with  
${X11_Xinput_LIB} NS  ${X11_X11_LIB} 
respectively like so  

cat CMakeLists.txt | sed \
-e '233 i FIND_PACKAGE(X11 REQUIRED)' \
-e '234 i SET(LLIBS ${X11_Xinput_LIB} ${X11_X11_LIB})' \
-e 's|-lXi||g' \
-e 's|-lX11||g' > CMakeLists.txtNU
mv  CMakeLists.txtNU  CMakeLists.txt 

and ran cmake again

I noticed these in the cmake output:-
-- Looking for XOpenDisplay in 
/usr/X11R7.5/lib64/libX11.so;/usr/X11R7.5/lib64/libXext.so
-- Looking for XOpenDisplay in 
/usr/X11R7.5/lib64/libX11.so;/usr/X11R7.5/lib64/libXext.so - found
------
-- Looking for IceConnectionNumber in ICE
-- Looking for IceConnectionNumber in ICE - found
-- Found X11: /usr/X11R7.5/lib64/libX11.so
found opengl




I then ran 
make VERBOSE=1 
The changes  seems to have worked.  Perhaps those working on the cmake build 
system could incorporate the above changes   for those who do not have X11 in 
/usr.

---------------

After the above fix however,  I ran into new problems as  make ended like so:-

[100%] Building C object source/creator/CMakeFiles/blender.dir/buildinfo.o
cd $SOURCES/blenderGSOC/build/source/creator && /usr/bin/gcc  -DWITH_OPENEXR -
DBLENDERPATH=\"$INSTALLDIR/blender2.5OC/share/blender/2.5\" -DWITH_BINRELOC -
DBUILD_DATE=\"2010-08-22\" -DBUILD_TIME=\"11:33:47\" -DBUILD_REV=\"31336M\" -
DBUILD_PLATFORM=\"Linux\" -DBUILD_TYPE=\"\" -O2 -m64 -fPIC -fopenmp -pipe -
fPIC -funsigned-char -fno-strict-aliasing -Wno-char-subscripts -Wall -Wno-
char-subscripts -Wpointer-arith -Wcast-align -Wdeclaration-after-statement -
Wno-unknown-pragmas -
I$SOURCES/blenderGSOC/source/creator/../../intern/guardedalloc -
I$SOURCES/blenderGSOC/source/creator/../blender/blenlib -
I$SOURCES/blenderGSOC/source/creator/../blender/blenkernel -
I$SOURCES/blenderGSOC/source/creator/../blender/editors/include -
I$SOURCES/blenderGSOC/source/creator/../blender/makesrna -
I$SOURCES/blenderGSOC/source/creator/../blender/makesrna/intern -
I$SOURCES/blenderGSOC/source/creator/../blender/nodes -
I$SOURCES/blenderGSOC/source/creator/../blender/include -
I$SOURCES/blenderGSOC/source/creator/../blender/blenloader -
I$SOURCES/blenderGSOC/source/creator/../blender/imbuf -
I$SOURCES/blenderGSOC/source/creator/../blender/renderconverter -
I$SOURCES/blenderGSOC/source/creator/../blender/render/extern/include -
I$SOURCES/blenderGSOC/source/creator/../blender/makesdna -
I$SOURCES/blenderGSOC/source/creator/../blender/gpu -
I$SOURCES/blenderGSOC/source/creator/../blender/windowmanager -
I$SOURCES/blenderGSOC/source/creator/../kernel/gen_messaging -
I$SOURCES/blenderGSOC/source/creator/../kernel/gen_system -
I$SOURCES/blenderGSOC/source/creator/../../extern/glew/include -
I$SOURCES/blenderGSOC/source/creator/../blender/python -
I$SOURCES/blenderGSOC/extern/binreloc/include   -o 
CMakeFiles/blender.dir/buildinfo.o   -c 
$SOURCES/blenderGSOC/source/creator/buildinfo.c
Linking CXX executable ../../bin/blender
cd $SOURCES/blenderGSOC/build/source/creator && /usr/local/bin/cmake -E 
cmake_link_script CMakeFiles/blender.dir/link.txt --verbose=1
/usr/bin/c++   -O2 -m64 -fPIC -fopenmp -pipe -fPIC -funsigned-char -fno-
strict-aliasing -Wno-char-subscripts -Wall -Wno-invalid-offsetof -Wno-sign-
compare   -pthread  CMakeFiles/blender.dir/creator.o 
CMakeFiles/blender.dir/buildinfo.o  -o ../../bin/blender -rdynamic -
L/opt/py-3.1/lib -L$INSTALLDIR/blender2.5OC/opencollada/lib 
../../lib/libbf_windowmanager.a ../../lib/libbf_editors.a 
../../lib/libbf_decimation.a ../../lib/libblender_BSP.a 
../../lib/libbf_ghost.a ../../lib/libbf_string.a ../../lib/libblender_render.a 
../../lib/libblender_ONL.a ../../lib/libbf_python.a 
../../lib/libbf_gen_python.a ../../lib/libbf_ikplugin.a 
../../lib/libbf_blenkernel.a ../../lib/libbf_nodes.a ../../lib/libbf_gpu.a 
../../lib/libbf_blenloader.a ../../lib/libbf_blenpluginapi.a 
../../lib/libbf_imbuf.a ../../lib/libbf_blenlib.a ../../lib/libbf_avi.a 
../../lib/libbf_cineon.a ../../lib/libbf_openexr.a ../../lib/libbf_dds.a 
../../lib/libbf_readblenfile.a ../../lib/libbf_collada.a 
../../lib/libblender_BSP.a ../../lib/libblender_bop.a ../../lib/libbf_kernel.a 
../../lib/libbf_decimation.a ../../lib/libbf_elbeem.a ../../lib/libbf_IK.a 
../../lib/libbf_memutil.a ../../lib/libbf_guardedalloc.a 
../../lib/libblender_CTR.a ../../lib/libbf_moto.a 
../../lib/libbf_windowmanager.a ../../lib/libbf_editors.a 
../../lib/libbf_blroutines.a ../../lib/libbf_converter.a 
../../lib/libbf_dummy.a ../../lib/libbf_bullet.a ../../lib/libbf_smoke.a 
../../lib/libbf_minilzo.a ../../lib/libbf_lzma.a ../../lib/libbf_common.a 
../../lib/libbf_ketsji.a ../../lib/libbf_logic.a ../../lib/libbf_rasterizer.a 
../../lib/libbf_oglrasterizer.a ../../lib/libbf_expressions.a 
../../lib/libbf_scenegraph.a ../../lib/libbf_moto.a 
../../lib/libbf_blroutines.a ../../lib/libkx_network.a 
../../lib/libbf_kernel.a ../../lib/libbf_ngnetwork.a 
../../lib/libextern_bullet.a ../../lib/libbf_loopbacknetwork.a 
../../lib/libbf_ITASC.a ../../lib/libbf_common.a ../../lib/libbf_moto.a 
../../lib/libbf_python.a ../../lib/libbf_gen_python.a 
../../lib/libextern_binreloc.a ../../lib/libextern_glew.a 
../../lib/libbf_videotex.a ../../lib/libbf_rna.a ../../lib/libbf_dna.a 
../../lib/libbf_blenfont.a ../../lib/libbf_audaspace.a 
/usr/X11R7.5/lib64/libGL.so /usr/X11R7.5/lib64/libGLU.so -ljpeg -lpng -lz -lz 
-lutil -lc -lm -lpthread -lstdc++  -ldl -lgomp -Xlinker -export-dynamic -
lpython3.1 /usr/X11R7.5/lib64/libGLU.so -lfreetype -lsamplerate 
/opt/lib64/libopenal.so /opt/lib64/libSDLmain.a /opt/lib64/libSDL.so -lpthread 
-lHalf -lIlmImf -lIex -lImath -lOpenCOLLADAStreamWriter -
lOpenCOLLADASaxFrameworkLoader -lOpenCOLLADAFramework -lOpenCOLLADABaseUtils -
lGeneratedSaxParser -lUTF -lMathMLSolver -lpcre -lftoa -lbuffer -lpcre -lexpat 
-ljpeg -lpng -lz -lutil -lc -lm -lpthread -lstdc++  -ldl -lgomp -lpython3.1 -
lfreetype -lsamplerate /opt/lib64/libopenal.so /opt/lib64/libSDLmain.a 
/opt/lib64/libSDL.so -lpthread -lHalf -lIlmImf -lIex -lImath -
lOpenCOLLADAStreamWriter -lOpenCOLLADASaxFrameworkLoader -
lOpenCOLLADAFramework -lOpenCOLLADABaseUtils -lGeneratedSaxParser -lUTF -
lMathMLSolver -lpcre -lftoa -lbuffer -lpcre -lftoa -lbuffer -lexpat -Wl,-
rpath,/opt/py-3.1/lib:
$INSTALLDIR/blender2.5OC/opencollada/lib:/usr/X11R7.5/lib64:/opt/lib64 
/usr/bin/ld: cannot find -lOpenCOLLADAStreamWriter
collect2: ld returned 1 exit status
make[2]: *** [bin/blender] Error 1
make[2]: Leaving directory `$SOURCES/blenderGSOC/build'
make[1]: *** [source/creator/CMakeFiles/blender.dir/all] Error 2
make[1]: Leaving directory `$SOURCES/blenderGSOC/build'
make: *** [all] Error 2


nb I have opencollada in  $INSTALLDIR  and the following static libraries

$INSTALLDIR/blender2.5OC/opencollada/lib/libCOLLADABaseUtils.a
$INSTALLDIR/blender2.5OC/opencollada/lib/libCOLLADAFramework.a
$INSTALLDIR/blender2.5OC/opencollada/lib/libCOLLADASaxFrameworkLoader.a
$INSTALLDIR/blender2.5OC/opencollada/lib/libConvertUTF.a
$INSTALLDIR/blender2.5OC/opencollada/lib/libGeneratedSaxParser.a
$INSTALLDIR/blender2.5OC/opencollada/lib/libMathMLSolver.a
$INSTALLDIR/blender2.5OC/opencollada/lib/libpcre.a
$INSTALLDIR/blender2.5OC/opencollada/lib/libxml2.a
$INSTALLDIR/blender2.5OC/opencollada/lib/libxml2.la
$INSTALLDIR/blender2.5OC/opencollada/lib/libxml2.lai
$INSTALLDIR/blender2.5OC/opencollada/lib/testdso.a

I do not have  libOpenCOLLADAStreamWriter.a

 ~/opencollada/COLLADAStreamWriter/BUILD  reads:
###################################
Build:
---------
Before you can start to build you have to define following environment 
variables: 
-	"BOOST_ROOT" to your installation path of boost

Download and compile the sources of COLLADAStreamWriter as a static library. 
The "COLLADAStreamWriter.lib" file will be created in the "lib" directory. 
The COLLADAMaya and COLLADAMax plug-ins will use it there.
#######################

but there is no Makefile 'or nofing' and I used the build system that came 
with opencollada.
There are  lots of headers   and source files.  
For luck I   did a recompile of opencollada  having set 
export BOOST_ROOT=/usr
beforehand but it made no difference.    

I dont relish the idea of having to write a makefile to compile
opencollada/COLLADAStreamWriter,  so suggestions from anyone on list who has 
compiled opencollada 
 to generate libOpenCOLLADAStreamWriter.a

would be most welcomed


More information about the Bf-committers mailing list