Built libs installation

This small article will guide you through the installation of the wxWidgets 3 libs witch are downloadable from this site.

Quick links for this article:

Do not hesitate to contact me if you want any clarification on a particular point, or for anything else.

Download

The first archive you'll have to download is one of the mandatory ones witch contains the headers files.

It can be downloaded from the official site:

  • for the official releases (stable or dev version), you can take the sources archive
  • for the developement snapshots, you can download the sources from the corresponding branch and commit on the GitHub page

You will then need at least one of the archives containing the built libs, and if you want, the one containing the documentation (whitch can be replaced, in the case of an official release, by the corresponding archive of the official site).

Extraction

Put all the downloaded files in the folder in which you want to install your libs. It is better to choose a folder whose path does not contain spaces or special characters, because some compilers do not like this.

Then select them, right-click on them, and choose the "Extract here" menu entry (or something similar depending on the archives manager you are using), as shown in the screenshot below (sorry, it is a french language screenshot...).

Libs archives extract
Libs archives extraction

Depending on the archives you've downloaded, you will perhaps have to confirm the replacement of a few files during the decompression process. You will find explanations for this later in this article.

If you've downloaded at least one archive containing dynamic libs, there is still a small operation to be performed for your system to know where to find the corresponding dll files. For this you have two options:

  • move the dll files from the "bin" subdirectory of your installation folder and put them, for example, in the "C:\Windows\System32" folder or in any folder witch is in your "PATH" environment variable (but I do not recommend this method because you will probably forget to remove them if you uninstall your libs)
  • add the "bin" subdirectory of your installation folder to the "PATH" system variable (you can find on this page the method to do it)

There is a thing to consider when you want to use these libs.
It is the fact that, for each Release configuration, I used the "DEBUG_FLAG=0" parameter during the compilation process. So, do not be surprised if, during the compilation of your application, you get errors messages like "undefined reference to wxTheAssertHandler".

You can correct this in a very simple way: you just have to add the "wxDEBUG_LEVEL=0" parameter to the compiler options.

Additionnal settings

At this point, your libs are installed and more importantly, you can use them.

However, you can optimize your installation if you have downloaded only one part of the availables configurations.

During a classical compilation process, files to pass to the linker are placed in a folder named "gcc_lib", "gcc_dll" "vc_lib" or "vc_dll", witch is placed in the "lib" folder of your installation directory.

If you have a look at the installation tree, you'll find one or more folder whose name is the same as above, followed by a number ("32" or "64") and possibly the word "_Mono". The number shows the architecture of the compiler used (32 or 64 bits) and the word "_Mono" indicates that it is the monolithic version of the libs.

This is because while compiling, I used the "CFG" parameter to place each configuration result in its own folder so they can coexist together.

Again, you have several options:

  • renaming the related folders, back to their originals names, if the downloaded configurations allow this
  • leaving them "as-is" : you will then have to make sure the search paths in your compiler options fit these folders names
  • using a mix of these two methods (renaming some folders, and leaving the others "as-is")

Overwriting some files

If you've downloaded multiple versions of the libs, you probably had to confirm the overwriting of some files during the decompression process.

This problem concerns an OpenGL related dll file, witch have the same name for the monolithic and the multi-libs configurations.

If you do not intend at all to use this additional library (which, I repeat, is only to be used if you want to integrate wxWidgets OpenGL classes), do not worry about this warning.

If, instead, you want to use it, several choices are availables to you:

  • you can decide to use OpenGL with only one defined configurationn. In this case, you simply have to repeat the decompression process for the concerned archive to have the correct file on your system.
  • you can decide to place the dll files in two different folders, to keep all the downloaded configurations available in their entirety. For this, the manipulation to perform is a little bit more complicated:
    • Delete all the contents of your installation folder (except the downloaded archives)
    • Extract the archive containing the headers and sources files
    • Select all the multi-libs archives, and decompress them
    • Rename the "bin" folder to "bin_multi" (or something else, as long as you change its name)
    • Select the remaining archives (the ones related to the monolithic versions) and extract their contents
    • You can also rename the "bin" if you wish to, but this is not an obligation
    • Do not forget to add the two folders to the "PATH" system variable.