You are viewing a plain text version of this content. The canonical link for it is here.
Posted to users@qpid.apache.org by Fraser Adams <fr...@blueyonder.co.uk> on 2014/09/27 17:18:30 UTC
Proton revision 1627945 barfs on cmake -DCMAKE_BUILD_TYPE=Debug ..
I just updated to r1627945 and when I do
cmake -DCMAKE_BUILD_TYPE=Debug ..
make
I get:
Linking C shared library libqpid-proton.so
CMakeFiles/qpid-proton.dir/src/codec/codec.c.o: In function
`pni_node_fields':
/home/fadams/qpid/qpid-trunk/proton/proton-c/src/codec/codec.c:99:
undefined reference to `pn_data_node'
CMakeFiles/qpid-proton.dir/src/codec/codec.c.o: In function
`pni_node_index':
/home/fadams/qpid/qpid-trunk/proton/proton-c/src/codec/codec.c:117:
undefined reference to `pn_data_node'
CMakeFiles/qpid-proton.dir/src/codec/codec.c.o: In function
`pni_inspect_enter':
/home/fadams/qpid/qpid-trunk/proton/proton-c/src/codec/codec.c:254:
undefined reference to `pn_data_node'
/home/fadams/qpid/qpid-trunk/proton/proton-c/src/codec/codec.c:256:
undefined reference to `pn_data_node'
CMakeFiles/qpid-proton.dir/src/codec/codec.c.o: In function
`pni_next_nonnull':
/home/fadams/qpid/qpid-trunk/proton/proton-c/src/codec/codec.c:303:
undefined reference to `pn_data_node'
CMakeFiles/qpid-proton.dir/src/codec/codec.c.o:/home/fadams/qpid/qpid-trunk/proton/proton-c/src/codec/codec.c:315:
more undefined references to `pn_data_node' follow
collect2: ld returned 1 exit status
make[2]: *** [proton-c/libqpid-proton.so.2.0.0] Error 1
make[1]: *** [proton-c/CMakeFiles/qpid-proton.dir/all] Error 2
make: *** [all] Error 2
when I do:
rm CMakeCache.txt
cmake ..
make
It makes fine, so RelWithDebInfo seems OK, but Debug not
Not a show-stopper, but a bit weird.......
Frase
---------------------------------------------------------------------
To unsubscribe, e-mail: users-unsubscribe@qpid.apache.org
For additional commands, e-mail: users-help@qpid.apache.org
Re: Proton revision 1627945 barfs on cmake -DCMAKE_BUILD_TYPE=Debug
..
Posted by Chuck Rolke <cr...@redhat.com>.
And to be a really good doobie don't forget a Windows build of some sort.
-C
----- Original Message -----
> From: "Michael Goulish" <mg...@redhat.com>
> To: users@qpid.apache.org
> Sent: Monday, September 29, 2014 6:01:12 PM
> Subject: Re: Proton revision 1627945 barfs on cmake -DCMAKE_BUILD_TYPE=Debug ..
>
> Sorry about that!
> ...fixed now, by making it static.
> in future, i will test the default build and the debug build.
>
>
> ----- Original Message -----
>
>
> On 09/29/2014 12:01 PM, Andrew Stitcher wrote:
> > On Sat, 2014-09-27 at 16:18 +0100, Fraser Adams wrote:
> >> I just updated to r1627945 and when I do
> >> cmake -DCMAKE_BUILD_TYPE=Debug ..
> >> make
> >>
> >> I get:
> >>
> >> Linking C shared library libqpid-proton.so
> >> CMakeFiles/qpid-proton.dir/src/codec/codec.c.o: In function
> >> `pni_node_fields':
> >> /home/fadams/qpid/qpid-trunk/proton/proton-c/src/codec/codec.c:99:
> >> undefined reference to `pn_data_node'
> > ...
> >
> > Without investigating fully, this looks like it is related to
> > pn_data_node() being inline. I'd guess that in a debug build nothing is
> > inlined, but because the function is marked inline no actual routine is
> > generated for it.
> >
> > I think pn_data_node() was marked inline recently - perhaps it is not
> > also marked 'static' which I think might give this error.
>
> I can confirm that marking pn_data_node static does fix the build in
> Debug mode.
>
> >
> > Andrew
> >
> >
> >
> > ---------------------------------------------------------------------
> > To unsubscribe, e-mail: users-unsubscribe@qpid.apache.org
> > For additional commands, e-mail: users-help@qpid.apache.org
> >
>
> ---------------------------------------------------------------------
> To unsubscribe, e-mail: users-unsubscribe@qpid.apache.org
> For additional commands, e-mail: users-help@qpid.apache.org
>
>
> ---------------------------------------------------------------------
> To unsubscribe, e-mail: users-unsubscribe@qpid.apache.org
> For additional commands, e-mail: users-help@qpid.apache.org
>
>
---------------------------------------------------------------------
To unsubscribe, e-mail: users-unsubscribe@qpid.apache.org
For additional commands, e-mail: users-help@qpid.apache.org
Re: Proton revision 1627945 barfs on cmake -DCMAKE_BUILD_TYPE=Debug
..
Posted by Michael Goulish <mg...@redhat.com>.
Sorry about that!
...fixed now, by making it static.
in future, i will test the default build and the debug build.
----- Original Message -----
On 09/29/2014 12:01 PM, Andrew Stitcher wrote:
> On Sat, 2014-09-27 at 16:18 +0100, Fraser Adams wrote:
>> I just updated to r1627945 and when I do
>> cmake -DCMAKE_BUILD_TYPE=Debug ..
>> make
>>
>> I get:
>>
>> Linking C shared library libqpid-proton.so
>> CMakeFiles/qpid-proton.dir/src/codec/codec.c.o: In function
>> `pni_node_fields':
>> /home/fadams/qpid/qpid-trunk/proton/proton-c/src/codec/codec.c:99:
>> undefined reference to `pn_data_node'
> ...
>
> Without investigating fully, this looks like it is related to
> pn_data_node() being inline. I'd guess that in a debug build nothing is
> inlined, but because the function is marked inline no actual routine is
> generated for it.
>
> I think pn_data_node() was marked inline recently - perhaps it is not
> also marked 'static' which I think might give this error.
I can confirm that marking pn_data_node static does fix the build in
Debug mode.
>
> Andrew
>
>
>
> ---------------------------------------------------------------------
> To unsubscribe, e-mail: users-unsubscribe@qpid.apache.org
> For additional commands, e-mail: users-help@qpid.apache.org
>
---------------------------------------------------------------------
To unsubscribe, e-mail: users-unsubscribe@qpid.apache.org
For additional commands, e-mail: users-help@qpid.apache.org
---------------------------------------------------------------------
To unsubscribe, e-mail: users-unsubscribe@qpid.apache.org
For additional commands, e-mail: users-help@qpid.apache.org
Re: Proton revision 1627945 barfs on cmake -DCMAKE_BUILD_TYPE=Debug
..
Posted by Andrew Stitcher <as...@redhat.com>.
On Mon, 2014-09-29 at 15:05 -0400, Andrew Stitcher wrote:
> ...
> To clarify:
>
> When using C99 You must always make inline functions "static inline"
> anything else is a bug.
>
> If you compile your code using gcc or C++ then inline by itself will
> work (mostly).
And to amplify (sorry to write multiple messages) - "inline" by itself
is not even a keyword for standard C before C99, the fact that it is
accepted by gcc is an extension - it is not accepted by MSVC before 2013
(which has most of the useful bits of C99 in it).
This is one of the reasons we compile proton as C++ on MSVC.
Andrew
---------------------------------------------------------------------
To unsubscribe, e-mail: users-unsubscribe@qpid.apache.org
For additional commands, e-mail: users-help@qpid.apache.org
Re: Proton revision 1627945 barfs on cmake -DCMAKE_BUILD_TYPE=Debug
..
Posted by Andrew Stitcher <as...@redhat.com>.
On Mon, 2014-09-29 at 14:00 -0400, Ted Ross wrote:
>
> On 09/29/2014 12:01 PM, Andrew Stitcher wrote:
> > On Sat, 2014-09-27 at 16:18 +0100, Fraser Adams wrote:
> >> I just updated to r1627945 and when I do
> >> cmake -DCMAKE_BUILD_TYPE=Debug ..
> >> make
> >>
> >> I get:
> >>
> >> Linking C shared library libqpid-proton.so
> >> CMakeFiles/qpid-proton.dir/src/codec/codec.c.o: In function
> >> `pni_node_fields':
> >> /home/fadams/qpid/qpid-trunk/proton/proton-c/src/codec/codec.c:99:
> >> undefined reference to `pn_data_node'
> > ...
> >
> > Without investigating fully, this looks like it is related to
> > pn_data_node() being inline. I'd guess that in a debug build nothing is
> > inlined, but because the function is marked inline no actual routine is
> > generated for it.
> >
> > I think pn_data_node() was marked inline recently - perhaps it is not
> > also marked 'static' which I think might give this error.
>
> I can confirm that marking pn_data_node static does fix the build in
> Debug mode.
To clarify:
When using C99 You must always make inline functions "static inline"
anything else is a bug.
If you compile your code using gcc or C++ then inline by itself will
work (mostly).
Andrew
---------------------------------------------------------------------
To unsubscribe, e-mail: users-unsubscribe@qpid.apache.org
For additional commands, e-mail: users-help@qpid.apache.org
Re: Proton revision 1627945 barfs on cmake -DCMAKE_BUILD_TYPE=Debug
..
Posted by Ted Ross <tr...@redhat.com>.
On 09/29/2014 12:01 PM, Andrew Stitcher wrote:
> On Sat, 2014-09-27 at 16:18 +0100, Fraser Adams wrote:
>> I just updated to r1627945 and when I do
>> cmake -DCMAKE_BUILD_TYPE=Debug ..
>> make
>>
>> I get:
>>
>> Linking C shared library libqpid-proton.so
>> CMakeFiles/qpid-proton.dir/src/codec/codec.c.o: In function
>> `pni_node_fields':
>> /home/fadams/qpid/qpid-trunk/proton/proton-c/src/codec/codec.c:99:
>> undefined reference to `pn_data_node'
> ...
>
> Without investigating fully, this looks like it is related to
> pn_data_node() being inline. I'd guess that in a debug build nothing is
> inlined, but because the function is marked inline no actual routine is
> generated for it.
>
> I think pn_data_node() was marked inline recently - perhaps it is not
> also marked 'static' which I think might give this error.
I can confirm that marking pn_data_node static does fix the build in
Debug mode.
>
> Andrew
>
>
>
> ---------------------------------------------------------------------
> To unsubscribe, e-mail: users-unsubscribe@qpid.apache.org
> For additional commands, e-mail: users-help@qpid.apache.org
>
---------------------------------------------------------------------
To unsubscribe, e-mail: users-unsubscribe@qpid.apache.org
For additional commands, e-mail: users-help@qpid.apache.org
Re: Proton revision 1627945 barfs on cmake -DCMAKE_BUILD_TYPE=Debug
..
Posted by Andrew Stitcher <as...@redhat.com>.
On Sat, 2014-09-27 at 16:18 +0100, Fraser Adams wrote:
> I just updated to r1627945 and when I do
> cmake -DCMAKE_BUILD_TYPE=Debug ..
> make
>
> I get:
>
> Linking C shared library libqpid-proton.so
> CMakeFiles/qpid-proton.dir/src/codec/codec.c.o: In function
> `pni_node_fields':
> /home/fadams/qpid/qpid-trunk/proton/proton-c/src/codec/codec.c:99:
> undefined reference to `pn_data_node'
...
Without investigating fully, this looks like it is related to
pn_data_node() being inline. I'd guess that in a debug build nothing is
inlined, but because the function is marked inline no actual routine is
generated for it.
I think pn_data_node() was marked inline recently - perhaps it is not
also marked 'static' which I think might give this error.
Andrew
---------------------------------------------------------------------
To unsubscribe, e-mail: users-unsubscribe@qpid.apache.org
For additional commands, e-mail: users-help@qpid.apache.org