Subject: pkg/36521: audio/solfege fails to compile on NetBSD 3.1/i386
To: None <pkg-manager@netbsd.org, gnats-admin@netbsd.org,>
From: David H. Gutteridge <dhgutteridge@sympatico.ca>
List: pkgsrc-bugs
Date: 06/21/2007 03:45:03
>Number: 36521
>Category: pkg
>Synopsis: audio/solfege fails to compile on NetBSD 3.1/i386
>Confidential: no
>Severity: serious
>Priority: medium
>Responsible: pkg-manager
>State: open
>Class: sw-bug
>Submitter-Id: net
>Arrival-Date: Thu Jun 21 03:45:03 +0000 2007
>Originator: David H. Gutteridge
>Release: NetBSD 3.1
>Organization:
>Environment:
System: NetBSD arcusv.nonus-porta.net 3.1 NetBSD 3.1 (ARCUSV) #0: Sat May 12
18:56:15 EDT 2007
root@arcusv.nonus-porta.net:/usr/src/sys/arch/macppc/compile/ARCUSV macppc
Architecture: powerpc
Machine: macppc
>Description:
When trying to compile audio/solfege, I've run into multiple problems.
Problem number one:
cc -O2 -march=athlon-tbird -pipe -I/usr/pkg/include
-I/usr/pkg/include/python2.4 -I/usr/include
-I/usr/pkg/include/freetype2 -I/usr/X11R6/include -I/usr/src/linux/include
-Wall -pedantic -fPIC
-DHAVE_CONFIG_H -O2 -march=athlon-tbird -pipe -I/usr/pkg/include
-I/usr/pkg/include/python2.4
-I/usr/include -I/usr/pkg/include/freetype2 -I/usr/X11R6/include
-I/usr/src/linux/include -Wall
-pedantic -fPIC -I/usr/pkg/include -I/usr/pkg/include/python2.4
-I/usr/include -I/usr/pkg/includ
e/freetype2 -I/usr/X11R6/include -c -o soundcard/macro_to_function.o
soundcard/macro_to_functio
n.c
soundcard/macro_to_function.c: In function `seq_bender':
soundcard/macro_to_function.c:38: warning: implicit declaration of function
`SEQ_BENDER'
soundcard/macro_to_function.c: In function `seq_start_note':
soundcard/macro_to_function.c:47: warning: implicit declaration of function
`SEQ_START_NOTE'
soundcard/macro_to_function.c: In function `seq_stop_note':
soundcard/macro_to_function.c:56: warning: implicit declaration of function
`SEQ_STOP_NOTE'
soundcard/macro_to_function.c: In function `seq_set_patch':
soundcard/macro_to_function.c:64: warning: implicit declaration of function
`SEQ_SET_PATCH'
soundcard/macro_to_function.c:65: error: parse error before '}' token
soundcard/macro_to_function.c: In function `seq_delta_time':
soundcard/macro_to_function.c:72: warning: implicit declaration of function
`SEQ_DELTA_TIME'
soundcard/macro_to_function.c: In function `seq_start_timer':
soundcard/macro_to_function.c:81: warning: implicit declaration of function
`SEQ_START_TIMER'
gmake: *** [soundcard/macro_to_function.o] Error 1
*** Error code 2
Stop.
make: stopped in /usr/pkgsrc/audio/solfege
*** Error code 1
Stop.
make: stopped in /usr/pkgsrc/audio/solfege
That was trivial to fix (see "fix" area entry).
Then the very next file to be compiled spews out more errors.
cc -O2 -march=athlon-tbird -pipe -I/usr/pkg/include
-I/usr/pkg/include/python2.4 -I/usr/include
-I/usr/pkg/include/freetype2 -I/usr/X11R6/include -I/usr/src/linux/include
-Wall -pedantic -fPIC
-DHAVE_CONFIG_H -O2 -march=athlon-tbird -pipe -I/usr/pkg/include
-I/usr/pkg/include/python2.4
-I/usr/include -I/usr/pkg/include/freetype2 -I/usr/X11R6/include
-I/usr/src/linux/include -Wall
-pedantic -fPIC -I/usr/pkg/include -I/usr/pkg/include/python2.4
-I/usr/include -I/usr/pkg/includ
e/freetype2 -I/usr/X11R6/include -c -o soundcard/macro_to_function.o
soundcard/macro_to_functio
n.c
soundcard/macro_to_function.c: In function `seq_bender':
soundcard/macro_to_function.c:38: warning: implicit declaration of function
`SEQ_BENDER'
soundcard/macro_to_function.c: In function `seq_start_note':
soundcard/macro_to_function.c:47: warning: implicit declaration of function
`SEQ_START_NOTE'
soundcard/macro_to_function.c: In function `seq_stop_note':
soundcard/macro_to_function.c:56: warning: implicit declaration of function
`SEQ_STOP_NOTE'
soundcard/macro_to_function.c: In function `seq_set_patch':
soundcard/macro_to_function.c:64: warning: implicit declaration of function
`SEQ_SET_PATCH'
soundcard/macro_to_function.c: In function `seq_delta_time':
soundcard/macro_to_function.c:72: warning: implicit declaration of function
`SEQ_DELTA_TIME'
soundcard/macro_to_function.c: In function `seq_start_timer':
soundcard/macro_to_function.c:81: warning: implicit declaration of function
`SEQ_START_TIMER'
cc -O2 -march=athlon-tbird -pipe -I/usr/pkg/include
-I/usr/pkg/include/python2.4 -I/usr/include
-I/usr/pkg/include/freetype2 -I/usr/X11R6/include -I/usr/src/linux/include
-Wall -pedantic -fPIC
-DHAVE_CONFIG_H -O2 -march=athlon-tbird -pipe -I/usr/pkg/include
-I/usr/pkg/include/python2.4
-I/usr/include -I/usr/pkg/include/freetype2 -I/usr/X11R6/include
-I/usr/src/linux/include -Wall
-pedantic -fPIC -I/usr/pkg/include -I/usr/pkg/include/python2.4
-I/usr/include -I/usr/pkg/includ
e/freetype2 -I/usr/X11R6/include -c -o soundcard/solfege_c_midi.o
soundcard/solfege_c_midi.c
soundcard/solfege_c_midi.c:30: error: parse error before numeric constant
soundcard/solfege_c_midi.c:30: warning: type defaults to `int' in
declaration of `SEQ_DEFINEBUF'
soundcard/solfege_c_midi.c:30: error: ISO C forbids data definition with no
type or storage clas
s
soundcard/solfege_c_midi.c: In function `seqbuf_dump':
soundcard/solfege_c_midi.c:35: error: `_seqbufptr' undeclared (first use in
this function)
soundcard/solfege_c_midi.c:35: error: (Each undeclared identifier is
reported only once
soundcard/solfege_c_midi.c:35: error: for each function it appears in.)
soundcard/solfege_c_midi.c:36: error: `_seqbuf' undeclared (first use in
this function)
soundcard/solfege_c_midi.c: In function `sndctl_seq_nrsynths':
soundcard/solfege_c_midi.c:44: error: `SNDCTL_SEQ_NRSYNTHS' undeclared
(first use in this functi
on)
soundcard/solfege_c_midi.c:55:36: macro "ioctl" requires 3 arguments, but
only 2 given
soundcard/solfege_c_midi.c: In function `sndctl_tmr_timebase':
soundcard/solfege_c_midi.c:69: error: `SNDCTL_TMR_TIMEBASE' undeclared
(first use in this functi
on)
soundcard/solfege_c_midi.c: In function `sndctl_tmr_tempo':
soundcard/solfege_c_midi.c:82: error: `SNDCTL_TMR_TEMPO' undeclared (first
use in this function)
soundcard/solfege_c_midi.c: In function `sndctl_seq_gettime':
soundcard/solfege_c_midi.c:91: error: `SNDCTL_SEQ_GETTIME' undeclared (first
use in this functio
n)
soundcard/solfege_c_midi.c: In function `get_synth_name':
soundcard/solfege_c_midi.c:104: error: storage size of `si' isn't known
soundcard/solfege_c_midi.c:106: error: `SNDCTL_SYNTH_INFO' undeclared (first
use in this functio
n)
soundcard/solfege_c_midi.c:104: warning: unused variable `si'
soundcard/solfege_c_midi.c: In function `get_synth_nr_voices':
soundcard/solfege_c_midi.c:116: error: storage size of `si' isn't known
soundcard/solfege_c_midi.c:118: error: `SNDCTL_SYNTH_INFO' undeclared (first
use in this functio
n)
soundcard/solfege_c_midi.c:116: warning: unused variable `si'
gmake: *** [soundcard/solfege_c_midi.o] Error 1
*** Error code 2
Stop.
make: stopped in /usr/pkgsrc/audio/solfege
*** Error code 1
Stop.
make: stopped in /usr/pkgsrc/audio/solfege
It appears it's expecting functionality that doesn't exist (at least in
that guise) in NetBSD.
>How-To-Repeat:
>Fix:
The fix for the first problem is trivial:
--- macro_to_function.c.orig 2007-05-10 05:21:47.000000000 -0400
+++ macro_to_function.c 2007-06-08 00:19:56.000000000 -0400
@@ -61,7 +61,7 @@
#ifdef be_verbose
printf("set_patch devnum:%i, chan:%i, patch:%i\n", devnum, chan, patch);
#endif
- SEQ_SET_PATCH(devnum, chan, patch)
+ SEQ_SET_PATCH(devnum, chan, patch);
}
void seq_delta_time(int ticks)
After that, it started to seem a bit more complicated...
>Unformatted: