On 04/29/2016 06:01 AM, Rob Syme wrote: > Hi all > > When compiling Gluster, make fails with: > ... > Making all in src > CC glusterfsd-mgmt.o > CC glusterfsd.o > CCLD glusterfsd > /foo/bar/lib/libfl.so: undefined reference to `yylex' > collect2: error: ld returned 1 exit status > Makefile:509: recipe for target 'glusterfsd' failed > make[3]: *** [glusterfsd] Error 1 > Makefile:456: recipe for target 'all-recursive' failed > make[2]: *** [all-recursive] Error 1 > Makefile:588: recipe for target 'all-recursive' failed > make[1]: *** [all-recursive] Error 1 > Makefile:487: recipe for target 'all' failed > make: *** [all] Error 2 > > Even though the error is coming from flex, It seems that gluster should > supply the yylex function by auto-generated code that is the result of > calling lex on a '.l' file > (https://www.mail-archive.com/tools-linking@xxxxxxxxxxxxxxxxxxxx/msg00601.html) Take a look at .../libglusterfs/src/Makefile. You'll see that lex and yacc (flex and bison) are run with -p graphyy, meaning that the lexical analyzer and parser functions' names are graphyylex() and graphyyparse() — both contained in libglusterfs.so. This is standard practice when building yacc-and-lex-based parsers into libraries; it allows an application to link with other libraries that might also contain their own yacc-and-lex-based parsers. I don't know what /foo/bar/lib/libfl.so is, or why it expects the lexical analyzer to be named yylex(), but that's the crux of your problem. You could try editing the .../glusterfsd/src/Makefile to remove --quiet options and run `make V=1` in the .../glusterfsd/src directory for more verbose output and that may provide better hints. All our linux, *BSD, and Mac boxes don't have a libfl.so and don't try to link with it. And perhaps if we knew what platform you're trying to build on we could give you a better answer. (But if it's OpenSolaris, well, you're probably pretty much on your own there.) > > I'm using: flex v2.6.0, bison v3.0.4, pkg-config v0.29, liburcu v0.9.2, > python v2.7.0, gcc v4.9.3 on linux (full dependency graph > here: http://i.imgur.com/xdn8trW.png). Any pointers are appreciated. > > -r > > > _______________________________________________ > Gluster-users mailing list > Gluster-users@xxxxxxxxxxx > http://www.gluster.org/mailman/listinfo/gluster-users > -- Kaleb _______________________________________________ Gluster-users mailing list Gluster-users@xxxxxxxxxxx http://www.gluster.org/mailman/listinfo/gluster-users