wxWidgets 3.1 Packages and Repositories
Preface
This page is for the previous development release, wx3.1.5. The latest release is currently wx3.1.6.
The CodeLite packages for Linux now use wxWidgets 3.1. As wx3.1 is a development branch, few distros will supply it. I've therefore built 3.1.5 packages for the commonest ones.
Since wx3.1.1 I had built both against GTK+2 and GTK+3. As GTK+3 build have become more reliable, and in view of multiple issues getting the two build-types to co-exist, for wx3.1.5 I've created only GTK+3 packages. That itself risked causing problems, especially for debian-based distros. I have therefore made them 'conflict' with wx3.1.4 GTK+3 builds, and they also should replace wx3.1.4 GTK+2 ones. Also starting with wx3.1.5, the openSUSE rpms are built only against GTK+3. The fedora ones remain GTK+3, as they have been since wx3.1.0.
Fetching CodeLite keys
The packages are signed with the CodeLite public key so, if you haven't done so before, you should tell apt or rpm about this by doing as superuser (su or sudo depending on your distro):
apt-key adv --fetch-keys https://repos.codelite.org/CodeLite.asc
or
rpm --import https://repos.codelite.org/CodeLite.asc
Ubuntu and debian
If you use a debian-based distro there are the following wxWidgets repositories available:
Repository | Available | Versions | Component |
---|---|---|---|
debian | https://repos.codelite.org/wx3.1.5/debian/ |
buster bullseye | libs |
ubuntu | https://repos.codelite.org/wx3.1.5/ubuntu/ |
focal groovy impish | universe |
Note
The groovy
packages also install and work in ubuntu 21.04 (hirsute)
The repositories also contain wx3.1.0 to wx3.1.4 builds (including some i386 ones) for debian stretch, and ubuntu trusty, wily to eoan
The ubuntu ones should also work on other *buntus of the same version, and on derivatives e.g. Mint.
Warning
For Mint 20.0 (Ulyana) the ubuntu focal dev packages don't work. That is because that Mint release puts its grep and egrep in /bin/
instead of /usr/bin/
.
As a result the wx-config
script doesn't work properly. See this wxForum thread for possible workarounds. Mint 20.1 and later should not be affected.
Now let apt know that the repository exits. If you use an apt front-end e.g. synaptic, tell it to Add a repository, using as data the appropriate entry in the table above.
If you do things by hand, add the appropriate url to /etc/apt/sources.list. Become superuser and either use a text editor to edit /etc/apt/sources.list
, adding a line similar to:
deb https://repos.codelite.org/wx3.1.5/debian/ buster libs
or, in a terminal, do something like:
sudo apt-add-repository 'deb https://repos.codelite.org/wx3.1.5/ubuntu/ impish universe'
The line to add is different for different distros/versions; choose the appropriate one:
Distro/release | Line to append |
---|---|
debian buster | deb https://repos.codelite.org/wx3.1.5/debian/ buster libs |
debian bullseye | deb https://repos.codelite.org/wx3.1.5/debian/ bullseye libs |
ubuntu focal | deb https://repos.codelite.org/wx3.1.5/ubuntu/ focal universe |
ubuntu groovy and hirsute | deb https://repos.codelite.org/wx3.1.5/ubuntu/ groovy universe |
ubuntu impish | deb https://repos.codelite.org/wx3.1.5/ubuntu/ impish universe |
You then need update the repositories. In synaptic, click the Reload button. If you're doing things by hand, do:
sudo apt-get update
Synaptic users can then select and install as usual. By hand you can do:
apt-get install libwxbase3.1-0-unofficial \
libwxbase3.1unofficial-dev \
libwxgtk3.1-0-unofficial \
libwxgtk3.1unofficial-dev \
wx3.1-headers \
wx-common \
libwxgtk-media3.1-0-unofficial \
libwxgtk-media3.1unofficial-dev \
libwxgtk-webview3.1-0-unofficial \
libwxgtk-webview3.1unofficial-dev \
libwxgtk-webview3.1-0-unofficial-dbg \
libwxbase3.1-0-unofficial-dbg \
libwxgtk3.1-0-unofficial-dbg \
libwxgtk-media3.1-0-unofficial-dbg \
wx3.1-i18n \
wx3.1-examples
The first 6 of the debs are required; the others optional (and of decreasing importance).
wx-common
and wx3.1-i18n
will conflict with the distro's wx2.8 equivalents. That is unlikely to matter too much;
but wx-common
contains wxrc
so, if you use this, be aware that there may be differences after upgrading.
Tip
Building some of the samples provided by the wx3.1-examples package may fail because of failure to detect GTK+. If so, try this compilation line:
LDFLAGS=$(pkg-config --libs gtk+-3.0) CXXFLAGS=$(pkg-config --cflags gtk+-3.0) make -j$(nproc)
Fedora and openSUSE
There are currently rpms available for fedora 33 and 34. Fedora 35 supplies official wx3.1.5 rpms (but our fedora 33 unofficial ones do also work). openSUSE 15 provides its own wxWidgets 3.1.1 but is unlikely to update that to 3.1.5 so I've provided these too
There are also source rpms for Fedora and openSUSE. The fedora srpm should also build on CentOS 8.
Either download the required rpms and install them as usual, or download and install in one step; e.g.
rpm -Uvh https://repos.codelite.org/wx3.1.5/wx3.1-packages/suse/wxWidgets-3_1-3.1.5-1.src.rpm
Note
Some of these rpms may conflict with the wx2.8 devel ones.