fluid-dev
[Top][All Lists]
Advanced

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

Re: [fluid-dev] trying to make fluidsynth on mac os x


From: Joe Corneli
Subject: Re: [fluid-dev] trying to make fluidsynth on mac os x
Date: Wed, 28 May 2003 13:01:17 -0500 (CDT)

Hi Josh and all,

Well, another day, another error, right?

fluid_sys.c: In function `fluid_sys_config':
fluid_sys.c:736: inconsistent operand constraints in an `asm'
make[2]: *** [fluid_sys.lo] Error 1
make[1]: *** [all] Error 2
make: *** [all-recursive] Error 1

The weird thing about this one is that I would have thought DARWIN _would_
be defined (see below).  Maybe I cut too much when following the earlier
set of instructions (though I think I was following them fairly
meticulously)?

Copied below you'll find some context.  I hope this stuff isn't too much
of a headache for you...  its definitely too advanced for me to guess
what's going on.

Joe

#if defined(DARWIN)  /* line 707 */

double rdtsc(void)
{
  return 0.0;
}

double fluid_estimate_cpu_frequency(void)
{
  return 1.0;
}

#else

double rdtsc(void)
{
  unsigned int a, b;

  __asm__ ("rdtsc" : "=a" (a), "=d" (b));
  return (double)b * (double)0x10000 * (double)0x10000 + a;
}

double fluid_estimate_cpu_frequency(void)
{
  double start, stop;
  unsigned int a0, b0, a1, b1;
  unsigned int before, after;

  before = fluid_curtime();
  __asm__ ("rdtsc" : "=a" (a0), "=d" (b0));  /* line 736 */

  sleep(1);

  after = fluid_curtime();
  __asm__ ("rdtsc" : "=a" (a1), "=d" (b1));


  start = (double)b0 * (double)0x10000 * (double)0x10000 + a0;
  stop = (double)b1 * (double)0x10000 * (double)0x10000 + a1;

  return 1000 * (stop - start) / (after - before);
}
#endif



On 27 May 2003, Josh Green wrote:

> On Sat, 2003-05-24 at 16:13, Joe Corneli wrote:
> > > compiler to fail, but the config.log will probably shed some light on
> > > that
> > 
> > Yes, it did.  Thanks!
> > 
> > See http://www.ma.utexas.edu/~jcorneli/config.log  if you are interested
> > in the details. 
> > 
> > Basically, it indicated that the call to configure should have been:
> > 
> >  ./configure CPPFLAGS="-I/sw/include" LDFLAGS="-L/sw/lib"
> > 
> > (no spaces in quoted bits).
> > 
> > Maybe this is a shell-dependent thing?
> > 
> 
> Yeah, perhaps it is. Looks like it was interpreting the switch and the
> path to be separate arguments.
> 
> > > So the directory to include should be where the "readline" directory is
> > > (which I thought would be /sw/include).
> > 
> > Yes, that is correct:
> > 
> > [fluidsynth-1.0.1]%locate readline.h
> > *snip*
> > /sw/include/readline/readline.h
> > *snip*
> > 
> > > You could disable readline support (like Frank Barknecht mentioned),
> > > which I think will disable the command line client. Probably not what
> > > you want though, if you are using FluidSynth stand alone. 
> > 
> > Yes, I want to use it on the command line to take midi commands from the
> > program clavier (http://helgo.net/fika/clavier) and make music...
> > 
> > Anyway, before we get to that point, I'm going to have to get the thing to
> > compile!  I now have some new problems in make:
> > 
> > fluid_sys.c:1108: undefined type, found `socklen_t'
> > cpp-precomp: warning: errors during smart preprocessing, retrying in basic
> > mode
> > fluid_sys.c: In function `fluid_server_socket_run':
> > fluid_sys.c:1108: `socklen_t' undeclared (first use in this function)
> > fluid_sys.c:1108: (Each undeclared identifier is reported only once
> > fluid_sys.c:1108: for each function it appears in.)
> > fluid_sys.c:1108: parse error before "addrlen"
> > fluid_sys.c:1114: `addrlen' undeclared (first use in this function)
> > make[2]: *** [fluid_sys.lo] Error 1
> > make[1]: *** [all] Error 2
> > make: *** [all-recursive] Error 1
> > 
> > Maybe I need to specify more info in the library flag string?  Or maybe
> > there is something more critical going on?
> > 
> 
> Me thinks there is something more critical going on. Looks to me like
> its related to the TCP/IP control interface. I'm not sure about the
> proper way to fix this, since I'm not familiar with OS X. I know how you
> could just get it to work for you though. Here are some directions for
> hacking out the TCP/IP server control interface:
> 
> In src/fluid_cmd.c find the line that says (line 1588 for me):
> #if !defined(WITHOUT_SERVER)
> 
> And change it to:
> #if 0
> 
> In src/fluid_sys.c find the comment (line 1028 for me):
> 
> /***************************************************************
>  *
>  *               Sockets
>  *
>  */
> 
> Remove everything from this comment to the end of the file.
> 
> In src/fluidsynth.c you'll need to change a couple of lines.
> Line 555 and line 587 contain:
> #if !defined(MACINTOSH) && !defined(WIN32)
> 
> Change both of them to:
> #if 0
> 
> > Joe
> > 
> > PS.  I'm not subscribed to the FluidSynth Devel list, so if people have
> > more comments for me, please send or copy to my personal address as Josh
> > has been doing. Thanks!  If I ever become a fluidsynth developer, I'll
> > subscribe to the list :>
> 
> Hope that works :) Cheers.
>       Josh Green
> 





reply via email to

[Prev in Thread] Current Thread [Next in Thread]