You are viewing a plain text version of this content. The canonical link for it is here.
Posted to dev@qpid.apache.org by "Darryl L. Pierce (JIRA)" <ji...@apache.org> on 2014/03/19 14:21:43 UTC

[jira] [Commented] (QPID-5629) Build fails with ruby 1.9

    [ https://issues.apache.org/jira/browse/QPID-5629?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=13940452#comment-13940452 ] 

Darryl L. Pierce commented on QPID-5629:
----------------------------------------

The error output above seems unrelated to the version of Ruby installed. Instead the output is due to the build being done with _-Werror=format-security_, which complains when any of the printf family of functions is invoked *without* a format string present:

{noformat}
/home/sebastien/devel/admin-repository/qpid-cpp/qpid-cpp-0.26/obj-x86_64-linux-gnu/bindings/qpid/ruby/rubyRUBY_wrap.cxx:2339:36: error: format not a string literal and no format arguments [-Werror=format-security]
rb_raise(merror, error.what());
^
{noformat}

This particular problem was fixed in QPID-5499 (r1565651). To build the 0.26 branch you can apply that patch on top of the codebase, which is what the Fedora packaging system does for 0.26.

That all said, I don't believe we should limit Qpid's Ruby bindings to only building against Ruby 1.8. That would be an artificial limitation that would prevent those without more recently version of Ruby installed (2.1.1 is the current stable release) from being able to use the Ruby language bindings.

> Build fails with ruby 1.9
> -------------------------
>
>                 Key: QPID-5629
>                 URL: https://issues.apache.org/jira/browse/QPID-5629
>             Project: Qpid
>          Issue Type: Bug
>          Components: C++ Broker, C++ Client
>    Affects Versions: 0.26
>         Environment: Ubuntu Saucy
>            Reporter: Sébastien GALLET
>            Assignee: Darryl L. Pierce
>              Labels: patch
>             Fix For: 0.27
>
>         Attachments: ruby1.8.patch
>
>
> When ruby 1.9 is used or when ruby 1.8 AND ruby 1.9 are installed, the build fails.
> A patch is attached to use ruby 1.8. It must be used AFTER the one proposed in bug #5628
> [ 97%] Building CXX object bindings/qpid/ruby/CMakeFiles/cqpid_ruby.dir/rubyRUBY_wrap.cxx.o
> cd /home/sebastien/devel/admin-repository/qpid-cpp/qpid-cpp-0.26/obj-x86_64-linux-gnu/bindings/qpid/ruby && /usr/bin/c++   -Dcqpid_ruby_EXPORTS -g -O2 -fstack-protector --param=ssp-buffer-size=4 -Wformat -Werror=format-security -Wno-error=cast-qual -Wno-error=cast-align -D_FORTIFY_SOURCE=2  -O2 -g -DNDEBUG -fPIC -I/usr/include/ruby-1.9.1 -I/usr/include/ruby-1.9.1/x86_64-linux -I/home/sebastien/devel/admin-repository/qpid-cpp/qpid-cpp-0.26/include -I/home/sebastien/devel/admin-repository/qpid-cpp/qpid-cpp-0.26/bindings    -fno-strict-aliasing -o CMakeFiles/cqpid_ruby.dir/rubyRUBY_wrap.cxx.o -c /home/sebastien/devel/admin-repository/qpid-cpp/qpid-cpp-0.26/obj-x86_64-linux-gnu/bindings/qpid/ruby/rubyRUBY_wrap.cxx
> /home/sebastien/devel/admin-repository/qpid-cpp/qpid-cpp-0.26/obj-x86_64-linux-gnu/bindings/qpid/ruby/rubyRUBY_wrap.cxx: In function ‘VALUE VariantToRb(const qpid::types::Variant*)’:
> /home/sebastien/devel/admin-repository/qpid-cpp/qpid-cpp-0.26/obj-x86_64-linux-gnu/bindings/qpid/ruby/rubyRUBY_wrap.cxx:2237:38: error: format not a string literal and no format arguments [-Werror=format-security]
>              rb_raise(error, ex.what());
>                                       ^
> /home/sebastien/devel/admin-repository/qpid-cpp/qpid-cpp-0.26/obj-x86_64-linux-gnu/bindings/qpid/ruby/rubyRUBY_wrap.cxx: In function ‘VALUE _wrap_new_Address__SWIG_0(int, VALUE*, VALUE)’:
> /home/sebastien/devel/admin-repository/qpid-cpp/qpid-cpp-0.26/obj-x86_64-linux-gnu/bindings/qpid/ruby/rubyRUBY_wrap.cxx:2307:36: error: format not a string literal and no format arguments [-Werror=format-security]
>        rb_raise(merror, error.what());
>                                     ^
> /home/sebastien/devel/admin-repository/qpid-cpp/qpid-cpp-0.26/obj-x86_64-linux-gnu/bindings/qpid/ruby/rubyRUBY_wrap.cxx:2311:36: error: format not a string literal and no format arguments [-Werror=format-security]
>        rb_raise(merror, error.what());
>                                     ^
> /home/sebastien/devel/admin-repository/qpid-cpp/qpid-cpp-0.26/obj-x86_64-linux-gnu/bindings/qpid/ruby/rubyRUBY_wrap.cxx:2315:36: error: format not a string literal and no format arguments [-Werror=format-security]
>        rb_raise(merror, error.what());
>                                     ^
> /home/sebastien/devel/admin-repository/qpid-cpp/qpid-cpp-0.26/obj-x86_64-linux-gnu/bindings/qpid/ruby/rubyRUBY_wrap.cxx:2319:36: error: format not a string literal and no format arguments [-Werror=format-security]
>        rb_raise(merror, error.what());
>                                     ^
> /home/sebastien/devel/admin-repository/qpid-cpp/qpid-cpp-0.26/obj-x86_64-linux-gnu/bindings/qpid/ruby/rubyRUBY_wrap.cxx:2323:36: error: format not a string literal and no format arguments [-Werror=format-security]
>        rb_raise(merror, error.what());
>                                     ^
> /home/sebastien/devel/admin-repository/qpid-cpp/qpid-cpp-0.26/obj-x86_64-linux-gnu/bindings/qpid/ruby/rubyRUBY_wrap.cxx:2327:36: error: format not a string literal and no format arguments [-Werror=format-security]
>        rb_raise(merror, error.what());
>                                     ^
> /home/sebastien/devel/admin-repository/qpid-cpp/qpid-cpp-0.26/obj-x86_64-linux-gnu/bindings/qpid/ruby/rubyRUBY_wrap.cxx:2331:36: error: format not a string literal and no format arguments [-Werror=format-security]
>        rb_raise(merror, error.what());
>                                     ^
> /home/sebastien/devel/admin-repository/qpid-cpp/qpid-cpp-0.26/obj-x86_64-linux-gnu/bindings/qpid/ruby/rubyRUBY_wrap.cxx:2335:36: error: format not a string literal and no format arguments [-Werror=format-security]
>        rb_raise(merror, error.what());
>                                     ^
> /home/sebastien/devel/admin-repository/qpid-cpp/qpid-cpp-0.26/obj-x86_64-linux-gnu/bindings/qpid/ruby/rubyRUBY_wrap.cxx:2339:36: error: format not a string literal and no format arguments [-Werror=format-security]
>        rb_raise(merror, error.what());
>                                     ^



--
This message was sent by Atlassian JIRA
(v6.2#6252)

---------------------------------------------------------------------
To unsubscribe, e-mail: dev-unsubscribe@qpid.apache.org
For additional commands, e-mail: dev-help@qpid.apache.org