On Fri, Jan 16, 2009 at 10:20:50PM -0800, patrick keshishian wrote:
> On Fri, Jan 16, 2009 at 9:27 PM, Jacob Meuser <jake...@sdf.lonestar.org> 
> wrote:
> > On Sat, Jan 17, 2009 at 04:44:35AM +0000, Jacob Meuser wrote:
> >> http://www.cs.cmu.edu/~poladian/arch/project/report_ning_poladian.htm
> >
> > which led me to this, which says to use lrintf:
> >
> > http://mega-nerd.com/FPcast/
> 
> The was first on my google results, I skimmed but didn't read through it.
> 
> > so, here's a version thst uses lrintf instead of assembly.  I didn't
> > find any other uses of assembly.
> 
> fails with undefined references to sio_*():
> 
> c++ -O2 -pipe  -DOS_LINUX -DOSSMIDIIN -DFFTW_VERSION_3 -DASM_F2I_NO
> `fltk-config --cflags`  -DSNDIOAUDIOOUT  -DOS_LINUX -DOSSMIDIIN
> -DFFTW_VERSION_3 -DASM_F2I_NO `fltk-config --cflags`  -DSNDIOAUDIOOUT
>   -c -o main.o main.C
> gmake[1]: Leaving directory
> `/usr/ports/mystuff/audio/zynaddsubfx/w-zynaddsubfx-2.2.1/ZynAddSubFX-2.2.1/src'
> rm -f zynaddsubfx zynaddsubfx.exe
> rm -f Make.deps
> c++ -o zynaddsubfx */*.o *.o -lm  -lmxml -lz `fltk-config --ldflags`
> -lfftw3 -pthread -lsndio
> Misc/Bank.o(.text+0xed4): In function `Bank::swapslot(unsigned int,
> unsigned int)':
> : warning: strcpy() is almost always misused, please use strlcpy()
> Misc/Bank.o(.text+0x23c): In function `Bank::~Bank()':
> : warning: sprintf() is often misused, please use snprintf()
> Misc/Bank.o(.text+0x7d4): In function `Bank::savetoslot(unsigned int, Part*)':
> : warning: strcat() is almost always misused, please use strlcat()
> Output/SNDIOoutput.o(.text+0x68): In function `SNDIOoutput::SNDIOoutput()':
> : undefined reference to `sio_open(char*, unsigned int, int)'
> Output/SNDIOoutput.o(.text+0xb8): In function `SNDIOoutput::SNDIOoutput()':
> : undefined reference to `sio_initpar(sio_par*)'
> Output/SNDIOoutput.o(.text+0x110): In function `SNDIOoutput::SNDIOoutput()':
> : undefined reference to `sio_setpar(sio_hdl*, sio_par*)'
> Output/SNDIOoutput.o(.text+0x138): In function `SNDIOoutput::SNDIOoutput()':
> : undefined reference to `sio_getpar(sio_hdl*, sio_par*)'
> Output/SNDIOoutput.o(.text+0x1d0): In function `SNDIOoutput::SNDIOoutput()':
> : undefined reference to `sio_start(sio_hdl*)'
> Output/SNDIOoutput.o(.text+0x280): In function `SNDIOoutput::SNDIOoutput()':
> : undefined reference to `sio_open(char*, unsigned int, int)'
> Output/SNDIOoutput.o(.text+0x2d0): In function `SNDIOoutput::SNDIOoutput()':
> : undefined reference to `sio_initpar(sio_par*)'
> Output/SNDIOoutput.o(.text+0x328): In function `SNDIOoutput::SNDIOoutput()':
> : undefined reference to `sio_setpar(sio_hdl*, sio_par*)'
> Output/SNDIOoutput.o(.text+0x350): In function `SNDIOoutput::SNDIOoutput()':
> : undefined reference to `sio_getpar(sio_hdl*, sio_par*)'
> Output/SNDIOoutput.o(.text+0x3e8): In function `SNDIOoutput::SNDIOoutput()':
> : undefined reference to `sio_start(sio_hdl*)'
> Output/SNDIOoutput.o(.text+0x500): In function
> `SNDIOoutput::SNDIOout(float*, float*)':
> : undefined reference to `sio_write(sio_hdl*, void*, unsigned long)'
> Output/SNDIOoutput.o(.text+0x5e0): In function `SNDIOoutput::~SNDIOoutput()':
> : undefined reference to `sio_close(sio_hdl*)'
> Output/SNDIOoutput.o(.text+0x640): In function `SNDIOoutput::~SNDIOoutput()':
> : undefined reference to `sio_close(sio_hdl*)'
> gmake: *** [all] Error 1
> *** Error code 2
> 
> Stop in /usr/ports/mystuff/audio/zynaddsubfx (line 2172 of
> /usr/ports/infrastructure/mk/bsd.port.mk).
> 
> 
> I running -current built with cvs update on Jan 10th:
> OpenBSD 4.4-current (GENERIC) #1: Sat Jan 10 17:26:43 PST 2009
> 
> Quick fix is to surround '#include <sndio.h>' with
> 
> #ifdef __cplusplus
> extern "C" {
> #endif
> 
> But shouldn't this be done in sndio.h header file itself with
> __{BEGIN,END}_DECLS pairs?

well, maybe.

I'd like to know why it's needed on ppc and not i386 or amd64.

seems like the problem is in ppc, or at least there's an (unnecessary?)
inconsistency between archs.

> 
> Also I see quite a lot of systrace denial for fluid trying to write to
> home directory:
> 
> systrace: deny user: sidster, prog: /usr/local/bin/fluid, pid:
> 23911(0)[22438], policy: /usr/bin/env, filters: 195, syscall:
> native-fswrite(136), filename: /zynaddsubfx-2.2.1_writes_to_HOME
> systrace: deny user: sidster, prog: /usr/local/bin/fluid, pid:
> 23911(0)[22438], policy: /usr/bin/env, filters: 195, syscall:
> native-fswrite(136), filename: /zynaddsubfx-2.2.1_writes_to_HOME/.fltk
> 
> fluid is part of fltk-1.1.7p0 package.

yeah, I see that too.  also with other fluid using ports.


thanks for your feedback :)

-- 
jake...@sdf.lonestar.org
SDF Public Access UNIX System - http://sdf.lonestar.org

Reply via email to