Sign Up
Log In
Log In
or
Sign Up
Places
All Projects
Status Monitor
Collapse sidebar
SUSE:SLE-12:GA
wxWidgets
README.SUSE
Overview
Repositories
Revisions
Requests
Users
Attributes
Meta
File README.SUSE of Package wxWidgets
wxWidgets in SUSE ================= There are many possible wxWidgets variants that can be built from single source spec file. The STL + Unicode is the most modern variant of wxWidgets. But there are still applications that don't compile correctly with this model, so wxWidgets provide way to compile these applications against deprecated versions of libraries (wx container and ANSI). Additionally, some compatibility flags also change ABI, so applications compiled against library with compatibility support enabled must be used with libraries with compatibility support enabled, not depending whether they use compatibility calls or not. Because STL, wx container and compatibility variant versions have the same soname but they are binary incompatible, variant libraries are installed to dedicated directories. Applications then need to use RPATH during the compile time (wx-config does this automatically) or LD_LIBRARY_PATH in runtime (applications compiled against third party wxWidgets packages need proper variant of -compat-lib-config package and packages need also -compat-lib packages). To make dependencies correct, please use %wx_requires in the the preamble of your spec file: %define _use_internal_dependency_generator 0 %define __find_requires %wx_requires These lines must be placed below any BuildRoot preamble line. If you compile wxWidgets variant-specific libraries or wxWidgets modules, you also need to use: %define __find_provides %wx_provides If you don't do it, rpm would not be able to identify library variant package your package is linked with. There may be more than one version of wxWidgets. Some of them may be discriminated by the minor version number appended to the name with "." replaced with "_". Here is the wxWidgets variant list: default = stl: API compatible with modern applications, ABI compatible with wxGTK in openSUSE == 11.1 wxcontainer: API compatible with older applications, ABI compatible with wxGTK in openSUSE <= 11.3 except 11.1 wxcontainer24c: API compatible with modern applications since since version 2.4, ABI compatible with Fedora ansi: API compatible with historical applications without Unicode support no extension: STL + Unicode (recommended) ============ ------------- devel package name: wxWidgets-devel / wxWidgets[-{mi_nor}]-devel libdir: wx-{minor}-stl library package names: lib...u...-stl library names: lib...u....so.* This API is compatible with modern applications, ABI is compatible with wxGTK in openSUSE == 11.1. wxcontainer: Old wx containers + Unicode (deprecated) =========== --------------------------- wxWidgets originally used dedicated wx containers class. Now it allows to be compiled with standard STL classes. However some applications were not written in respect to this compile time option and won't compile. This is reason why we still may need wx containers compatibility version. This version also contains wxWidgets-2.6.x compatibility support. devel package name: wxWidgets[-{mi_nor}]-wxcontainer-devel libdir: wx-{minor}-wxcontainer library package names: lib...u...-wxcontainer library names: lib...u....so.* This API is compatible with older applications, ABI is compatible with wxGTK in openSUSE <= 11.3 except 11.1. wxcontainer24c: Old wx containers + Unicode + 2.4 compatibility (deprecated) ============== ----------------------------------------------- This is a variant above using wx containers, which has 2.4 compatibility enabled. Use with and only with applications that were linked against libraries with 2.4 compatibility enabled (e. g. Fedora packages). devel package name: wxWidgets[-{mi_nor}]-wxcontainer24c-devel libdir: wx-{minor}-wxcontainer24c library package names: lib...u...-wxcontainer24c library names: lib...u....so.* This API is compatible with old applications since since version 2.4, ABI is compatible with Fedora. ansi: Old wx containers + ANSI (strongly deprecated) ==== ------------------------ wxWidgets allows to be compiled in unicode mode. This is needed for some controls to work correctly with unicode locales. However some applications were not written in respect to this compile time option and won't compile due to incorrect wxString manipulation. This is reason why we still may need ANSI version. ANSI version uses wx containers, as STL was introduced much later than Unicode. devel package name: wxWidgets[-{mi_nor}]-ansi-devel libdir: wx-{minor}-wxcontainer library package names: lib......-wxcontainer library names: lib.......so.* This API is compatible with historical applications expecting 8-bit characters. Each variant can enable or disable debugging. Debug versions of libraries contain lots of asserts that help in debugging of poorly written applications. Please pick correct devel version if you want to compile your application with the deprecated variant of wxWidgets. Passing parameter --unicode=[yes|no] to wx-config to select wanted wxWidgets variant may work as well, as long as all needed shared libraries are installed. Note that you cannot mix packages using different libdir.
Locations
Projects
Search
Status Monitor
Help
OpenBuildService.org
Documentation
API Documentation
Code of Conduct
Contact
Support
@OBShq
Terms
openSUSE Build Service is sponsored by
The Open Build Service is an
openSUSE project
.
Sign Up
Log In
Places
Places
All Projects
Status Monitor