1
0
mirror of https://github.com/cookiengineer/audacity synced 2025-09-08 08:30:02 +02:00

First step updating compile.txt for 2.1.2.

This commit is contained in:
James Crook 2015-11-07 11:37:37 +00:00
parent 2dda54d0e8
commit f4be21282e

View File

@ -41,8 +41,7 @@ To simplify the implementation of a near-identical user
interface across platforms, Audacity uses wxWidgets, a interface across platforms, Audacity uses wxWidgets, a
GUI framework. GUI framework.
Audacity 2.1.2 currently requires wxWidgets 2.8.12. Audacity 2.1.2 requires wxWidgets 3.0.2.
(we're transitioning to wxWidgets 3.0.2. during this release...)
To be able to build Audacity for Windows, download and install To be able to build Audacity for Windows, download and install
wxWidgets from http://www.wxwidgets.org/. wxWidgets from http://www.wxwidgets.org/.
@ -52,14 +51,14 @@ wxWidgets from http://www.wxwidgets.org/.
MSVC++ STEP 2: Build wxWidgets MSVC++ STEP 2: Build wxWidgets
------------------------------------------------------------------------ ------------------------------------------------------------------------
2.1. Open "C:\wxWidgets-2.8.12\build\msw\wx_dll.dsw" with 2.1. Open "C:\wxWidgets-3.0.2\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.
When you open wx_dll.dsw, Visual Studio will prompt whether When you open wx_dll.dsw, Visual Studio will prompt whether
to convert. Click "Yes To All". Next time you open a Visual to convert. Click "Yes To All". Next time you open a Visual
Studio session, you can avoid this prompt by opening Studio session, you can avoid this prompt by opening
"C\wxWidgets-2.8.12\build\msw\wx_dll.sln" instead of wx_dll.dsw. "C\wxWidgets-3.0.2\build\msw\wx_dll.sln" instead of wx_dll.dsw.
2.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
@ -70,28 +69,28 @@ MSVC++ STEP 2: Build wxWidgets
In "audacity\win\wxWidgets_additions" is one .h file. In "audacity\win\wxWidgets_additions" is one .h file.
You may want to make a backup of the wxWidgets original of it, You may want to make a backup of the wxWidgets original of it,
in "C:\wxWidgets-2.8.12\include\wx\msw\setup.h", in "C:\wxWidgets-3.0.2\include\wx\msw\setup.h",
e.g., by renaming it "setup.h.bak" before copying the replacement, e.g., by renaming it "setup.h.bak" before copying the replacement,
in case you also build without these accessibility features. in case you also build without these accessibility features.
Copy "audacity\win\wxWidgets_additions\setup.h" to Copy "audacity\win\wxWidgets_additions\setup.h" to
"C:\wxWidgets-2.8.12\include\wx\msw\setup.h". "C:\wxWidgets-3.0.2\include\wx\msw\setup.h".
Audacity releases are built with these accessibility features. Audacity releases are built with these accessibility features.
2.3. Build wxWidgets for all configurations of Audacity that you want. 2.3. Build wxWidgets for all configurations of Audacity that you want.
With Visual Studio 2013 C++ and wxWidgets 2.8.12, With Visual Studio 2013 C++ and wxWidgets 3.0.2,
you will get an error for a missing pbt.h header. you will get an error for a missing pbt.h header.
You can (apparently safely) comment that out. You can (apparently safely) comment that out.
In audacity-src\win\wxWidgets_additions, we have a copy of In audacity-src\win\wxWidgets_additions, we have a copy of
the file with this change already made. the file with this change already made.
As above, you may want to save the original by renaming As above, you may want to save the original by renaming
"C:\wxWidgets-2.8.12\src\msw\window.cpp" to "C:\wxWidgets-3.0.2\src\msw\window.cpp" to
"C:\wxWidgets-2.8.12\src\msw\window.cpp.bak". "C:\wxWidgets-3.0.2\src\msw\window.cpp.bak".
Then copy "audacity-src\win\wxWidgets_additions\window.cpp" to Then copy "audacity-src\win\wxWidgets_additions\window.cpp" to
"C:\wxWidgets-2.8.12\src\msw\window.cpp". "C:\wxWidgets-3.0.2\src\msw\window.cpp".
* Use the "DLL Unicode Release" configuration to use in a * Use the "DLL Unicode Release" configuration to use in a
"Release" version of Audacity. "Release" version of Audacity.
@ -129,7 +128,7 @@ MSVC++ STEP 2: Build wxWidgets
others above, and build them all together. others above, and build them all together.
If you build the whole solution, ignore the linker errors for If you build the whole solution, ignore the linker errors for
wxbase28*_odbc*.* dbgrid. wxbase30*_odbc*.* dbgrid.
------------------------------------------------------------------------ ------------------------------------------------------------------------
@ -159,12 +158,12 @@ is based on Windows 7, so you may need to make adjustments.
4.5. Click "New..." in the "System variables" group 4.5. Click "New..." in the "System variables" group
4.6. Set the "Variable name" to "WXWIN" (without the quotes) 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 4.7. Set the "Variable value" to the full path of where you installed
wxWidgets (typically "C:\wxWidgets-2.8.12") wxWidgets (typically "C:\wxWidgets-3.0.2")
4.8. Click "OK" until you exit the "System Properties" app 4.8. Click "OK" until you exit the "System Properties" app
An alternative way to do it, that's available on all versions of Windows, An alternative way to do it, that's available on all versions of Windows,
is to open a cmd.exe window, and type: is to open a cmd.exe window, and type:
set WXWIN =C:\wxWidgets-2.8.12 set WXWIN =C:\wxWidgets-3.0.2
Once you have set the WXWIN environment variable correctly, the Audacity Once you have set the WXWIN environment variable correctly, the Audacity
Project file's declarations will do the rest. Project file's declarations will do the rest.
@ -271,15 +270,15 @@ above. You can copy them to your Windows PATH, or more simply,
to the same directory as the executable. If you are building to the same directory as the executable. If you are building
Audacity for public release using the *.iss installer script, Audacity for public release using the *.iss installer script,
you must copy them to the executable directory. The DLLs required you must copy them to the executable directory. The DLLs required
are at "C:\wxWidgets-2.8.12\lib\vc_dll": are at "C:\wxWidgets-3.0.2\lib\vc_dll":
wxbase28*_net_vc_custom.dll wxbase30*_net_vc_custom.dll
wxbase28*_vc_custom.dll wxbase30*_vc_custom.dll
wxmsw28*_adv_vc_custom.dll wxmsw30*_adv_vc_custom.dll
wxmsw28*_core_vc_custom.dll wxmsw30*_core_vc_custom.dll
wxmsw28*_html_vc_custom.dll wxmsw30*_html_vc_custom.dll
wxbase28*_xml_vc_custom.dll wxbase30*_xml_vc_custom.dll
wxmsw28*_qa_vc_custom.dll wxmsw30*_qa_vc_custom.dll
The "*" in the file names above is replaced in the actual files by The "*" in the file names above is replaced in the actual files by
a suffix specific to its Widgets configuration. You can identify the a suffix specific to its Widgets configuration. You can identify the
@ -290,13 +289,13 @@ DLLs needed for each Audacity version as follows:
So for instance, a Debug version of Audacity should have: So for instance, a Debug version of Audacity should have:
wxbase28ud_net_vc_custom.dll wxbase30ud_net_vc_custom.dll
wxbase28ud_vc_custom.dll wxbase30ud_vc_custom.dll
wxmsw28ud_adv_vc_custom.dll wxmsw30ud_adv_vc_custom.dll
wxmsw28ud_core_vc_custom.dll wxmsw30ud_core_vc_custom.dll
wxmsw28ud_html_vc_custom.dll wxmsw30ud_html_vc_custom.dll
wxbase28ud_xml_vc_custom.dll wxbase30ud_xml_vc_custom.dll
wxmsw28ud_qa_vc_custom.dll wxmsw30ud_qa_vc_custom.dll
in the "audacity\win\Debug" directory. in the "audacity\win\Debug" directory.
@ -308,7 +307,7 @@ If you still need help after that, please ask on the "Compiling
Audacity" board at http://forum.audacityteam.org/. However, the first Audacity" board at http://forum.audacityteam.org/. However, the first
suggestion there is likely to be "try it again with a clean suggestion there is likely to be "try it again with a clean
installation of the wxWidgets source and the latest Audacity source 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 GitHub". So if that's not what you attempted, please try that first.
------------------------------------------------------------------------ ------------------------------------------------------------------------
@ -322,9 +321,13 @@ process you get a bunch of error messages like this:
already defined in MSVCRTD.lib(dbgheap.obj) already defined in MSVCRTD.lib(dbgheap.obj)
This is usually caused by conflicting runtime library settings. This is usually caused by conflicting runtime library settings.
Audacity is now linked with DLL linkage. Audacity is now linked with DLL linkage and our windows project file ONLY has
In VC9, select the Audacity project. Then DLL linkage, so we think this problem has gone. If it does happen, check the
Project > Properties > C/C++ > Code Generation > Runtime Library following:
In MSVC 2013, select the Audacity project. Then
Project > Properties > Configuration Properties > C/C++ >
Code Generation > Runtime Library
should be should be
"Multi-threaded Debug DLL (/MDd)" for Debug builds, "Multi-threaded Debug DLL (/MDd)" for Debug builds,
or or
@ -363,6 +366,10 @@ none of the above should actually be necessary.
Compiling Audacity under Cygwin Compiling Audacity under Cygwin
------------------------------- -------------------------------
This is not maintained and not recommended. If you do do this and succeed
please let us know and help us update these instructions. These are old
instructions.
Compiling Audacity under Cygwin is considered "experimental" Compiling Audacity under Cygwin is considered "experimental"
at this time, and you may notice a few problems when you do so. at this time, and you may notice a few problems when you do so.
Please be patient, and make sure to submit bug reports to the Please be patient, and make sure to submit bug reports to the