Developing On Linux Under Windows
|These are notes about one possible way for a 'Windows' user to compile and run Audacity under Linux, running Linux as a Windows application. This may be useful for Windows developers who want to try out Linux. You will need a reasonable internet connection to do this in a reasonable time.
Written by a non-expert on Linux, so this may not be the easiest way, but I have got audio playing...
I am assuming that you want the unicode debug version.
Get Portable Ubuntu
Download from http://portableubuntu.demonccc.cloudius.com.ar/ and run the .exe file you get. Put it in a sensible place.
Run Portable Ubuntu
Browse to the place that you put the 'Portable_Ubuntu' directory and double-click the 'run_portable_ubuntu.bat' file. This starts the application (after a few seconds). You will have a toolbar at the top of your normal XP Windows screen. I have found it best to run this when your system isn't busy with 'other stuff'.
May not be so simple on Windows 7, compared to XP. I set TrayRun.exe to run in 'Windows XP (Service Pack 3)' mode and ran 'run_portable_ubuntu.bat' from a dos prompt in 'C:\Audacity\Portable_Ubuntu' to make it work. 'Maybe' I mucked with some other stuff as well. Please update this if you have a clear idea.
Get a browser going
On your 'windows' system or you new 'PU' system. Just note that 'Ctrl+C' is 'copy' on Windows and Linux, but and 'Shift+Insert' is 'paste' on Linux (not 'Ctrl+V').
On PU, click the Firefox symbol on the toolbar to start Firefox under Linux. Locate this page in your new browser and continue from there.
You will need SVN on your new Linux system so that you can get the Audacity source (all recommendations are not to use the same source checkout on Windows and Linux, for line-ending reasons if nothing else).
SVN is probably already installed. If not, seek help on audacity-devel, or elsewhere.
Get Audacity from the SVN repository
Open a terminal window (Applications -> Accessories -> Terminal) and paste in:
svn checkout http://audacity.googlecode.com/svn/audacity-src/trunk/ audacity
If you do 'ls -l' at the prompt you should now see that you have an 'audacity' directory.
If you are updating a previous version use:
svn update http://audacity.googlecode.com/svn/audacity-src/trunk/ audacity
Make wxWidgets available
Follow http://wiki.wxpython.org/InstallingOnUbuntuOrDebian (you probably found this anyway, since you are following http://audacityteam.org/wiki/index.php?title=Developing_On_Linux at the same time aren't you?). Copy and paste the first instruction starting 'curl'. But you'll get an error message as 'curl' isn't installed, so 'sudo apt-get install curl' in the terminal and then try again.
At step 2 you need to edit a file. Applications -> Accessories -> Text Editor. Open etc/apt/sources.list and edit as advised. Note that your DIST is 'hardy'. Save. Doh! You can't save it as you don't have permission. Close the text editor. Go to the terminal prompt and type 'sudo gedit' and try again. I found this the hard way. 'sudo' gives you superuser access, 'gedit' is the name of the text editor (it was in the title bar).
Do step 3.
Ignore step 4.
Get needed build tools etc
The first time I did this I did them one by one with Synaptic. Thanks to Benjamin Drung for the line:
sudo apt-get build-dep audacity
which appears to work out everything that you need (make sure you've closed Synaptic). However it gets wxWidgets 2.6 instead of 2.8. I used Synaptic to remove the 2.6 versions and install libwxbase2.8-0, libwxbase2.8-dbg, libwxbase2.8-dev, libwxgtk2.8-0, libwxgtk2.8-dbg and libwxgtk2.8-dev. I hope that is correct.
You may also need 'automake' from Synaptic. Apparently 1.10 is needed but the list (here) only goes up to 1.9. The entry 'automake' appears to be 1.10 (renamed). I got that but I don't know if it's required.
Configure and make
./configure --with-libvorbis --with-libflac --with-libid3tag --with-soundtouch --enable-debug
(wait a while)
(wait a bigger while) Part way through this process I ran out of disk space on my virtual Linux (1.8G wasn't much really). I followed the instructions at
http://portableubuntu.demonccc.cloudius.com.ar/ -> How to change the file system size - Method 2
restarted PU, finished the instructions (there should be a way to get out of su here, but I don't know what it is), cd audacity and then did 'make' again
This works for me, and I'm seeing 'ALSA pulse' as devices these days. I get playback (but have not tested recording).
If you modify a file:
If you modify #includes in files:
make dep; make
If you add or remove files:
./configure; make dep; make
Getting an IDE up and running
I pretty much followed the instructions at
I got KDevelop 3.5.4-1 from
noting that I have Ubuntu Hardy 8.04, and so followed the 'add this to sources.list and get with apt-get' part of the instructions (bottom of the first section). Then it's just 'kdevelop' at a terminal prompt to run it.
In the 'Configure Options' I set 'Configure Arguments:' to
--enable-debug=yes --with-libvorbis --with-libflac --with-libid3tag --with-soundtouch --with-portaudio=v19 --with-sbsms=no
(partly as I still have a broken sbsms, partly I wasn't sure portaudio defaults to v19, but I know it's needed).
In the 'Run Options' I set 'Executable' to
and 'Working Directory' to
and also checked the 'Automatically compile...' option, since that is what I am used to on VS.
I think I did have to apt-get libtool. That was pretty much it. It looks a lot like VS8 and works in quite a similar way (from my minimal poking about).
Things I haven't got to
Other IDEs. Dan also suggested
Please feel free to improve/update these notes with anything you have been successful with!