Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Issues compiling PriorityQueue gem #78

Open
TheMeier opened this issue Nov 1, 2019 · 0 comments
Open

Issues compiling PriorityQueue gem #78

TheMeier opened this issue Nov 1, 2019 · 0 comments

Comments

@TheMeier
Copy link

TheMeier commented Nov 1, 2019

puppet-forge-server uses https://rubygems.org/gems/lrucache wich uses https://rubygems.org/gems/PriorityQueue both look somewhat unmaintained. Compiling the latter on modern gcc seems to somewhat problematic:

compiling priority_queue.c
priority_queue.c: In function 'priority_node_free_recursively':
priority_queue.c:80:3: warning: ISO C90 forbids mixed declarations and code [-Wdeclaration-after-statement]
   80 |   priority_node* n1 = n;
      |   ^~~~~~~~~~~~~
priority_queue.c: In function 'link_nodes':
priority_queue.c:95:3: warning: ISO C90 forbids mixed declarations and code [-Wdeclaration-after-statement]
   95 |   priority_node* child = b1->child;
      |   ^~~~~~~~~~~~~
priority_queue.c: In function 'assert_pointers_correct':
priority_queue.c:210:3: warning: ISO C90 forbids mixed declarations and code [-Wdeclaration-after-statement]
  210 |   priority_node *n1 = n->right;
      |   ^~~~~~~~~~~~~
priority_queue.c: In function 'consolidate_queue':
priority_queue.c:235:3: warning: ISO C90 forbids mixed declarations and code [-Wdeclaration-after-statement]
  235 |   priority_node* n = NULL;
      |   ^~~~~~~~~~~~~
priority_queue.c: In function 'priority_queue_delete_min':
priority_queue.c:258:3: warning: ISO C90 forbids mixed declarations and code [-Wdeclaration-after-statement]
  258 |   priority_node* min = q->min;
      |   ^~~~~~~~~~~~~
priority_queue.c: In function 'pq_mark_recursive':
priority_queue.c:459:3: warning: ISO C90 forbids mixed declarations and code [-Wdeclaration-after-statement]
  459 |   priority_node* n1 = n->child;
      |   ^~~~~~~~~~~~~
priority_queue.c: In function 'pq_mark':
priority_queue.c:472:3: warning: ISO C90 forbids mixed declarations and code [-Wdeclaration-after-statement]
  472 |   priority_node* n2 = n1;
      |   ^~~~~~~~~~~~~
priority_queue.c: In function 'pq_node2dot':
priority_queue.c:804:3: warning: ISO C90 forbids mixed declarations and code [-Wdeclaration-after-statement]
  804 |   unsigned int i;
      |   ^~~~~~~~
At top level:
priority_queue.c:207:6: warning: 'assert_pointers_correct' defined but not used [-Wunused-function]
  207 | void assert_pointers_correct(priority_node* n) {
      |      ^~~~~~~~~~~~~~~~~~~~~~~
In file included from /home/cmaser/.rbenv/versions/2.5.3/include/ruby-2.5.0/ruby.h:33,
                 from priority_queue.c:24:
priority_queue.c: In function 'pq_node2dot':
/home/cmaser/.rbenv/versions/2.5.3/include/ruby-2.5.0/ruby/ruby.h:1779:3: error: call to 'rb_varargs_bad_length' declared with attribute error:  argument length doesn't
match
 1779 |   rb_varargs_bad_length(argc, vargc)), \
      |   ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
/home/cmaser/.rbenv/versions/2.5.3/include/ruby-2.5.0/ruby/ruby.h:2474:6: note: in expansion of macro 'rb_varargs_argc_check'
 2474 |      rb_varargs_argc_check(rb_funcall_argc, rb_funcall_nargs), \
      |      ^~~~~~~~~~~~~~~~~~~~~
priority_queue.c:820:4: note: in expansion of macro 'rb_funcall'
  820 |    rb_funcall(Qnil, id_format, 4, rb_str_new2("NODE%i -> NODE%i;\n"),
      |    ^~~~~~~~~~
/home/cmaser/.rbenv/versions/2.5.3/include/ruby-2.5.0/ruby/ruby.h:1779:3: error: call to 'rb_varargs_bad_length' declared with attribute error:  argument length doesn't
match
 1779 |   rb_varargs_bad_length(argc, vargc)), \
      |   ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
/home/cmaser/.rbenv/versions/2.5.3/include/ruby-2.5.0/ruby/ruby.h:2474:6: note: in expansion of macro 'rb_varargs_argc_check'
 2474 |      rb_varargs_argc_check(rb_funcall_argc, rb_funcall_nargs), \
      |      ^~~~~~~~~~~~~~~~~~~~~
priority_queue.c:820:4: note: in expansion of macro 'rb_funcall'
  820 |    rb_funcall(Qnil, id_format, 4, rb_str_new2("NODE%i -> NODE%i;\n"),
      |    ^~~~~~~~~~
In function 'pq_node2dot',
    inlined from 'pq_node2dot' at priority_queue.c:817:7,
    inlined from 'pq_to_dot' at priority_queue.c:841:7:
/home/cmaser/.rbenv/versions/2.5.3/include/ruby-2.5.0/ruby/ruby.h:1779:3: error: call to 'rb_varargs_bad_length' declared with attribute error:  argument length doesn't
match
 1779 |   rb_varargs_bad_length(argc, vargc)), \
      |   ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
/home/cmaser/.rbenv/versions/2.5.3/include/ruby-2.5.0/ruby/ruby.h:2474:6: note: in expansion of macro 'rb_varargs_argc_check'
 2474 |      rb_varargs_argc_check(rb_funcall_argc, rb_funcall_nargs), \
      |      ^~~~~~~~~~~~~~~~~~~~~
priority_queue.c:820:4: note: in expansion of macro 'rb_funcall'
  820 |    rb_funcall(Qnil, id_format, 4, rb_str_new2("NODE%i -> NODE%i;\n"),
      |    ^~~~~~~~~~
/home/cmaser/.rbenv/versions/2.5.3/include/ruby-2.5.0/ruby/ruby.h:1779:3: error: call to 'rb_varargs_bad_length' declared with attribute error:  argument length doesn't
match
 1779 |   rb_varargs_bad_length(argc, vargc)), \
      |   ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
/home/cmaser/.rbenv/versions/2.5.3/include/ruby-2.5.0/ruby/ruby.h:2474:6: note: in expansion of macro 'rb_varargs_argc_check'
 2474 |      rb_varargs_argc_check(rb_funcall_argc, rb_funcall_nargs), \
      |      ^~~~~~~~~~~~~~~~~~~~~
priority_queue.c:820:4: note: in expansion of macro 'rb_funcall'
  820 |    rb_funcall(Qnil, id_format, 4, rb_str_new2("NODE%i -> NODE%i;\n"),
      |    ^~~~~~~~~~
/home/cmaser/.rbenv/versions/2.5.3/include/ruby-2.5.0/ruby/ruby.h:1779:3: error: call to 'rb_varargs_bad_length' declared with attribute error:  argument length doesn't
match
 1779 |   rb_varargs_bad_length(argc, vargc)), \
      |   ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
/home/cmaser/.rbenv/versions/2.5.3/include/ruby-2.5.0/ruby/ruby.h:2474:6: note: in expansion of macro 'rb_varargs_argc_check'
 2474 |      rb_varargs_argc_check(rb_funcall_argc, rb_funcall_nargs), \
      |      ^~~~~~~~~~~~~~~~~~~~~
priority_queue.c:820:4: note: in expansion of macro 'rb_funcall'
  820 |    rb_funcall(Qnil, id_format, 4, rb_str_new2("NODE%i -> NODE%i;\n"),
      |    ^~~~~~~~~~
/home/cmaser/.rbenv/versions/2.5.3/include/ruby-2.5.0/ruby/ruby.h:1779:3: error: call to 'rb_varargs_bad_length' declared with attribute error:  argument length doesn't
match
 1779 |   rb_varargs_bad_length(argc, vargc)), \
      |   ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
/home/cmaser/.rbenv/versions/2.5.3/include/ruby-2.5.0/ruby/ruby.h:2474:6: note: in expansion of macro 'rb_varargs_argc_check'
 2474 |      rb_varargs_argc_check(rb_funcall_argc, rb_funcall_nargs), \
      |      ^~~~~~~~~~~~~~~~~~~~~
priority_queue.c:820:4: note: in expansion of macro 'rb_funcall'
  820 |    rb_funcall(Qnil, id_format, 4, rb_str_new2("NODE%i -> NODE%i;\n"),
      |    ^~~~~~~~~~
In function 'pq_node2dot',
    inlined from 'pq_to_dot' at priority_queue.c:841:7:
/home/cmaser/.rbenv/versions/2.5.3/include/ruby-2.5.0/ruby/ruby.h:1779:3: error: call to 'rb_varargs_bad_length' declared with attribute error:  argument length doesn't
match
 1779 |   rb_varargs_bad_length(argc, vargc)), \
      |   ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
/home/cmaser/.rbenv/versions/2.5.3/include/ruby-2.5.0/ruby/ruby.h:2474:6: note: in expansion of macro 'rb_varargs_argc_check'
 2474 |      rb_varargs_argc_check(rb_funcall_argc, rb_funcall_nargs), \
      |      ^~~~~~~~~~~~~~~~~~~~~
priority_queue.c:820:4: note: in expansion of macro 'rb_funcall'
  820 |    rb_funcall(Qnil, id_format, 4, rb_str_new2("NODE%i -> NODE%i;\n"),
      |    ^~~~~~~~~~
/home/cmaser/.rbenv/versions/2.5.3/include/ruby-2.5.0/ruby/ruby.h:1779:3: error: call to 'rb_varargs_bad_length' declared with attribute error:  argument length doesn't
match
 1779 |   rb_varargs_bad_length(argc, vargc)), \
      |   ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
/home/cmaser/.rbenv/versions/2.5.3/include/ruby-2.5.0/ruby/ruby.h:2474:6: note: in expansion of macro 'rb_varargs_argc_check'
 2474 |      rb_varargs_argc_check(rb_funcall_argc, rb_funcall_nargs), \
      |      ^~~~~~~~~~~~~~~~~~~~~
priority_queue.c:820:4: note: in expansion of macro 'rb_funcall'
  820 |    rb_funcall(Qnil, id_format, 4, rb_str_new2("NODE%i -> NODE%i;\n"),
      |    ^~~~~~~~~~
priority_queue.c: At top level:
cc1: warning: unrecognized command line option '-Wno-self-assign'
cc1: warning: unrecognized command line option '-Wno-constant-logical-operand'
cc1: warning: unrecognized command line option '-Wno-parentheses-equality'
make: *** [Makefile:242: priority_queue.o] Error 1

make failed, exit code 2

Gem files will remain installed in /home/cmaser/GIT/TheMeier/puppet-forge-server/vendor/bundle/ruby/2.5.0/gems/PriorityQueue-0.1.2 for inspection.
Results logged to /home/cmaser/GIT/TheMeier/puppet-forge-server/vendor/bundle/ruby/2.5.0/extensions/x86_64-linux/2.5.0-static/PriorityQueue-0.1.2/gem_make.out

An error occurred while installing PriorityQueue (0.1.2), and Bundler cannot continue.
Make sure that `gem install PriorityQueue -v '0.1.2' --source 'https://rubygems.org/'` succeeds before bundling.

In Gemfile:
  puppet-forge-server was resolved to 1.10.1, which depends on
    lrucache was resolved to 0.1.4, which depends on
      PriorityQueue
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

Successfully merging a pull request may close this issue.

1 participant