← Back to team overview

kicad-developers team mailing list archive

Re: Building current master fails

 

I do the same thing.  Trying to switch between the master and 5.1
branches to work is not very productive.

On 11/20/19 11:13 AM, Ian McInerney wrote:
> I keep 5.1 and master in separate worktrees because I find that the
> compile time if you switch branches is excruciatingly painful (we have
> some differences in the base header files now that basically mean an
> almost full recompile). That is probably why I never saw this issue.
> 
> -Ian
> 
> On Wed, Nov 20, 2019 at 3:16 PM Jeff Young <jeff@xxxxxxxxx
> <mailto:jeff@xxxxxxxxx>> wrote:
> 
>     I switch between 5.1 and master and back in the same tree.  You have
>     to run the clean each time you go from 5.1 to master.
> 
>>     On 20 Nov 2019, at 14:34, Ian McInerney <Ian.S.McInerney@xxxxxxxx
>>     <mailto:Ian.S.McInerney@xxxxxxxx>> wrote:
>>
>>     Thats correct, all those lexer files should now be in the build
>>     folder. I think that only the board file has had new keywords
>>     added, so it would be the only one that is different.
>>
>>     Ok, so there is probably another cause of the files appearing. Did
>>     you switch branches between master and 5.1 and back? 5.1 looks
>>     like it uses the old method of generating the lexer files, so it
>>     puts them in the source tree. Master was switched over in July to
>>     use the new way that puts them in the build folder.
>>
>>     -Ian
>>
>>     On Wed, Nov 20, 2019 at 11:51 AM Jonatan Liljedahl
>>     <lijon@xxxxxxxxxxxx <mailto:lijon@xxxxxxxxxxxx>> wrote:
>>
>>         Hi,
>>
>>         I see. So then I assume all these should also not exist?
>>
>>         $ ls include/*_lexer.h
>>         include/lib_table_lexer.h          include/netlist_lexer.h
>>         include/page_layout_reader_lexer.h include/pcb_lexer.h
>>         include/pcb_plot_params_lexer.h
>>
>>         Of these files, only pcb_lexer.h differed between include/ and
>>         build/common/.
>>
>>         This is a fresh clone, I'm not sure how these files ended up in
>>         include/. I see that the files are not in the git file tree of
>>         either
>>         5.1 or master branch. Maybe it happened when I built using
>>         kicad-mac-builder pointing it to my kicad source tree?
>>
>>         On Wed, Nov 20, 2019 at 12:09 PM Ian McInerney
>>         <Ian.S.McInerney@xxxxxxxx <mailto:Ian.S.McInerney@xxxxxxxx>>
>>         wrote:
>>         >
>>         > Jonatan,
>>         >
>>         > The pcb_lexer.h in include/ shouldn't exist anymore. There
>>         was a switchover a few months ago in how that file was
>>         generated, and that change moved it into the build directory.
>>         As a consequence of that switchover, you need to clean out the
>>         stray files that existed from old build.
>>         >
>>         > Try running this command in the repository (note, this
>>         command will remove any files you are ignoring in the git, so
>>         make sure you have everything you want to save copied before
>>         running):
>>         > 'git clean -fx'
>>         >
>>         > Out of curiosity, is this an older build system that you are
>>         just updating, or is this a fresh clone since July?
>>         >
>>         > -Ian
>>         >
>>         > On Wed, Nov 20, 2019 at 10:46 AM Nick Østergaard
>>         <oe.nick@xxxxxxxxx <mailto:oe.nick@xxxxxxxxx>> wrote:
>>         >>
>>         >> It seems to build ok for linux on jenkins.
>>         >>
>>         >> Maybe double chevk you are not in a merge state or
>>         something.  Also, please state the has of the version you are
>>         trying to build.
>>         >>
>>         >> ons. 20. nov. 2019 11.34 skrev Jonatan Liljedahl
>>         <lijon@xxxxxxxxxxxx <mailto:lijon@xxxxxxxxxxxx>>:
>>         >>>
>>         >>> Hi, I'm trying to build the current master, cmake
>>         configured like this:
>>         >>>
>>         >>> cmake
>>         -DNGSPICE_INCLUDE_DIR=/Users/lijon/Coding/kicad-mac-builder/build/ngspice-dest/include/
>>         >>>
>>         -DNGSPICE_LIBRARY=/Users/lijon/Coding/kicad-mac-builder/build/ngspice-dest/lib/libngspice.dylib
>>         >>> -DKICAD_USE_OCE=OFF -DKICAD_SCRIPTING=OFF
>>         >>>
>>         -DwxWidgets_CONFIG_EXECUTABLE=/Users/lijon/Coding/kicad-mac-builder/build/wxwidgets-dest/bin/wx-config
>>         >>> -DKICAD_BUILD_QA_TESTS=OFF
>>         -DCMAKE_OSX_DEPLOYMENT_TARGET=10.14 ../..
>>         >>>
>>         >>> but it fails here:
>>         >>>
>>         >>> [ 42%] Building CXX object
>>         >>> common/CMakeFiles/pcbcommon.dir/__/pcbnew/pcb_parser.cpp.o
>>         >>> /Users/lijon/Coding/kicad/pcbnew/pcb_parser.cpp:996:18:
>>         error: use of
>>         >>> undeclared identifier 'T_copper_finish'
>>         >>>             case T_copper_finish:
>>         >>>                  ^
>>         >>> /Users/lijon/Coding/kicad/pcbnew/pcb_parser.cpp:1002:18:
>>         error: use of
>>         >>> undeclared identifier 'T_edge_plating'
>>         >>>             case T_edge_plating:
>>         >>>                  ^
>>         >>> /Users/lijon/Coding/kicad/pcbnew/pcb_parser.cpp:1008:18:
>>         error: use of
>>         >>> undeclared identifier 'T_dielectric_constraints'
>>         >>>             case T_dielectric_constraints:
>>         >>>                  ^
>>         >>> /Users/lijon/Coding/kicad/pcbnew/pcb_parser.cpp:1014:18:
>>         error: use of
>>         >>> undeclared identifier 'T_edge_connector'; did you mean
>>         >>> 'T_zone_connect'?
>>         >>>             case T_edge_connector:
>>         >>>                  ^~~~~~~~~~~~~~~~
>>         >>>                  T_zone_connect
>>         >>> /Users/lijon/Coding/kicad/include/pcb_lexer.h:232:9: note:
>>         >>> 'T_zone_connect' declared here
>>         >>>         T_zone_connect,
>>         >>>         ^
>>         >>> /Users/lijon/Coding/kicad/pcbnew/pcb_parser.cpp:1020:35:
>>         error: use of
>>         >>> undeclared identifier 'T_bevelled'
>>         >>>                 else if( token == T_bevelled )
>>         >>>                                   ^
>>         >>> /Users/lijon/Coding/kicad/pcbnew/pcb_parser.cpp:1026:18:
>>         error: use of
>>         >>> undeclared identifier 'T_castellated_pads'
>>         >>>             case T_castellated_pads:
>>         >>>                  ^
>>         >>> /Users/lijon/Coding/kicad/pcbnew/pcb_parser.cpp:1088:30:
>>         error: use of
>>         >>> undeclared identifier 'T_addsublayer'
>>         >>>                 if( token == T_addsublayer )
>>         >>>                              ^
>>         >>> /Users/lijon/Coding/kicad/pcbnew/pcb_parser.cpp:1100:26:
>>         error: use of
>>         >>> undeclared identifier 'T_type'; did you mean 'T_top'?
>>         >>>                     case T_type:
>>         >>>                          ^~~~~~
>>         >>>                          T_top
>>         >>> /Users/lijon/Coding/kicad/include/pcb_lexer.h:196:9: note:
>>         'T_top' declared here
>>         >>>         T_top,
>>         >>>         ^
>>         >>> /Users/lijon/Coding/kicad/pcbnew/pcb_parser.cpp:1123:26:
>>         error: use of
>>         >>> undeclared identifier 'T_material'; did you mean 'T_general'?
>>         >>>                     case T_material:
>>         >>>                          ^~~~~~~~~~
>>         >>>                          T_general
>>         >>> /Users/lijon/Coding/kicad/include/pcb_lexer.h:100:9: note:
>>         'T_general'
>>         >>> declared here
>>         >>>         T_general,
>>         >>>         ^
>>         >>> /Users/lijon/Coding/kicad/pcbnew/pcb_parser.cpp:1129:26:
>>         error: use of
>>         >>> undeclared identifier 'T_epsilon_r'
>>         >>>                     case T_epsilon_r:
>>         >>>                          ^
>>         >>> /Users/lijon/Coding/kicad/pcbnew/pcb_parser.cpp:1135:26:
>>         error: use of
>>         >>> undeclared identifier 'T_loss_tangent'
>>         >>>                     case T_loss_tangent:
>>         >>>                          ^
>>         >>> /Users/lijon/Coding/kicad/pcbnew/pcb_parser.cpp:1141:26:
>>         error: use of
>>         >>> undeclared identifier 'T_color'; did you mean 'T_bold'?
>>         >>>                     case T_color:
>>         >>>                          ^~~~~~~
>>         >>>                          T_bold
>>         >>> /Users/lijon/Coding/kicad/include/pcb_lexer.h:60:9: note:
>>         'T_bold' declared here
>>         >>>         T_bold,
>>         >>>         ^
>>         >>> /Users/lijon/Coding/kicad/pcbnew/pcb_parser.cpp:1431:14:
>>         error: use of
>>         >>> undeclared identifier 'T_stackup'; did you mean 'T_status'?
>>         >>>         case T_stackup:
>>         >>>              ^~~~~~~~~
>>         >>>              T_status
>>         >>> /Users/lijon/Coding/kicad/include/pcb_lexer.h:183:9: note:
>>         'T_status'
>>         >>> declared here
>>         >>>         T_status,
>>         >>>         ^
>>         >>> /Users/lijon/Coding/kicad/pcbnew/pcb_parser.cpp:1524:14:
>>         error: use of
>>         >>> undeclared identifier 'T_user_diff_pair'
>>         >>>         case T_user_diff_pair:
>>         >>>              ^
>>         >>> /Users/lijon/Coding/kicad/pcbnew/pcb_parser.cpp:1571:14:
>>         error: use of
>>         >>> undeclared identifier 'T_defaults'; did you mean 'default'?
>>         >>>         case T_defaults:
>>         >>>              ^~~~~~~~~~
>>         >>>              default
>>         >>> /Users/lijon/Coding/kicad/pcbnew/pcb_parser.cpp:1571:14:
>>         error:
>>         >>> expected expression
>>         >>> /Users/lijon/Coding/kicad/pcbnew/pcb_parser.cpp:1638:14:
>>         error: use of
>>         >>> undeclared identifier 'T_max_error'; did you mean 'T_mirror'?
>>         >>>         case T_max_error:
>>         >>>              ^~~~~~~~~~~
>>         >>>              T_mirror
>>         >>> /Users/lijon/Coding/kicad/include/pcb_lexer.h:122:9: note:
>>         'T_mirror'
>>         >>> declared here
>>         >>>         T_mirror,
>>         >>>         ^
>>         >>> /Users/lijon/Coding/kicad/pcbnew/pcb_parser.cpp:1639:58:
>>         error: use of
>>         >>> undeclared identifier 'T_max_error'; did you mean 'T_mirror'?
>>         >>>             designSettings.m_MaxError = parseBoardUnits(
>>         T_max_error );
>>         >>>                                                         
>>         ^~~~~~~~~~~
>>         >>>                                                         
>>         T_mirror
>>         >>> /Users/lijon/Coding/kicad/include/pcb_lexer.h:122:9: note:
>>         'T_mirror'
>>         >>> declared here
>>         >>>         T_mirror,
>>         >>>         ^
>>         >>> /Users/lijon/Coding/kicad/pcbnew/pcb_parser.cpp:1643:14:
>>         error: use of
>>         >>> undeclared identifier 'T_filled_areas_thickness'
>>         >>>         case T_filled_areas_thickness:
>>         >>>              ^
>>         >>> fatal error: too many errors emitted, stopping now
>>         [-ferror-limit=]
>>         >>> 20 errors generated.
>>         >>> make[2]: ***
>>         [common/CMakeFiles/pcbcommon.dir/__/pcbnew/pcb_parser.cpp.o]
>>         >>> Error 1
>>         >>> make[1]: *** [common/CMakeFiles/pcbcommon.dir/all] Error 2
>>         >>> make: *** [all] Error 2
>>         >>>
>>         >>>
>>         >>> --
>>         >>> /Jonatan
>>         >>> http://kymatica.com <http://kymatica.com/>
>>         >>>
>>         >>> _______________________________________________
>>         >>> Mailing list: https://launchpad.net/~kicad-developers
>>         >>> Post to     : kicad-developers@xxxxxxxxxxxxxxxxxxx
>>         <mailto:kicad-developers@xxxxxxxxxxxxxxxxxxx>
>>         >>> Unsubscribe : https://launchpad.net/~kicad-developers
>>         >>> More help   : https://help.launchpad.net/ListHelp
>>         >>
>>         >> _______________________________________________
>>         >> Mailing list: https://launchpad.net/~kicad-developers
>>         >> Post to     : kicad-developers@xxxxxxxxxxxxxxxxxxx
>>         <mailto:kicad-developers@xxxxxxxxxxxxxxxxxxx>
>>         >> Unsubscribe : https://launchpad.net/~kicad-developers
>>         >> More help   : https://help.launchpad.net/ListHelp
>>
>>
>>
>>         -- 
>>         /Jonatan
>>         http://kymatica.com <http://kymatica.com/>
>>
>>     _______________________________________________
>>     Mailing list: https://launchpad.net/~kicad-developers
>>     Post to     : kicad-developers@xxxxxxxxxxxxxxxxxxx
>>     <mailto:kicad-developers@xxxxxxxxxxxxxxxxxxx>
>>     Unsubscribe : https://launchpad.net/~kicad-developers
>>     More help   : https://help.launchpad.net/ListHelp
> 
> 
> _______________________________________________
> Mailing list: https://launchpad.net/~kicad-developers
> Post to     : kicad-developers@xxxxxxxxxxxxxxxxxxx
> Unsubscribe : https://launchpad.net/~kicad-developers
> More help   : https://help.launchpad.net/ListHelp
> 


References