You are viewing a plain text version of this content. The canonical link for it is here.
Posted to dev@thrift.apache.org by "Anthony Molinaro (JIRA)" <ji...@apache.org> on 2009/12/15 08:44:18 UTC
[jira] Created: (THRIFT-650) Make Check fails on Centos/OSX with
0.2.0 tarball
Make Check fails on Centos/OSX with 0.2.0 tarball
-------------------------------------------------
Key: THRIFT-650
URL: https://issues.apache.org/jira/browse/THRIFT-650
Project: Thrift
Issue Type: Bug
Affects Versions: 0.2
Environment: Centos 5.3 - Linux centos5_0 2.6.18-128.1.10.el5 #1 SMP Thu May 7 10:35:59 EDT 2009 x86_64 x86_64 x86_64 GNU/Linux
Mac OSX 10.6.2 - Darwin nympro.local 10.2.0 Darwin Kernel Version 10.2.0: Tue Nov 3 10:37:10 PST 2009; root:xnu-1486.2.11~1/RELEASE_I386 i386 i386 MacBookPro4,1 Darwin
Reporter: Anthony Molinaro
% tar xvfz thrift-0.2.0-incubating.tar.gz && cd thrift-0.2.0
% ./configure && make && make check
fails with
UnitTestMain.cpp:21:45: error: boost/test/included/unit_test.hpp: No such file or directory
File above exists but not in given directory
% locate unit_test.hpp
/usr/include/boost/test/auto_unit_test.hpp
/usr/include/boost/test/unit_test.hpp
% rpm -qa | grep boost
boost-1.33.1-10.el5
boost-devel-1.33.1-10.el5
(same version of boost library on OSX, but installed via fink).
Changing the UnitTestMain.cpp to include boost/test/unit_test.cpp causes that file to compile but then
make check gives the following errors
TMemoryBufferTest.cpp:28: error: expected constructor, destructor, or type conversion before '(' token
TMemoryBufferTest.cpp:56: error: expected constructor, destructor, or type conversion before '(' token
TMemoryBufferTest.cpp:82: error: expected constructor, destructor, or type conversion before '(' token
Changing the header in TMemoryBufferTest.cpp from
#include <boost/test/unit_test.hpp>
to
#include <boost/test/auto_unit_test.hpp>
resulted in additional errors
TMemoryBufferTest.cpp:30: error: expected ',' or ';' before 'struct'
TMemoryBufferTest.cpp:30: error: 'test_roundtrip_id' was not declared in this scope
TMemoryBufferTest.cpp:30: error: template argument 1 is invalid
TMemoryBufferTest.cpp:107: error: expected ',' or ';' at end of input
And that's about as far as I can get not being a C++ type.
--
This message is automatically generated by JIRA.
-
You can reply to this email to add a comment to the issue online.
[jira] Closed: (THRIFT-650) Make Check fails on Centos/OSX with
0.2.0 tarball
Posted by "Bryan Duxbury (JIRA)" <ji...@apache.org>.
[ https://issues.apache.org/jira/browse/THRIFT-650?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel ]
Bryan Duxbury closed THRIFT-650.
--------------------------------
Assignee: Anthony Molinaro
Fix Version/s: 0.4
Resolution: Fixed
I just committed this.
> Make Check fails on Centos/OSX with 0.2.0 tarball
> -------------------------------------------------
>
> Key: THRIFT-650
> URL: https://issues.apache.org/jira/browse/THRIFT-650
> Project: Thrift
> Issue Type: Bug
> Affects Versions: 0.2
> Environment: Centos 5.3 - Linux centos5_0 2.6.18-128.1.10.el5 #1 SMP Thu May 7 10:35:59 EDT 2009 x86_64 x86_64 x86_64 GNU/Linux
> Mac OSX 10.6.2 - Darwin nympro.local 10.2.0 Darwin Kernel Version 10.2.0: Tue Nov 3 10:37:10 PST 2009; root:xnu-1486.2.11~1/RELEASE_I386 i386 i386 MacBookPro4,1 Darwin
> Reporter: Anthony Molinaro
> Assignee: Anthony Molinaro
> Fix For: 0.4
>
> Attachments: check.patch, check2.patch, check3.patch
>
>
> % tar xvfz thrift-0.2.0-incubating.tar.gz && cd thrift-0.2.0
> % ./configure && make && make check
> fails with
> UnitTestMain.cpp:21:45: error: boost/test/included/unit_test.hpp: No such file or directory
> File above exists but not in given directory
> % locate unit_test.hpp
> /usr/include/boost/test/auto_unit_test.hpp
> /usr/include/boost/test/unit_test.hpp
> % rpm -qa | grep boost
> boost-1.33.1-10.el5
> boost-devel-1.33.1-10.el5
> (same version of boost library on OSX, but installed via fink).
> Changing the UnitTestMain.cpp to include boost/test/unit_test.cpp causes that file to compile but then
> make check gives the following errors
> TMemoryBufferTest.cpp:28: error: expected constructor, destructor, or type conversion before '(' token
> TMemoryBufferTest.cpp:56: error: expected constructor, destructor, or type conversion before '(' token
> TMemoryBufferTest.cpp:82: error: expected constructor, destructor, or type conversion before '(' token
> Changing the header in TMemoryBufferTest.cpp from
> #include <boost/test/unit_test.hpp>
> to
> #include <boost/test/auto_unit_test.hpp>
> resulted in additional errors
> TMemoryBufferTest.cpp:30: error: expected ',' or ';' before 'struct'
> TMemoryBufferTest.cpp:30: error: 'test_roundtrip_id' was not declared in this scope
> TMemoryBufferTest.cpp:30: error: template argument 1 is invalid
> TMemoryBufferTest.cpp:107: error: expected ',' or ';' at end of input
> And that's about as far as I can get not being a C++ type.
--
This message is automatically generated by JIRA.
-
You can reply to this email to add a comment to the issue online.
[jira] Commented: (THRIFT-650) Make Check fails on Centos/OSX with
0.2.0 tarball
Posted by "David Reiss (JIRA)" <ji...@apache.org>.
[ https://issues.apache.org/jira/browse/THRIFT-650?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=12790875#action_12790875 ]
David Reiss commented on THRIFT-650:
------------------------------------
Can you post the command that was run by make check right before the error? Also, what version of boost do you have?
> Make Check fails on Centos/OSX with 0.2.0 tarball
> -------------------------------------------------
>
> Key: THRIFT-650
> URL: https://issues.apache.org/jira/browse/THRIFT-650
> Project: Thrift
> Issue Type: Bug
> Affects Versions: 0.2
> Environment: Centos 5.3 - Linux centos5_0 2.6.18-128.1.10.el5 #1 SMP Thu May 7 10:35:59 EDT 2009 x86_64 x86_64 x86_64 GNU/Linux
> Mac OSX 10.6.2 - Darwin nympro.local 10.2.0 Darwin Kernel Version 10.2.0: Tue Nov 3 10:37:10 PST 2009; root:xnu-1486.2.11~1/RELEASE_I386 i386 i386 MacBookPro4,1 Darwin
> Reporter: Anthony Molinaro
>
> % tar xvfz thrift-0.2.0-incubating.tar.gz && cd thrift-0.2.0
> % ./configure && make && make check
> fails with
> UnitTestMain.cpp:21:45: error: boost/test/included/unit_test.hpp: No such file or directory
> File above exists but not in given directory
> % locate unit_test.hpp
> /usr/include/boost/test/auto_unit_test.hpp
> /usr/include/boost/test/unit_test.hpp
> % rpm -qa | grep boost
> boost-1.33.1-10.el5
> boost-devel-1.33.1-10.el5
> (same version of boost library on OSX, but installed via fink).
> Changing the UnitTestMain.cpp to include boost/test/unit_test.cpp causes that file to compile but then
> make check gives the following errors
> TMemoryBufferTest.cpp:28: error: expected constructor, destructor, or type conversion before '(' token
> TMemoryBufferTest.cpp:56: error: expected constructor, destructor, or type conversion before '(' token
> TMemoryBufferTest.cpp:82: error: expected constructor, destructor, or type conversion before '(' token
> Changing the header in TMemoryBufferTest.cpp from
> #include <boost/test/unit_test.hpp>
> to
> #include <boost/test/auto_unit_test.hpp>
> resulted in additional errors
> TMemoryBufferTest.cpp:30: error: expected ',' or ';' before 'struct'
> TMemoryBufferTest.cpp:30: error: 'test_roundtrip_id' was not declared in this scope
> TMemoryBufferTest.cpp:30: error: template argument 1 is invalid
> TMemoryBufferTest.cpp:107: error: expected ',' or ';' at end of input
> And that's about as far as I can get not being a C++ type.
--
This message is automatically generated by JIRA.
-
You can reply to this email to add a comment to the issue online.
[jira] Updated: (THRIFT-650) Make Check fails on Centos/OSX with
0.2.0 tarball
Posted by "Adam Simpkins (JIRA)" <ji...@apache.org>.
[ https://issues.apache.org/jira/browse/THRIFT-650?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel ]
Adam Simpkins updated THRIFT-650:
---------------------------------
Attachment: check2.patch
The patch looks good to me. I think it might make more sense to define BOOST_AUTO_TEST_MAIN in UnitTestMain.cpp rather than in TMemoryBufferTest.cpp, though. Here's a minor update to the patch that does that.
> Make Check fails on Centos/OSX with 0.2.0 tarball
> -------------------------------------------------
>
> Key: THRIFT-650
> URL: https://issues.apache.org/jira/browse/THRIFT-650
> Project: Thrift
> Issue Type: Bug
> Affects Versions: 0.2
> Environment: Centos 5.3 - Linux centos5_0 2.6.18-128.1.10.el5 #1 SMP Thu May 7 10:35:59 EDT 2009 x86_64 x86_64 x86_64 GNU/Linux
> Mac OSX 10.6.2 - Darwin nympro.local 10.2.0 Darwin Kernel Version 10.2.0: Tue Nov 3 10:37:10 PST 2009; root:xnu-1486.2.11~1/RELEASE_I386 i386 i386 MacBookPro4,1 Darwin
> Reporter: Anthony Molinaro
> Attachments: check.patch, check2.patch
>
>
> % tar xvfz thrift-0.2.0-incubating.tar.gz && cd thrift-0.2.0
> % ./configure && make && make check
> fails with
> UnitTestMain.cpp:21:45: error: boost/test/included/unit_test.hpp: No such file or directory
> File above exists but not in given directory
> % locate unit_test.hpp
> /usr/include/boost/test/auto_unit_test.hpp
> /usr/include/boost/test/unit_test.hpp
> % rpm -qa | grep boost
> boost-1.33.1-10.el5
> boost-devel-1.33.1-10.el5
> (same version of boost library on OSX, but installed via fink).
> Changing the UnitTestMain.cpp to include boost/test/unit_test.cpp causes that file to compile but then
> make check gives the following errors
> TMemoryBufferTest.cpp:28: error: expected constructor, destructor, or type conversion before '(' token
> TMemoryBufferTest.cpp:56: error: expected constructor, destructor, or type conversion before '(' token
> TMemoryBufferTest.cpp:82: error: expected constructor, destructor, or type conversion before '(' token
> Changing the header in TMemoryBufferTest.cpp from
> #include <boost/test/unit_test.hpp>
> to
> #include <boost/test/auto_unit_test.hpp>
> resulted in additional errors
> TMemoryBufferTest.cpp:30: error: expected ',' or ';' before 'struct'
> TMemoryBufferTest.cpp:30: error: 'test_roundtrip_id' was not declared in this scope
> TMemoryBufferTest.cpp:30: error: template argument 1 is invalid
> TMemoryBufferTest.cpp:107: error: expected ',' or ';' at end of input
> And that's about as far as I can get not being a C++ type.
--
This message is automatically generated by JIRA.
-
You can reply to this email to add a comment to the issue online.
[jira] Updated: (THRIFT-650) Make Check fails on Centos/OSX with
0.2.0 tarball
Posted by "Anthony Molinaro (JIRA)" <ji...@apache.org>.
[ https://issues.apache.org/jira/browse/THRIFT-650?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel ]
Anthony Molinaro updated THRIFT-650:
------------------------------------
Attachment: check.patch
I don't have the command at the moment, but my version of boost is 1.33.1
% rpm -qa | grep boost
boost-1.33.1-10.el5
boost-devel-1.33.1-10.el5
and attached is a patch which will cause these tests to work with that version of the lib.
> Make Check fails on Centos/OSX with 0.2.0 tarball
> -------------------------------------------------
>
> Key: THRIFT-650
> URL: https://issues.apache.org/jira/browse/THRIFT-650
> Project: Thrift
> Issue Type: Bug
> Affects Versions: 0.2
> Environment: Centos 5.3 - Linux centos5_0 2.6.18-128.1.10.el5 #1 SMP Thu May 7 10:35:59 EDT 2009 x86_64 x86_64 x86_64 GNU/Linux
> Mac OSX 10.6.2 - Darwin nympro.local 10.2.0 Darwin Kernel Version 10.2.0: Tue Nov 3 10:37:10 PST 2009; root:xnu-1486.2.11~1/RELEASE_I386 i386 i386 MacBookPro4,1 Darwin
> Reporter: Anthony Molinaro
> Attachments: check.patch
>
>
> % tar xvfz thrift-0.2.0-incubating.tar.gz && cd thrift-0.2.0
> % ./configure && make && make check
> fails with
> UnitTestMain.cpp:21:45: error: boost/test/included/unit_test.hpp: No such file or directory
> File above exists but not in given directory
> % locate unit_test.hpp
> /usr/include/boost/test/auto_unit_test.hpp
> /usr/include/boost/test/unit_test.hpp
> % rpm -qa | grep boost
> boost-1.33.1-10.el5
> boost-devel-1.33.1-10.el5
> (same version of boost library on OSX, but installed via fink).
> Changing the UnitTestMain.cpp to include boost/test/unit_test.cpp causes that file to compile but then
> make check gives the following errors
> TMemoryBufferTest.cpp:28: error: expected constructor, destructor, or type conversion before '(' token
> TMemoryBufferTest.cpp:56: error: expected constructor, destructor, or type conversion before '(' token
> TMemoryBufferTest.cpp:82: error: expected constructor, destructor, or type conversion before '(' token
> Changing the header in TMemoryBufferTest.cpp from
> #include <boost/test/unit_test.hpp>
> to
> #include <boost/test/auto_unit_test.hpp>
> resulted in additional errors
> TMemoryBufferTest.cpp:30: error: expected ',' or ';' before 'struct'
> TMemoryBufferTest.cpp:30: error: 'test_roundtrip_id' was not declared in this scope
> TMemoryBufferTest.cpp:30: error: template argument 1 is invalid
> TMemoryBufferTest.cpp:107: error: expected ',' or ';' at end of input
> And that's about as far as I can get not being a C++ type.
--
This message is automatically generated by JIRA.
-
You can reply to this email to add a comment to the issue online.
[jira] Updated: (THRIFT-650) Make Check fails on Centos/OSX with
0.2.0 tarball
Posted by "Anthony Molinaro (JIRA)" <ji...@apache.org>.
[ https://issues.apache.org/jira/browse/THRIFT-650?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel ]
Anthony Molinaro updated THRIFT-650:
------------------------------------
Attachment: check3.patch
I actually had problems with both patches on OSX 10.6.2, so here's a patch that both works on Centos 5.3 with boost 1.33 and on OSX 10.6.2 with boost 1.35 from fink. Basically somewhere between 1.33 and 1.35 they seem to have added some magic autoloading library thing to boost, but since I added the unit test library to get this to work with 1.33, you need to tell 1.35 that this is happening with another #DEFINE. Luckily that #DEFINE does not exist in boost 1.33, so is essentially ignored.
With this patch and the two uploaded to THRIFT-649 it's now possible to do
% svn co http://svn.apache.org/repos/asf/incubator/thrift/trunk thrift
% cd thrift
% ./bootstrap.sh && ./configure && make && make check
and have it work on both Centos 5.3 with older autoconf 2.59 and boost 1.33 as well as work on OSX 10.6.2 with autoconf 2.64 and boost 1.35.
(although there's a few other messy bits to getting fink into the right state in order to have boost installed correctly).
> Make Check fails on Centos/OSX with 0.2.0 tarball
> -------------------------------------------------
>
> Key: THRIFT-650
> URL: https://issues.apache.org/jira/browse/THRIFT-650
> Project: Thrift
> Issue Type: Bug
> Affects Versions: 0.2
> Environment: Centos 5.3 - Linux centos5_0 2.6.18-128.1.10.el5 #1 SMP Thu May 7 10:35:59 EDT 2009 x86_64 x86_64 x86_64 GNU/Linux
> Mac OSX 10.6.2 - Darwin nympro.local 10.2.0 Darwin Kernel Version 10.2.0: Tue Nov 3 10:37:10 PST 2009; root:xnu-1486.2.11~1/RELEASE_I386 i386 i386 MacBookPro4,1 Darwin
> Reporter: Anthony Molinaro
> Attachments: check.patch, check2.patch, check3.patch
>
>
> % tar xvfz thrift-0.2.0-incubating.tar.gz && cd thrift-0.2.0
> % ./configure && make && make check
> fails with
> UnitTestMain.cpp:21:45: error: boost/test/included/unit_test.hpp: No such file or directory
> File above exists but not in given directory
> % locate unit_test.hpp
> /usr/include/boost/test/auto_unit_test.hpp
> /usr/include/boost/test/unit_test.hpp
> % rpm -qa | grep boost
> boost-1.33.1-10.el5
> boost-devel-1.33.1-10.el5
> (same version of boost library on OSX, but installed via fink).
> Changing the UnitTestMain.cpp to include boost/test/unit_test.cpp causes that file to compile but then
> make check gives the following errors
> TMemoryBufferTest.cpp:28: error: expected constructor, destructor, or type conversion before '(' token
> TMemoryBufferTest.cpp:56: error: expected constructor, destructor, or type conversion before '(' token
> TMemoryBufferTest.cpp:82: error: expected constructor, destructor, or type conversion before '(' token
> Changing the header in TMemoryBufferTest.cpp from
> #include <boost/test/unit_test.hpp>
> to
> #include <boost/test/auto_unit_test.hpp>
> resulted in additional errors
> TMemoryBufferTest.cpp:30: error: expected ',' or ';' before 'struct'
> TMemoryBufferTest.cpp:30: error: 'test_roundtrip_id' was not declared in this scope
> TMemoryBufferTest.cpp:30: error: template argument 1 is invalid
> TMemoryBufferTest.cpp:107: error: expected ',' or ';' at end of input
> And that's about as far as I can get not being a C++ type.
--
This message is automatically generated by JIRA.
-
You can reply to this email to add a comment to the issue online.