[Kde-bindings] building smoke

Arno Rehn arno at arnorehn.de
Sat Sep 26 13:31:33 UTC 2009


On Wednesday 23 September 2009 17:02:37 Arno Rehn wrote:
> On Wednesday 23 September 2009 09:33:46 Petr Vanek wrote:
> > On Sep 22, 2009, at 10:50 PM, Helio Chissini de Castro wrote:
> > > Em Segunda-feira 21 de setembro 2009, às 14:05:09, você escreveu:
> > >> On 9/21/09 1:28 AM, "Stefano Crocco" <stefano.crocco at alice.it> wrote:
> > >>> On Sunday 20 September 2009, Arno Rehn wrote:
> > >>>> |Yes, the name generator_smoke.so is used on purpose, since it's a
> > >>>> | plugin and  not a real shared library. QLibrary (with which the
> > >>>> | generator is loaded) tries all possibilities, including
> > >>>> | generator_smoke.so. I don't have a clue why it doesn't work for
> > >>>>
> > >>>> you,
> > >>>>
> > >>>> | but on my machine it does. What revision and what distro do you
> > >>>>
> > >>>> use?
> > >>>
> > >>> I tried again this morning with revision 1026229 with the same
> > >>> results.
> > >>> I'm using Gentoo Linux with the live kde ebuilds.
> > >>>
> > >>> Stefano
> > >>
> > >> Dirk's dashboard for the icecream cluster also is listing this
> > >> error as
> > >> well, so it's not isolated to Gentoo....
> > >
> > > I know the issue. I start to  have it after clean the system.
> > > Arno, you already have a previous installed bindings, with library
> > > in path,
> > > that's why you don't have the issue.
> 
> generator_smoke.so isn't being installed yet. I don't see how the other
> bindings being installed affect the loading of that plugin.
> 
> > > I tried to solve in the Unix side, using this on main CMakeLists.txt:
> > >
> > > if( UNIX )
> > >  # Generator library is used during compilation. If some environment
> > > not
> > >  # have previous kdebindings installed, will fail, then we need add
> > > local
> > > path
> > >  set( ENV{LD_LIBRARY_PATH} ${CMAKE_CURRENT_BINARY_DIR}/generator/bin )
> > > endif( UNIX )
> >
> > Bug is confirmed here too (suse, fedora).
> >
> > yep, it's dangerous for environments (like mine) with hiighly
> > customized LD_LIBRARY_PATH. Or use something like this:
> > set( ENV{LD_LIBRARY_PATH} ${CMAKE_CURRENT_BINARY_DIR}/generator/bin:ENV
> > (LD_LIBRARY_PATH} )
> > to keep previous settings. (Now I feel like cpt. Obvious ;))
> >
> > But it's working at all. I'm setting it from shell with export.
> >
> > And one note - dynamically loaded plugins looks cool. But I know it's
> > a pain to port it to Windows. End of note.
> 
> I'm currently porting smoke and Qyoto to windows. I started from a clean
>  Vista install and it all worked like a charm (well, not everything, but
>  the dynamic loading of plugins works just fine).
> Another possibility would be to set RPATH for the generator executable.
>  I'll try installing fedora in a VM and look what's going on.
I just tested current kdebindings trunk in a fedora 11 VM and it worked all 
ok. Build log attached. I really don't know what the error is. I'll add a line 
that explicitly looks for the generator plugin in the same directory as the 
generator executable - maybe that fixes the errors you get.

-- 
Arno Rehn
arno at arnorehn.de
-------------- next part --------------
[pumphaus at fedora-11-vbox kdebindings-build]$ make                                                                         
[  1%] Building CXX object generator/parser/CMakeFiles/cppparser.dir/ast.o                                                
[  2%] Building CXX object generator/parser/CMakeFiles/cppparser.dir/default_visitor.o                                    
[  4%] Building CXX object generator/parser/CMakeFiles/cppparser.dir/memorypool.o                                         
[  5%] Building CXX object generator/parser/CMakeFiles/cppparser.dir/visitor.o                                            
[  6%] Building CXX object generator/parser/CMakeFiles/cppparser.dir/control.o                                            
[  8%] Building CXX object generator/parser/CMakeFiles/cppparser.dir/lexer.o                                              
[  9%] Building CXX object generator/parser/CMakeFiles/cppparser.dir/parser.o                                             
In file included from /usr/lib/gcc/i586-redhat-linux/4.4.1/../../../../include/c++/4.4.1/ext/hash_map:59,                 
                 from /home/pumphaus/dev/kdebindings/generator/parser/parser.h:36,                                        
                 from /home/pumphaus/dev/kdebindings/generator/parser/parser.cpp:23:                                      
/usr/lib/gcc/i586-redhat-linux/4.4.1/../../../../include/c++/4.4.1/backward/backward_warning.h:28:2: warning: #warning This file includes at least one deprecated or antiquated header which may be removed without further notice at a future date. Please use a non-deprecated interface with equivalent functionality instead. For a listing of replacement headers and interfaces, consult the file backward_warning.h. To disable this warning use -Wno-deprecated.                                
/home/pumphaus/dev/kdebindings/generator/parser/parser.cpp:1034:2: warning: #warning "implement me"                       
/home/pumphaus/dev/kdebindings/generator/parser/parser.cpp:2601:2: warning: #warning "implemente me (AST)"                
/home/pumphaus/dev/kdebindings/generator/parser/parser.cpp:3487:2: warning: #warning "mark the ast as constant"           
[ 10%] Building CXX object generator/parser/CMakeFiles/cppparser.dir/listnode.o                                           
[ 12%] Building CXX object generator/parser/CMakeFiles/cppparser.dir/tokens.o                                             
[ 13%] Building CXX object generator/parser/CMakeFiles/cppparser.dir/dumptree.o                                           
[ 15%] Building CXX object generator/parser/CMakeFiles/cppparser.dir/parsesession.o                                       
[ 16%] Building CXX object generator/parser/CMakeFiles/cppparser.dir/commentparser.o                                      
[ 17%] Building CXX object generator/parser/CMakeFiles/cppparser.dir/commentformatter.o                                   
[ 19%] Building CXX object generator/parser/CMakeFiles/cppparser.dir/codegenerator.o                                      
[ 20%] Building CXX object generator/parser/CMakeFiles/cppparser.dir/indexedstring.o                                      
[ 21%] Building CXX object generator/parser/CMakeFiles/cppparser.dir/stringhelpers.o                                      
[ 23%] Building CXX object generator/parser/CMakeFiles/cppparser.dir/rpp/pp-stream.o                                      
[ 24%] Building CXX object generator/parser/CMakeFiles/cppparser.dir/rpp/pp-macro-expander.o                              
[ 26%] Building CXX object generator/parser/CMakeFiles/cppparser.dir/rpp/pp-scanner.o                                     
[ 27%] Building CXX object generator/parser/CMakeFiles/cppparser.dir/rpp/pp-macro.o                                       
[ 28%] Building CXX object generator/parser/CMakeFiles/cppparser.dir/rpp/pp-engine.o                                      
[ 30%] Building CXX object generator/parser/CMakeFiles/cppparser.dir/rpp/pp-internal.o                                    
[ 31%] Building CXX object generator/parser/CMakeFiles/cppparser.dir/rpp/pp-environment.o                                 
[ 32%] Building CXX object generator/parser/CMakeFiles/cppparser.dir/rpp/pp-location.o                                    
[ 34%] Building CXX object generator/parser/CMakeFiles/cppparser.dir/rpp/preprocessor.o                                   
[ 35%] Building CXX object generator/parser/CMakeFiles/cppparser.dir/rpp/chartools.o                                      
Linking CXX shared library ../bin/libcppparser.so                                                                         
[ 35%] Built target cppparser                                                                                             
[ 36%] Building CXX object generator/CMakeFiles/generator.dir/main.o                                                      
In file included from /usr/lib/gcc/i586-redhat-linux/4.4.1/../../../../include/c++/4.4.1/ext/hash_map:59,                 
                 from /home/pumphaus/dev/kdebindings/generator/parser/parser.h:36,                                        
                 from /home/pumphaus/dev/kdebindings/generator/main.cpp:32:                                               
/usr/lib/gcc/i586-redhat-linux/4.4.1/../../../../include/c++/4.4.1/backward/backward_warning.h:28:2: warning: #warning This file includes at least one deprecated or antiquated header which may be removed without further notice at a future date. Please use a non-deprecated interface with equivalent functionality instead. For a listing of replacement headers and interfaces, consult the file backward_warning.h. To disable this warning use -Wno-deprecated.                                
[ 38%] Building CXX object generator/CMakeFiles/generator.dir/generatorenvironment.o                                      
[ 39%] Building CXX object generator/CMakeFiles/generator.dir/generatorvisitor.o                                          
[ 41%] Building CXX object generator/CMakeFiles/generator.dir/generatorpreprocessor.o                                     
[ 42%] Building CXX object generator/CMakeFiles/generator.dir/options.o                                                   
[ 43%] Building CXX object generator/CMakeFiles/generator.dir/type_compiler.o                                             
[ 45%] Building CXX object generator/CMakeFiles/generator.dir/name_compiler.o                                             
/home/pumphaus/dev/kdebindings/generator/name_compiler.cpp:139:2: warning: #warning "NameCompiler::visitUnqualifiedName() -- implement me"                                                                                                          
[ 46%] Building CXX object generator/CMakeFiles/generator.dir/type.o                                                      
Linking CXX executable bin/generator                                                                                      
[ 46%] Built target generator                                                                                             
[ 47%] Building CXX object generator/generators/smoke/CMakeFiles/generator_smoke.dir/generator_smoke.o                    
[ 49%] Building CXX object generator/generators/smoke/CMakeFiles/generator_smoke.dir/writeClasses.o                       
[ 50%] Building CXX object generator/generators/smoke/CMakeFiles/generator_smoke.dir/writeSmokeDataFile.o                 
[ 52%] Building CXX object generator/generators/smoke/CMakeFiles/generator_smoke.dir/helpers.o                            
Linking CXX shared library ../../bin/generator_smoke.so                                                                   
[ 52%] Built target generator_smoke                                                                                       
[ 53%] Building CXX object generator/generators/dump/CMakeFiles/generator_dump.dir/generator_dump.o
Linking CXX shared library ../../bin/generator_dump.so
[ 53%] Built target generator_dump
[ 54%] Generating smokedata.cpp, x_1.cpp, x_2.cpp, x_3.cpp, x_4.cpp, x_5.cpp, x_6.cpp, x_7.cpp, x_8.cpp, x_9.cpp, x_10.cpp, x_11.cpp, x_12.cpp, x_13.cpp, x_14.cpp, x_15.cpp, x_16.cpp, x_17.cpp, x_18.cpp, x_19.cpp, x_20.cpp
using generator "generator_smoke.so"
parsing "/home/pumphaus/dev/kdebindings/smoke/qt/qt_includes.h"
Generating SMOKE sources...
preparing SMOKE data [qt]
writing out smokedata.cpp [qt]
writing out x_*.cpp [qt]
Done.

[snip - further output isn't relevant]


More information about the Kde-bindings mailing list