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

build failure #8

Open
iioflow opened this issue Mar 30, 2013 · 5 comments
Open

build failure #8

iioflow opened this issue Mar 30, 2013 · 5 comments

Comments

@iioflow
Copy link
Contributor

iioflow commented Mar 30, 2013

while compiling rove from latest git:


CCFLAGS="-march=native -fomit-frame-pointer -O2 -pipe" LINKFLAGS="-Wl,-O1 -Wl,--as-needed" "/var/tmp/portage/media-sound/rove-9999/work/rove-9999/waf" --prefix=/usr configure
Setting top to : /var/tmp/portage/media-sound/rove-9999/work/rove-9999
Setting out to : /var/tmp/portage/media-sound/rove-9999/work/rove-9999/build

Checking for 'gcc' (c compiler) : x86_64-pc-linux-gnu-gcc

Checking for libmonome : yes
Checking for JACK : yes
Checking for libsndfile : yes
Checking for libsamplerate : yes

'configure' finished successfully (2.088s)

Source configured.
Compiling source in /var/tmp/portage/media-sound/rove-9999/work/rove-9999 ...
"/var/tmp/portage/media-sound/rove-9999/work/rove-9999/waf" build --verbose --jobs=2
Waf: Entering directory /var/tmp/portage/media-sound/rove-9999/work/rove-9999/build' [ 1/11] c: src/list.c -> build/src/list.c.2.o 19:12:12 runner ['x86_64-pc-linux-gnu-gcc', '-march=native', '-fomit-frame-pointer', '-O2', '-pipe', '-std=c99', '-Wall', '-Werror', '-D_GNU_SOURCE', '-I/var/tmp/portage/media-sound/rove-9999/work/rove-9999/build/src/private', '-I/var/tmp/portage/media-sound/rove-9999/work/rove-9999/src/private', '-DHAVE_MONOME_H=1', '-DHAVE_JACK_JACK_H=1', '-DHAVE_SNDFILE_H=1', '-DHAVE_SRC=1', '../src/list.c', '-c', '-o', 'src/list.c.2.o'] [ 2/11] c: src/settings.c -> build/src/settings.c.2.o 19:12:12 runner ['x86_64-pc-linux-gnu-gcc', '-march=native', '-fomit-frame-pointer', '-O2', '-pipe', '-std=c99', '-Wall', '-Werror', '-D_GNU_SOURCE', '-I/var/tmp/portage/media-sound/rove-9999/work/rove-9999/build/src/private', '-I/var/tmp/portage/media-sound/rove-9999/work/rove-9999/src/private', '-DHAVE_MONOME_H=1', '-DHAVE_JACK_JACK_H=1', '-DHAVE_SNDFILE_H=1', '-DHAVE_SRC=1', '../src/settings.c', '-c', '-o', 'src/settings.c.2.o'] ../src/list.c: In function 'list_pop_raw': ../src/list.c:114:17: error: 'm' may be used uninitialized in this function [-Werror=uninitialized] cc1: all warnings being treated as errors Waf: Leaving directory/var/tmp/portage/media-sound/rove-9999/work/rove-9999/build'
Build failed
-> task in 'rove' failed (exit status 1):
{task 39625744: c list.c -> list.c.2.o}
['x86_64-pc-linux-gnu-gcc', '-march=native', '-fomit-frame-pointer', '-O2', '-pipe', '-std=c99', '-Wall', '-Werror', '-D_GNU_SOURCE', '-I/var/tmp/portage/media-sound/rove-9999/work/rove-9999/build/src/private', '-I/var/tmp/portage/media-sound/rove-9999/work/rove-9999/src/private', '-DHAVE_MONOME_H=1', '-DHAVE_JACK_JACK_H=1', '-DHAVE_SNDFILE_H=1', '-DHAVE_SRC=1', '../src/list.c', '-c', '-o', 'src/list.c.2.o']

  • ERROR: media-sound/rove-9999 failed (compile phase):
  • build failed
@iioflow
Copy link
Contributor Author

iioflow commented Apr 3, 2013

with artfwo's help on irc, it looks like this (and several other related errors) stem the use of "-Werror" in the wscript's CFLAGS. once "-Werror" is deleted, the build proceeded as normal, albeit with several other warnings about uninitialized variables.

however, rove now completely fails to run! either it's erroring out (with "segmentation fault" on loading a set) because of its own issues, or libmonome is at fault. a bit of gdb and backtrace results in this:


Program received signal SIGSEGV, Segmentation fault.
0x00007ffff76c5300 in monome_open () from /usr/lib64/libmonome.so.1
(gdb) bt
#0 0x00007ffff76c5300 in monome_open () from /usr/lib64/libmonome.so.1
#1 0x00000000004063e3 in r_monome_init ()
#2 0x0000000000406c08 in main ()


@wrl
Copy link
Owner

wrl commented Apr 6, 2013

man.

can you recompile with debug symbols (CFLAGS=-ggdb) and reproduce the
crash? it might be related to some of nedko's libmonome changes.

sorry for the slow reply, i'm busy as hell these days.

on Tue, Apr 02, 2013 at 07:50:24PM -0700, nightmorph wrote:

with artfwo's help on irc, it looks like this (and several other related errors) stem the use of "-Werror" in the wscript's CFLAGS. once "-Werror" is deleted, the build proceeded as normal, albeit with several other warnings about uninitialized variables.

however, rove now completely fails to run! either it's erroring out (with "segmentation fault" on loading a set) because of its own issues, or libmonome is at fault. a bit of gdb and backtrace results in this:


Program received signal SIGSEGV, Segmentation fault.
0x00007ffff76c5300 in monome_open () from /usr/lib64/libmonome.so.1
(gdb) bt
#0 0x00007ffff76c5300 in monome_open () from /usr/lib64/libmonome.so.1
#1 0x00000000004063e3 in r_monome_init ()
#2 0x0000000000406c08 in main ()



Reply to this email directly or view it on GitHub:
#8 (comment)

@iioflow
Copy link
Contributor Author

iioflow commented Apr 6, 2013

improved rove GDB output, with debugging symbols is below. note that i can't compile/install libmonome at the moment, because something changed in its codebase in the last 18 months such that it poisons the env ld.so cache -- maybe it doesn't use, or has a badly formatted, .pc file or something. so i'm stuck on my existing old libmonome for the foreseeable future. makes diagnosis a little harder, i know. my old unmodified libmonome fork should still work and not result in sandbox access violations at install/env-update time.


$ gdb /usr/bin/rove
GNU gdb (Gentoo 7.5.1 p2) 7.5.1
Copyright (C) 2012 Free Software Foundation, Inc.
License GPLv3+: GNU GPL version 3 or later http://gnu.org/licenses/gpl.html
This is free software: you are free to change and redistribute it.
There is NO WARRANTY, to the extent permitted by law. Type "show copying"
and "show warranty" for details.
This GDB was configured as "x86_64-pc-linux-gnu".
For bug reporting instructions, please see:
http://bugs.gentoo.org/...
Reading symbols from /usr/bin/rove...done.
(gdb) run ~/session/setlist.rv
Starting program: /usr/bin/rove ~/session/setlist.rv
warning: Could not load shared library symbols for linux-vdso.so.1.
Do you need "set solib-search-path" or "set sysroot"?
[Thread debugging using libthread_db enabled]
Using host libthread_db library "/lib64/libthread_db.so.1".

hey, welcome to rove!

loading yr sessions:
loaded /home/user/session/setlist.rv
[New Thread 0x7ffff7fcc700 (LWP 6250)]
[New Thread 0x7ffff7f4b700 (LWP 6251)]

Program received signal SIGSEGV, Segmentation fault.
0x00007ffff76c5300 in monome_open () from /usr/lib64/libmonome.so.1
(gdb) bt
#0 0x00007ffff76c5300 in monome_open () from /usr/lib64/libmonome.so.1
#1 0x0000000000406543 in r_monome_init () at ../src/monome.c:303
#2 0x0000000000406d68 in main (argc=2, argv=0x7fffffffddb8)
at ../src/rove.c:252

@wrl
Copy link
Owner

wrl commented Apr 6, 2013

yeah the crash is happening in libmonome so without debug symbols
there's not much we can do.

libmonome doesn't have a pkgconfig file. how does this poison your ld.so
cache? (i'm not sure how it works on gentoo)

@iioflow
Copy link
Contributor Author

iioflow commented Apr 6, 2013

i'll have to dig up some docs on gentoo's env variables and .pc files and expected locations of stuff, but in the mean time, i manually compiled libmonome via ./waf and debug. here's what i got:


(gdb) run ~/session/setlist.rv
Starting program: /usr/bin/rove ~/session/setlist.rv
warning: Could not load shared library symbols for linux-vdso.so.1.
Do you need "set solib-search-path" or "set sysroot"?
[Thread debugging using libthread_db enabled]
Using host libthread_db library "/lib64/libthread_db.so.1".

hey, welcome to rove!

loading yr sessions:
loaded /home/user/session/setlist.rv
[New Thread 0x7ffff7fcc700 (LWP 9859)]
[New Thread 0x7ffff7f4b700 (LWP 9860)]

Program received signal SIGSEGV, Segmentation fault.
0x00007ffff76c54ba in monome_open (
dev=0x67bf50 "osc.udp://127.0.0.1:8080/rove") at ../src/libmonome.c:105
105 monome->proto = m->proto;
(gdb) bt
#0 0x00007ffff76c54ba in monome_open (
dev=0x67bf50 "osc.udp://127.0.0.1:8080/rove") at ../src/libmonome.c:105
#1 0x0000000000406543 in r_monome_init () at ../src/monome.c:303
#2 0x0000000000406d68 in main (argc=2, argv=0x7fffffffddb8)
at ../src/rove.c:252

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

No branches or pull requests

2 participants