1
0
mirror of https://github.com/cookiengineer/audacity synced 2026-01-12 07:35:51 +01:00

Removed all of my edits and reincorporated Vaughan's.

Should now look like you expect it to.
This commit is contained in:
lllucius
2014-11-18 08:12:06 +00:00
parent f8732c96dc
commit 393109afa3

View File

@@ -22,20 +22,27 @@ email audacity-devel@lists.sourceforge.net.
Audacity releases for Windows are currently built with Microsoft Visual Audacity releases for Windows are currently built with Microsoft Visual
Studio 2013 C++. Most of us use the Express edition, which is free. Studio 2013 C++. Most of us use the Express edition, which is free.
For instructions on compiling Audacity under the Cygwin
UNIX Emulation Layer, see the "Compiling Audacity under
Cygwin" section below. This is not maintained.
Note that Audacity uses VC++'s multithreaded DLL runtime libraries. Note that Audacity uses VC++'s multithreaded DLL runtime libraries.
If you have MSVC installed, these are in your PATH, but users to If you have MSVC installed, these are in your PATH, but users to
whom you distribute your builds may not have them, so you may have whom you distribute your builds may not have them, so you may have
to distribute them, as described for the wxWidgets DLLs, below. to distribute them, as described for the wxWidgets DLLs, below.
For instructions on compiling Audacity under the Cygwin
UNIX Emulation Layer, see the "Compiling Audacity under
Cygwin" section below. This is not maintained (for a very long time!).
------------------------------------------------------------------------ ---------------------------
MSVC++ STEP 1: Download and Install wxWidgets MSVC++ STEP 1: Download and Install wxWidgets
------------------------------------------------------------------------ ---------------------------
To simplify the implementation of a near-identical user interface across To simplify the implementation of a near-identical user
platforms, Audacity uses wxWidgets, a GUI framework. (https://www.wxwidgets.org/). interface across platforms, Audacity uses wxWidgets, a
GUI framework. (https://www.wxwidgets.org/).
Audacity 2.1.0 requires wxWidgets 2.8.12. Audacity 2.1.0 requires wxWidgets 2.8.12.
@@ -47,21 +54,11 @@ To be able to build Audacity for Windows, download and install wxWidgets:
------------------------------------------------------------------------ ------------------------
MSVC++ STEP 2: Download and Install Audacity MSVC++ STEP 2: Build wxWidgets
------------------------------------------------------------------------ ------------------------
To check out the latest 2.1. Open "C:\wxWidgets-2.8.12\build\msw\wx_dll.dsw" with
source code from SVN, see the instructions at
"http://audacity.sourceforge.net/community/developers".
------------------------------------------------------------------------
MSVC++ STEP 3: Build wxWidgets
------------------------------------------------------------------------
3.1. Open "C:\wxWidgets-2.8.12\build\msw\wx_dll.dsw" with
Microsoft Visual Studio. Microsoft Visual Studio.
Make sure to use wx_dll.dsw, not wx.dsw, because wx.dsw Make sure to use wx_dll.dsw, not wx.dsw, because wx.dsw
does not have the correct dependencies for the DLL builds. does not have the correct dependencies for the DLL builds.
@@ -71,7 +68,7 @@ MSVC++ STEP 3: Build wxWidgets
"C\wxWidgets-2.8.12\build\msw\wx_dll.sln" instead of wx_dll.dsw. "C\wxWidgets-2.8.12\build\msw\wx_dll.sln" instead of wx_dll.dsw.
3.2. If you want to use the wxWidgets accessibility features, we have 2.2. If you want to use the wxWidgets accessibility features, we have
modified one of the wxWidgets files. Rather than provide a patch, modified one of the wxWidgets files. Rather than provide a patch,
we store the modified file in the Audacity code repository, and you we store the modified file in the Audacity code repository, and you
can replace the corresponding wxWidgets file. You will need to can replace the corresponding wxWidgets file. You will need to
@@ -89,11 +86,13 @@ MSVC++ STEP 3: Build wxWidgets
Audacity releases are built with these accessibility features. Audacity releases are built with these accessibility features.
3.3. Build wxWidgets for all configurations of Audacity that you want. 2.3. Build wxWidgets for all configurations of Audacity that you want.
* Build "DLL Unicode Release" to use in a "Release" * Build "DLL Unicode Release" to use in a "Release"
version of Audacity. version of Audacity.
* Build "DLL Unicode Debug" to use in a "Debug"
version of Audacity.
With VS2013 you will get an error for missing pbt.h header, you can (apparently safely) comment t With VS2013 you will get an error for missing pbt.h header, you can (apparently safely) comment that out.
See "MSVC++ STEP 6: Build Audacity" for the differences See "MSVC++ STEP 6: Build Audacity" for the differences
between these versions of Audacity. between these versions of Audacity.
@@ -111,52 +110,62 @@ With VS2013 you will get an error for missing pbt.h header, you can (apparently
wxbase28*_odbc*.* dbgrid. wxbase28*_odbc*.* dbgrid.
--------------------------
MSVC++ STEP 3: Download and Install Audacity
--------------------------
------------------------------------------------------------------------ To check out the latest
source code from SVN, see the instructions at
"http://audacity.sourceforge.net/community/developers".
--------------------------------------------
MSVC++ STEP 4: Set wxWidgets location for Audacity MSVC++ STEP 4: Set wxWidgets location for Audacity
------------------------------------------------------------------------ --------------------------------------------
The Audacity Visual Studio project has been set up to use enviornment Before you can start the build process, you must update the
variables to locate all externally referenced SDKs. For wxWidgets, it project settings to tell Visual C++ where to find wxWidgets.
uses the "WXWIN" environment variable. There are three settings that need changing:
4.1. Include Directory (e.g., "C:\wxWidgets-2.8.12\include")
4.2. Resource Directory (e.g., "C:\wxWidgets-2.8.12\include")
4.3. Library Directory (e.g., "C:\wxWidgets-2.8.12\lib")
Before you can build Audacity, you must set the variable. This process eFortunately, this is parameterized, using a Windows
can vary depending on the version of Windows you're using. The following environment variable, WXWIN. There are various ways to set
is based on Windows 7, so you may need to make adjustments. these, so look in the Windows help system.
4.1. Open the "Control Panel" In the Audacity project file, there are declarations like
4.2. Click the "System" app
4.3. Click the "Advanced system settings" link
4.4. On the "Advanced" tab, click the "Envirnment Variables..." button
4.5. Click "New..." in the "System variables" group
4.6. Set the "Variable name" to "WXWIN" (without the quotes)
4.7. Set the "Variable value" to the full path of where you installed
wxWidgets (typically c:\wxWidgets-2.8.12)
4.8. Click "Ok" until you exit the "System Properties" app
Once you have set the WXWIN environment variable correctly, the Audacity $(WXWIN)\include
Project file's declarations will do the rest.
Note that if you currently have the Audacity Solution open in Visual that get interpreted as, e.g., "C:\wxWidgets-2.8.12\include".
Studio, you must restart Visual Studio for it to recognize the new
environment variable.
In some cases, you may need to reboot the computer to ensure the The typical setting for WXWIN is "C:\wxWidgets-2.8.12".
variable it updated. For example,
set WXWIN =C:\wxWidgets-2.8.12
Once you have set the WXWIN environment variable correctly,
the Audacity project file's declarations will do the rest.
Note that you must restart the Audacity solution (sln)
file so it picks up changes in the environment variables.
In some cases, you may need to reboot the computer to ensure
the variables are read correctly.
-----------------------
------------------------------------------------------------------------
MSVC++ STEP 5: Consider and Configure Optional Features MSVC++ STEP 5: Consider and Configure Optional Features
------------------------------------------------------------------------ -----------------------
5.1. Locally installed help is optional, but required for a full Release 5.1. Locally installed help is optional, but required for a full Release
build. (The "help" folder is included in the installer, but removed from build. (The "help" folder is included in the installer, but removed from
the zip distribution.) The Python library is required, obtainable from the zip distribution.) The Python library is required, obtainable from
http://www.python.org/download/ . Add the location of the top-level http://www.python.org/download/ . Add the location of the top-level
directory where you installed Python to your Path environment variable. directory where you installed Python to your Path environment
For instructions on setting environment variables, see the previous variable. For instructions on setting environment variables, see the
section, "MSVC++ STEP 4: Set wxWidgets location for Audacity". previous section, "MSVC++ STEP 4: Set wxWidgets location for Audacity".
Build the "help" project by enabling it in the MS Visual Studio Build the "help" project by enabling it in the MS Visual Studio
Configuration Manager (Build menu). This will download a copy of the Configuration Manager (Build menu). This will download a copy of the
@@ -191,35 +200,34 @@ To change the libraries enabled in Audacity, edit
"win\configwin.h" and comment or uncomment the entries. "win\configwin.h" and comment or uncomment the entries.
5.4. To add support for ASIO: 5.4 TO ADD SUPPORT FOR ASIO:
Because ASIO is a proprietary, closed standard,
we (or any third party) cannot distribute its SDK.
That means we cannot distribute builds of Audacity that support
ASIO, because Audacity is licensed under the
GPL (http://audacity.sourceforge.net/about/license), which requires
we distribute all source code.
ASIO (from Steinberg) is a sound card interface protocol that is faster So, although you can build your own copies of Audacity with
than standard WMME. Unlike WMME, not all soundcard drivers support it. ASIO support, for personal use, you cannot distribute them without
violating the Audacity license and the ASIO license.
If you build ASIO support into Audacity, do not distribute that build.
Because ASIO is a proprietary, closed standard, we (or any third party) For ASIO support, get the ASIO SDK from Steinberg
cannot distribute its SDK. That means we cannot distribute builds of (http://www.steinberg.net/en/company/developers.html),
Audacity that support ASIO, because Audacity is licensed under the GPL install at C:\ASIOSDK, then define an environment variable called
(http://audacity.sourceforge.net/about/license), which requires we ASIOSDK_DIR.
distribute all source code.
So, although you can build your own copies of Audacity with ASIO The value should be the full path to the base directory of the
support, for personal use, you cannot distribute them without violating ASIO SDK, e.g.,
the Audacity license and the ASIO license. If you build ASIO support
into Audacity, do not distribute that build.
For ASIO support, get the ASIO SDK from Steinberg: set ASIOSDK_DIR=C:\ASIOSDK2
http://www.steinberg.net/en/company/developers.html
Install at C:\ASIOSDK, then define an environment variable called
ASIOSDK_DIR. The value should be the full path to the base directory
of the ASIO SDK.
------------------------------------------------------------------------ -----------------------
MSVC++ STEP 6: Build Audacity MSVC++ STEP 6: Build Audacity
------------------------------------------------------------------------ -----------------------
Now you can compile Audacity. Run Visual C++ and load the Audacity Now you can compile Audacity. Run Visual C++ and load the Audacity
solution, "audacity\win\audacity.sln". solution, "audacity\win\audacity.sln".
@@ -237,9 +245,9 @@ Build Audacity by giving the "Build" menu > "Rebuild Solution"
command. command.
------------------------------------------------------------------------ -----------------------
MSVC++ STEP 7: Provide Access to the wxWidgets DLLs MSVC++ STEP 7: Provide Access to the wxWidgets DLLs
------------------------------------------------------------------------ -----------------------
Each Audacity executable needs access to five specific wxWidgets Each Audacity executable needs access to five specific wxWidgets
DLLs from those you built in "MSVC++ STEP 2: Build wxWidgets" DLLs from those you built in "MSVC++ STEP 2: Build wxWidgets"
@@ -283,9 +291,9 @@ installation of the wxWidgets source and the latest Audacity source
from SVN". So if that's not what you attempted, please try that first. from SVN". So if that's not what you attempted, please try that first.
------------------------------------------------------------------------ ---------------------------
HELP! I get linker errors! HELP! I get linker errors!
------------------------------------------------------------------------ ---------------------------
In some cases, Audacity does compile, but during the linking In some cases, Audacity does compile, but during the linking
process you get a bunch of error messages like this: process you get a bunch of error messages like this: