From: Uriel C. <ur...@ad...> - 2003-06-12 02:03:29
|
Steve: It is now working with the "make" from Cygwin. I had to download it = from http://cygwin.com/setup.exe as it is not part of the default = install. I was able to compile with "make clena" followed by "make" under = iaxclient/simpleclient/testcall. It works and I tested it and modified = it to use my own *. There was quite a bit of noise and quite a bit of = delay but it is very promissing. Then I got ambitious and tried the same steps undex = iaxclient/simpleclient/wx. I watched in horror the screen go for quite = a while. Then it stopped with a message "1 error in wx.o". I tried to = redirect the output to file so I could attach it here but only got the = first few lines of the "Makefile" execution. Then, when the Cygwin make = takes over, it all went back to the STD output, my screen. Since I made it this far, I am now more committed than ever. Did I miss a step to compile the "GUI" version? Regards, Uriel -----Original Message----- From: iax...@li... = [mailto:iax...@li...]On Behalf Of Steve = Kann Sent: Wednesday, June 11, 2003 7:34 PM To: ur...@ad... Cc: iaxclient devel Subject: RE: [Iaxclient-devel] Compiling with MinGW/Cygwin On Wed, 2003-06-11 at 19:55, Uriel Carrasquilla wrote:=20 Steve: My first step: went to ieaxclient/lib, typed: "make clean"=20 Results: +ve My second step: from iaxclient/lib typed: "make" Resulting message: failed make (e=3D2): the system cannot find the file specified = c"\MinGW\bin\make.exe **** [gsm/src/add.o] Error 2=20 hmm, OK, this is interesting. =20 Your build environment is different from mine, in that you're using a = "make" provided by MinGW, as opposed to the cygwin make. Their make = might be broken in some way, although I think someone built sucessfully = with MinGW with "msys" installed. The way my environment is set up, I have cygwin installed, and MinGW = installed, and then I have the MinGW tools installed ahead of the cygwin = stuff in my path. I.e. my path is: = /cygdrive/c/MINGW/bin:/usr/local/bin:/usr/bin:/bin:/cygdrive/c/SPRY/BIN:/= cygdriv = e/c/WINDOWS:/cygdrive/c/WINDOWS/system32:/cygdrive/c/WINDOWS/system32/WBE= M:/cygd rive/c/Program Files/Real/Helix Producer Basic:/cygdrive/c/Program = Files/Microso ft Visual Studio/Common/Tools/WinNT:/cygdrive/c/Program = Files/Microsoft Visual S tudio/Common/MSDev98/Bin:/cygdrive/c/Program Files/Microsoft Visual = Studio/Commo n/Tools:/cygdrive/c/Program Files/Microsoft Visual Studio/VC98/bin=20 (all that's really important is that the MinGW binaries come before = the cygwin binaries). Then, I run a shell from cygwin (using the icon the cygwin install = leaves on the desktop, which gives me a terminal running bash), and do = the make from there. But, my MINGW directory doesn't have "make.exe" in it. There's a = mingw32-make.exe, but the purposely don't call it "make.exe", because it = sucks :) I can't understand the particular error your make gave you, but I = don't know what file it's talking about. (I think the note is that it's = trying to make gsm/src/add.o, which is should do from the implicit rule = from gsm/src/add.c). So, I think the easiest way to get you going is to get yourself cygwin = (just run http://cygwin.com/setup.exe), find out what that make you're = using is and get rid of it, then build with cygwin's tools (except for = the compiler, for that use mingw). The rest of your research, below, is unlikely to get you anywhere = helpful. I don't maintain any of the other Makefiles other than = lib/Makefile simpleclient/testcall/Makefile and = simpleclient/wx/Makefile. Even if those other Makefiles work, they'll = give you some library which isn't going to help you. Also, please post to the mailing list; other people are working = through the same thing (]data[ from IRC, for example, just got a whole = "wx.exe" build going himself), and the discussion can either help = others, or perhaps others can help you. -SteveK Research: went to iaxclient/lib/gsm/src: there is no add.o, just add.c There is a "makefile" here, so I typed "make clean"; results: +ve =20 Hacking: from iaxclient/lib/gsm, typed "make". Results: +ve Went back to iaxclient/lib typed: "make" Resulting message: The same but with code.o missing instead of add.o =20 I will greatly appreciate your guidance through these difficulties. =20 =20 Regards, Uriel=20 -----Original Message----- From: iax...@li... = [mailto:iax...@li...]On Behalf Of Steve = Kann Sent: Wednesday, June 11, 2003 10:21 AM To: ur...@ad... Cc: iaxclient devel Subject: RE: [Iaxclient-devel] Compiling with MinGW/Cygwin Uriel, There's three "maintained" makefiles within the project. The = Makefile in iaxclient/lib, and the Makefiles in simpleclient/testcall = and simpleclient/wx. Both of the simpleclient/*/Makefiles will call the Makefile in lib = to make the library, as both clients use the library, and thus require = the library (libiaxclient.a) to be built. So, from clean CVS, you should be able to just go to = simpleclient/testcall, and type "make". However, if you've tried other things, I'd say you'd be best off = going to iaxclient/lib, typing "make clean", then "make". Then, go to = the client you want to make and type "make clean", "make". (the client Makefiles won't "clean" the library). First, try making "testcall", since for "wx", you'll also need to = have wxwindows installed, etc. Definately a better first step is to = compile testcall. And yes, there's no install targets in the Makefiles. You don't = need to install the library, and the executable targets are standalone = (i.e. for wx, there's "wx.exe" for windows, "wx" for linux, and "wx.app" = for MacOSX). On Wed, 2003-06-11 at 00:00, Uriel Carrasquilla wrote:=20 Steve: I am having a hard time compiling with MinGW and Gygwin. I downloaded the CVS from Monday night. I went to the /iaxclient/simpleclient/wx (where there is a = Makefile) and typed: make Problems developed in the lib/gsm. I can see in the wx/Makefile = that we are trying to make iaxclient.a from lib/gsm. So I went over and = type make iaxclient.a could not find a file. So I went to the gsm subdirectory and = somewhere in there there was another makefile (lower case which is = normally a second choice for make). I did a make. Went back one leve to lib/gsm and executed make=20 Got another file missing. =20 =20 My question: is there a sequence of "make" that I have to = execute? what would it be? I could not see and "install" in any of the Makefile. is it by = design? Regards, Uriel=20 -----Original Message----- From: iax...@li... = [mailto:iax...@li...]On Behalf Of Steve = Kann Sent: Tuesday, June 10, 2003 7:48 PM To: iaxclient devel Subject: [Iaxclient-devel] some updates, and Ideas for = contributions.. 1) (most relevant): put iax call processing (including audio) = into a separate thread. This helps the most when you do things that = block the GUI thread, like resizing the window (Win32 only?). And it = seems to also help the Mac a bit(*) (*) The volume meters, implemented with progress bars via = wxwindows on the mac, eat a lot of CPU for their animation. Not that it = doesn't look good. I think that this caused some skips on the Mac. 2) Fixed the DTMF buttons that I broke sometime today or last = night. 3) Fixed PTT a bit. (looking for feedback on how this works). Also, due to a byproduct of the way I did things, if you = enable then disable PTT, you'll also be enabling silence = detection/suppression. This will make the client not spit out any audio = frames until the input audio level reaches -40 DB. =20 There's been a lot of interest here on the list and on IRC = from a growing community. That's cool. People asked what they can help = with, so here's some ideas for adventurous souls: 1) IAX2: You can build it via my Makefiles by setting = IAXVER=3D2 at the top of the =20 library Makefile, or building the library by = running "make IAXVER=3D2". It=20 doesn't work quite right, though, so if someone = could try and figure that one=20 out, it would be good. Once it's working, IAX2 = should offer us a bunch of=20 quality improvements, especially over the = internet. 2) Registration: People out there want this, and it will make = the apps/library more =20 useful to the community. Shouldn't be too = hard, but will need to be a bit =20 careful about keeping track of calls, sessions, = peers, etc. 3) A maintainer for VC++ Makefiles and/or .dsw files. I don't = know this stuff, and I=20 don't like tools you need your mouse for. But, = if it helps people get more=20 involved, I'm all for keeping a current .dsw/dsp = or whatever file in CVS, one=20 for each of the Makefiles, I guess (lib, = testcall, wx). 4) Exposing Audio Settings: Make controls (library functions = and GUI) for enumerating and choosing audio input/output devices. This = may require either moving to the standard portaudio callback interface, = or hacking pablio to allow you to choose particular devices. Also, = expose setting the input and output "levels". It's probably best to = allow them to change this while the app is running, so you'll need to = close/re-open the audio device, etc. 5) MacOSX Mono audio problem: Currently MacOSX audio comes = only out of the left channel. Seems like a portaudio problem to track = down. 6) silence detection / dynamic range compression: Figure out = good values or algorithms to make the client automatically (a) not send = any packets when there's no speech, (b) put out good consistent volume = when there is speech, even if people don't have consistent = microphone/soundcard settings, use laptop microphones or nice headsets. 7) Additional codec support: I'd start with uLaw, to make = some #iaxclient user happy, but also because it's pretty easy to = implement, then also try iLBC and/or Speex. Probably want one way for = the user to choose their preferred codec. Hmm, that's a bunch of stuff :) If anyone wants to step up for this stuff, let the list know, = so we all don't duplicate each other's work. Happy IAX clienting! -SteveK --=20 Steve Kann - Chief Engineer - 520 8th Ave #2300 NY 10018 - (212) = 533-1775 HorizonLive.com - collaborate . interact . learn "The box said 'Requires Windows 95, NT, or better,' so I installed = Linux." =20 --=20 Steve Kann - Chief Engineer - 520 8th Ave #2300 NY 10018 - (212) = 533-1775 HorizonLive.com - collaborate . interact . learn "The box said 'Requires Windows 95, NT, or better,' so I installed = Linux." =20 --=20 Steve Kann - Chief Engineer - 520 8th Ave #2300 NY 10018 - (212) = 533-1775 HorizonLive.com - collaborate . interact . learn "The box said 'Requires Windows 95, NT, or better,' so I installed = Linux." =20 |