You are viewing a plain text version of this content. The canonical link for it is here.
Posted to dev@thrift.apache.org by "Carl Steinbach (JIRA)" <ji...@apache.org> on 2010/08/24 03:08:18 UTC
[jira] Created: (THRIFT-865) C++ compiler build depends on libfl
even when flex/lex not detected
C++ compiler build depends on libfl even when flex/lex not detected
-------------------------------------------------------------------
Key: THRIFT-865
URL: https://issues.apache.org/jira/browse/THRIFT-865
Project: Thrift
Issue Type: Bug
Components: C++ - Compiler
Affects Versions: 0.4
Environment: Linux ubuntu 2.6.32-24-generic #39-Ubuntu SMP Wed Jul 28 06:07:29 UTC 2010 i686 GNU/Linux
Reporter: Carl Steinbach
I tried building the thrift 0.4.0 tarball on an Ubuntu machine that does not have Flex installed:
{code}
% ./configure
...
checking for bison... no
checking for byacc... no
checking for flex... no
checking for lex... no
...
% make && make install
...
libtool: link: g++ -Wall -I./src -I/usr/include -g -O2 -Wall -o thrift thrift-thrifty.o thrift-thriftl.o thrift-main.o md5.o thrift-t_generator.o
thrift-t_cpp_generator.o thrift-t_java_generator.o thrift-t_as3_generator.o thrift-t_csharp_generator.o thrift-t_py_generator.o
thrift-t_rb_generator.o thrift-t_perl_generator.o thrift-t_php_generator.o thrift-t_erl_generator.o thrift-t_cocoa_generator.o
thrift-t_st_generator.o thrift-t_ocaml_generator.o thrift-t_hs_generator.o thrift-t_xsd_generator.o thrift-t_html_generator.o
thrift-t_js_generator.o -L/usr/lib -lrt -lpthread
thrift-thriftl.o: In function `yyinput':
/home/carl/tmp/thrift-0.4.0/compiler/cpp/thriftl.cc:2947: undefined reference to `yywrap'
thrift-thriftl.o: In function `yylex()':
/home/carl/tmp/thrift-0.4.0/compiler/cpp/thriftl.cc:2642: undefined reference to `yywrap'
collect2: ld returned 1 exit status
make[3]: *** [thrift] Error 1
make[3]: Leaving directory `/home/carl/tmp/thrift-0.4.0/compiler/cpp'
make[2]: *** [all] Error 2
make[2]: Leaving directory `/home/carl/tmp/thrift-0.4.0/compiler/cpp'
make[1]: *** [all-recursive] Error 1
make[1]: Leaving directory `/home/carl/tmp/thrift-0.4.0'
make: *** [all] Error 2
%
{code}
Relevant: http://stackoverflow.com/questions/1811125/undefined-reference-to-yywrap
Looks like the relevant token in compiler/cpp/thriftl.cc is YY_SKIP_YYWRAP.
--
This message is automatically generated by JIRA.
-
You can reply to this email to add a comment to the issue online.
[jira] Commented: (THRIFT-865) C++ compiler build depends on libfl
even when flex/lex not detected
Posted by "David Reiss (JIRA)" <ji...@apache.org>.
[ https://issues.apache.org/jira/browse/THRIFT-865?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=12904711#action_12904711 ]
David Reiss commented on THRIFT-865:
------------------------------------
Click the "all" tab. :) I'll run through and resolve everything that was handled with that big batch.
> C++ compiler build depends on libfl even when flex/lex not detected
> -------------------------------------------------------------------
>
> Key: THRIFT-865
> URL: https://issues.apache.org/jira/browse/THRIFT-865
> Project: Thrift
> Issue Type: Bug
> Components: C++ - Compiler
> Affects Versions: 0.4
> Environment: Linux ubuntu 2.6.32-24-generic #39-Ubuntu SMP Wed Jul 28 06:07:29 UTC 2010 i686 GNU/Linux
> Reporter: Carl Steinbach
> Fix For: 0.5
>
> Attachments: v4-0014-THRIFT-865.-Make-Thrift-buildable-without-libfl.patch
>
>
> I tried building the thrift 0.4.0 tarball on an Ubuntu machine that does not have Flex installed:
> {code}
> % ./configure
> ...
> checking for bison... no
> checking for byacc... no
> checking for flex... no
> checking for lex... no
> ...
> % make && make install
> ...
> libtool: link: g++ -Wall -I./src -I/usr/include -g -O2 -Wall -o thrift thrift-thrifty.o thrift-thriftl.o thrift-main.o md5.o thrift-t_generator.o
> thrift-t_cpp_generator.o thrift-t_java_generator.o thrift-t_as3_generator.o thrift-t_csharp_generator.o thrift-t_py_generator.o
> thrift-t_rb_generator.o thrift-t_perl_generator.o thrift-t_php_generator.o thrift-t_erl_generator.o thrift-t_cocoa_generator.o
> thrift-t_st_generator.o thrift-t_ocaml_generator.o thrift-t_hs_generator.o thrift-t_xsd_generator.o thrift-t_html_generator.o
> thrift-t_js_generator.o -L/usr/lib -lrt -lpthread
> thrift-thriftl.o: In function `yyinput':
> /home/carl/tmp/thrift-0.4.0/compiler/cpp/thriftl.cc:2947: undefined reference to `yywrap'
> thrift-thriftl.o: In function `yylex()':
> /home/carl/tmp/thrift-0.4.0/compiler/cpp/thriftl.cc:2642: undefined reference to `yywrap'
> collect2: ld returned 1 exit status
> make[3]: *** [thrift] Error 1
> make[3]: Leaving directory `/home/carl/tmp/thrift-0.4.0/compiler/cpp'
> make[2]: *** [all] Error 2
> make[2]: Leaving directory `/home/carl/tmp/thrift-0.4.0/compiler/cpp'
> make[1]: *** [all-recursive] Error 1
> make[1]: Leaving directory `/home/carl/tmp/thrift-0.4.0'
> make: *** [all] Error 2
> %
> {code}
> Relevant: http://stackoverflow.com/questions/1811125/undefined-reference-to-yywrap
> Looks like the relevant token in compiler/cpp/thriftl.cc is YY_SKIP_YYWRAP.
--
This message is automatically generated by JIRA.
-
You can reply to this email to add a comment to the issue online.
[jira] Resolved: (THRIFT-865) C++ compiler build depends on libfl
even when flex/lex not detected
Posted by "David Reiss (JIRA)" <ji...@apache.org>.
[ https://issues.apache.org/jira/browse/THRIFT-865?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel ]
David Reiss resolved THRIFT-865.
--------------------------------
Assignee: David Reiss
Fix Version/s: 0.5
Resolution: Fixed
> C++ compiler build depends on libfl even when flex/lex not detected
> -------------------------------------------------------------------
>
> Key: THRIFT-865
> URL: https://issues.apache.org/jira/browse/THRIFT-865
> Project: Thrift
> Issue Type: Bug
> Components: C++ - Compiler
> Affects Versions: 0.4
> Environment: Linux ubuntu 2.6.32-24-generic #39-Ubuntu SMP Wed Jul 28 06:07:29 UTC 2010 i686 GNU/Linux
> Reporter: Carl Steinbach
> Assignee: David Reiss
> Fix For: 0.5
>
> Attachments: v4-0014-THRIFT-865.-Make-Thrift-buildable-without-libfl.patch
>
>
> I tried building the thrift 0.4.0 tarball on an Ubuntu machine that does not have Flex installed:
> {code}
> % ./configure
> ...
> checking for bison... no
> checking for byacc... no
> checking for flex... no
> checking for lex... no
> ...
> % make && make install
> ...
> libtool: link: g++ -Wall -I./src -I/usr/include -g -O2 -Wall -o thrift thrift-thrifty.o thrift-thriftl.o thrift-main.o md5.o thrift-t_generator.o
> thrift-t_cpp_generator.o thrift-t_java_generator.o thrift-t_as3_generator.o thrift-t_csharp_generator.o thrift-t_py_generator.o
> thrift-t_rb_generator.o thrift-t_perl_generator.o thrift-t_php_generator.o thrift-t_erl_generator.o thrift-t_cocoa_generator.o
> thrift-t_st_generator.o thrift-t_ocaml_generator.o thrift-t_hs_generator.o thrift-t_xsd_generator.o thrift-t_html_generator.o
> thrift-t_js_generator.o -L/usr/lib -lrt -lpthread
> thrift-thriftl.o: In function `yyinput':
> /home/carl/tmp/thrift-0.4.0/compiler/cpp/thriftl.cc:2947: undefined reference to `yywrap'
> thrift-thriftl.o: In function `yylex()':
> /home/carl/tmp/thrift-0.4.0/compiler/cpp/thriftl.cc:2642: undefined reference to `yywrap'
> collect2: ld returned 1 exit status
> make[3]: *** [thrift] Error 1
> make[3]: Leaving directory `/home/carl/tmp/thrift-0.4.0/compiler/cpp'
> make[2]: *** [all] Error 2
> make[2]: Leaving directory `/home/carl/tmp/thrift-0.4.0/compiler/cpp'
> make[1]: *** [all-recursive] Error 1
> make[1]: Leaving directory `/home/carl/tmp/thrift-0.4.0'
> make: *** [all] Error 2
> %
> {code}
> Relevant: http://stackoverflow.com/questions/1811125/undefined-reference-to-yywrap
> Looks like the relevant token in compiler/cpp/thriftl.cc is YY_SKIP_YYWRAP.
--
This message is automatically generated by JIRA.
-
You can reply to this email to add a comment to the issue online.
[jira] Commented: (THRIFT-865) C++ compiler build depends on libfl
even when flex/lex not detected
Posted by "David Reiss (JIRA)" <ji...@apache.org>.
[ https://issues.apache.org/jira/browse/THRIFT-865?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=12903661#action_12903661 ]
David Reiss commented on THRIFT-865:
------------------------------------
It looks like the answer to my question is "yes".
> C++ compiler build depends on libfl even when flex/lex not detected
> -------------------------------------------------------------------
>
> Key: THRIFT-865
> URL: https://issues.apache.org/jira/browse/THRIFT-865
> Project: Thrift
> Issue Type: Bug
> Components: C++ - Compiler
> Affects Versions: 0.4
> Environment: Linux ubuntu 2.6.32-24-generic #39-Ubuntu SMP Wed Jul 28 06:07:29 UTC 2010 i686 GNU/Linux
> Reporter: Carl Steinbach
> Attachments: v4-0014-THRIFT-865.-Make-Thrift-buildable-without-libfl.patch
>
>
> I tried building the thrift 0.4.0 tarball on an Ubuntu machine that does not have Flex installed:
> {code}
> % ./configure
> ...
> checking for bison... no
> checking for byacc... no
> checking for flex... no
> checking for lex... no
> ...
> % make && make install
> ...
> libtool: link: g++ -Wall -I./src -I/usr/include -g -O2 -Wall -o thrift thrift-thrifty.o thrift-thriftl.o thrift-main.o md5.o thrift-t_generator.o
> thrift-t_cpp_generator.o thrift-t_java_generator.o thrift-t_as3_generator.o thrift-t_csharp_generator.o thrift-t_py_generator.o
> thrift-t_rb_generator.o thrift-t_perl_generator.o thrift-t_php_generator.o thrift-t_erl_generator.o thrift-t_cocoa_generator.o
> thrift-t_st_generator.o thrift-t_ocaml_generator.o thrift-t_hs_generator.o thrift-t_xsd_generator.o thrift-t_html_generator.o
> thrift-t_js_generator.o -L/usr/lib -lrt -lpthread
> thrift-thriftl.o: In function `yyinput':
> /home/carl/tmp/thrift-0.4.0/compiler/cpp/thriftl.cc:2947: undefined reference to `yywrap'
> thrift-thriftl.o: In function `yylex()':
> /home/carl/tmp/thrift-0.4.0/compiler/cpp/thriftl.cc:2642: undefined reference to `yywrap'
> collect2: ld returned 1 exit status
> make[3]: *** [thrift] Error 1
> make[3]: Leaving directory `/home/carl/tmp/thrift-0.4.0/compiler/cpp'
> make[2]: *** [all] Error 2
> make[2]: Leaving directory `/home/carl/tmp/thrift-0.4.0/compiler/cpp'
> make[1]: *** [all-recursive] Error 1
> make[1]: Leaving directory `/home/carl/tmp/thrift-0.4.0'
> make: *** [all] Error 2
> %
> {code}
> Relevant: http://stackoverflow.com/questions/1811125/undefined-reference-to-yywrap
> Looks like the relevant token in compiler/cpp/thriftl.cc is YY_SKIP_YYWRAP.
--
This message is automatically generated by JIRA.
-
You can reply to this email to add a comment to the issue online.
[jira] Commented: (THRIFT-865) C++ compiler build depends on libfl
even when flex/lex not detected
Posted by "Bryan Duxbury (JIRA)" <ji...@apache.org>.
[ https://issues.apache.org/jira/browse/THRIFT-865?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=12904709#action_12904709 ]
Bryan Duxbury commented on THRIFT-865:
--------------------------------------
Patch looks good to me, anything holding back commit?
> C++ compiler build depends on libfl even when flex/lex not detected
> -------------------------------------------------------------------
>
> Key: THRIFT-865
> URL: https://issues.apache.org/jira/browse/THRIFT-865
> Project: Thrift
> Issue Type: Bug
> Components: C++ - Compiler
> Affects Versions: 0.4
> Environment: Linux ubuntu 2.6.32-24-generic #39-Ubuntu SMP Wed Jul 28 06:07:29 UTC 2010 i686 GNU/Linux
> Reporter: Carl Steinbach
> Attachments: v4-0014-THRIFT-865.-Make-Thrift-buildable-without-libfl.patch
>
>
> I tried building the thrift 0.4.0 tarball on an Ubuntu machine that does not have Flex installed:
> {code}
> % ./configure
> ...
> checking for bison... no
> checking for byacc... no
> checking for flex... no
> checking for lex... no
> ...
> % make && make install
> ...
> libtool: link: g++ -Wall -I./src -I/usr/include -g -O2 -Wall -o thrift thrift-thrifty.o thrift-thriftl.o thrift-main.o md5.o thrift-t_generator.o
> thrift-t_cpp_generator.o thrift-t_java_generator.o thrift-t_as3_generator.o thrift-t_csharp_generator.o thrift-t_py_generator.o
> thrift-t_rb_generator.o thrift-t_perl_generator.o thrift-t_php_generator.o thrift-t_erl_generator.o thrift-t_cocoa_generator.o
> thrift-t_st_generator.o thrift-t_ocaml_generator.o thrift-t_hs_generator.o thrift-t_xsd_generator.o thrift-t_html_generator.o
> thrift-t_js_generator.o -L/usr/lib -lrt -lpthread
> thrift-thriftl.o: In function `yyinput':
> /home/carl/tmp/thrift-0.4.0/compiler/cpp/thriftl.cc:2947: undefined reference to `yywrap'
> thrift-thriftl.o: In function `yylex()':
> /home/carl/tmp/thrift-0.4.0/compiler/cpp/thriftl.cc:2642: undefined reference to `yywrap'
> collect2: ld returned 1 exit status
> make[3]: *** [thrift] Error 1
> make[3]: Leaving directory `/home/carl/tmp/thrift-0.4.0/compiler/cpp'
> make[2]: *** [all] Error 2
> make[2]: Leaving directory `/home/carl/tmp/thrift-0.4.0/compiler/cpp'
> make[1]: *** [all-recursive] Error 1
> make[1]: Leaving directory `/home/carl/tmp/thrift-0.4.0'
> make: *** [all] Error 2
> %
> {code}
> Relevant: http://stackoverflow.com/questions/1811125/undefined-reference-to-yywrap
> Looks like the relevant token in compiler/cpp/thriftl.cc is YY_SKIP_YYWRAP.
--
This message is automatically generated by JIRA.
-
You can reply to this email to add a comment to the issue online.
[jira] Updated: (THRIFT-865) C++ compiler build depends on libfl
even when flex/lex not detected
Posted by "David Reiss (JIRA)" <ji...@apache.org>.
[ https://issues.apache.org/jira/browse/THRIFT-865?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel ]
David Reiss updated THRIFT-865:
-------------------------------
Attachment: v4-0014-THRIFT-865.-Make-Thrift-buildable-without-libfl.patch
> C++ compiler build depends on libfl even when flex/lex not detected
> -------------------------------------------------------------------
>
> Key: THRIFT-865
> URL: https://issues.apache.org/jira/browse/THRIFT-865
> Project: Thrift
> Issue Type: Bug
> Components: C++ - Compiler
> Affects Versions: 0.4
> Environment: Linux ubuntu 2.6.32-24-generic #39-Ubuntu SMP Wed Jul 28 06:07:29 UTC 2010 i686 GNU/Linux
> Reporter: Carl Steinbach
> Attachments: v4-0014-THRIFT-865.-Make-Thrift-buildable-without-libfl.patch
>
>
> I tried building the thrift 0.4.0 tarball on an Ubuntu machine that does not have Flex installed:
> {code}
> % ./configure
> ...
> checking for bison... no
> checking for byacc... no
> checking for flex... no
> checking for lex... no
> ...
> % make && make install
> ...
> libtool: link: g++ -Wall -I./src -I/usr/include -g -O2 -Wall -o thrift thrift-thrifty.o thrift-thriftl.o thrift-main.o md5.o thrift-t_generator.o
> thrift-t_cpp_generator.o thrift-t_java_generator.o thrift-t_as3_generator.o thrift-t_csharp_generator.o thrift-t_py_generator.o
> thrift-t_rb_generator.o thrift-t_perl_generator.o thrift-t_php_generator.o thrift-t_erl_generator.o thrift-t_cocoa_generator.o
> thrift-t_st_generator.o thrift-t_ocaml_generator.o thrift-t_hs_generator.o thrift-t_xsd_generator.o thrift-t_html_generator.o
> thrift-t_js_generator.o -L/usr/lib -lrt -lpthread
> thrift-thriftl.o: In function `yyinput':
> /home/carl/tmp/thrift-0.4.0/compiler/cpp/thriftl.cc:2947: undefined reference to `yywrap'
> thrift-thriftl.o: In function `yylex()':
> /home/carl/tmp/thrift-0.4.0/compiler/cpp/thriftl.cc:2642: undefined reference to `yywrap'
> collect2: ld returned 1 exit status
> make[3]: *** [thrift] Error 1
> make[3]: Leaving directory `/home/carl/tmp/thrift-0.4.0/compiler/cpp'
> make[2]: *** [all] Error 2
> make[2]: Leaving directory `/home/carl/tmp/thrift-0.4.0/compiler/cpp'
> make[1]: *** [all-recursive] Error 1
> make[1]: Leaving directory `/home/carl/tmp/thrift-0.4.0'
> make: *** [all] Error 2
> %
> {code}
> Relevant: http://stackoverflow.com/questions/1811125/undefined-reference-to-yywrap
> Looks like the relevant token in compiler/cpp/thriftl.cc is YY_SKIP_YYWRAP.
--
This message is automatically generated by JIRA.
-
You can reply to this email to add a comment to the issue online.
[jira] Commented: (THRIFT-865) C++ compiler build depends on libfl
even when flex/lex not detected
Posted by "David Reiss (JIRA)" <ji...@apache.org>.
[ https://issues.apache.org/jira/browse/THRIFT-865?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=12902031#action_12902031 ]
David Reiss commented on THRIFT-865:
------------------------------------
Interesting. Thanks for the link. So does that mean that we can use "%option noyywrap" and not requrie libfl at all?
> C++ compiler build depends on libfl even when flex/lex not detected
> -------------------------------------------------------------------
>
> Key: THRIFT-865
> URL: https://issues.apache.org/jira/browse/THRIFT-865
> Project: Thrift
> Issue Type: Bug
> Components: C++ - Compiler
> Affects Versions: 0.4
> Environment: Linux ubuntu 2.6.32-24-generic #39-Ubuntu SMP Wed Jul 28 06:07:29 UTC 2010 i686 GNU/Linux
> Reporter: Carl Steinbach
>
> I tried building the thrift 0.4.0 tarball on an Ubuntu machine that does not have Flex installed:
> {code}
> % ./configure
> ...
> checking for bison... no
> checking for byacc... no
> checking for flex... no
> checking for lex... no
> ...
> % make && make install
> ...
> libtool: link: g++ -Wall -I./src -I/usr/include -g -O2 -Wall -o thrift thrift-thrifty.o thrift-thriftl.o thrift-main.o md5.o thrift-t_generator.o
> thrift-t_cpp_generator.o thrift-t_java_generator.o thrift-t_as3_generator.o thrift-t_csharp_generator.o thrift-t_py_generator.o
> thrift-t_rb_generator.o thrift-t_perl_generator.o thrift-t_php_generator.o thrift-t_erl_generator.o thrift-t_cocoa_generator.o
> thrift-t_st_generator.o thrift-t_ocaml_generator.o thrift-t_hs_generator.o thrift-t_xsd_generator.o thrift-t_html_generator.o
> thrift-t_js_generator.o -L/usr/lib -lrt -lpthread
> thrift-thriftl.o: In function `yyinput':
> /home/carl/tmp/thrift-0.4.0/compiler/cpp/thriftl.cc:2947: undefined reference to `yywrap'
> thrift-thriftl.o: In function `yylex()':
> /home/carl/tmp/thrift-0.4.0/compiler/cpp/thriftl.cc:2642: undefined reference to `yywrap'
> collect2: ld returned 1 exit status
> make[3]: *** [thrift] Error 1
> make[3]: Leaving directory `/home/carl/tmp/thrift-0.4.0/compiler/cpp'
> make[2]: *** [all] Error 2
> make[2]: Leaving directory `/home/carl/tmp/thrift-0.4.0/compiler/cpp'
> make[1]: *** [all-recursive] Error 1
> make[1]: Leaving directory `/home/carl/tmp/thrift-0.4.0'
> make: *** [all] Error 2
> %
> {code}
> Relevant: http://stackoverflow.com/questions/1811125/undefined-reference-to-yywrap
> Looks like the relevant token in compiler/cpp/thriftl.cc is YY_SKIP_YYWRAP.
--
This message is automatically generated by JIRA.
-
You can reply to this email to add a comment to the issue online.