wxPython 4.0.2

Announcing wxPython 4.0.2

···

=========================

PyPI: https://pypi.org/project/wxPython/4.0.2
Extras: https://extras.wxPython.org/wxPython4/extras/
Pip: ``pip install wxPython==4.0.2``

Changes in this release include the following:

* Fixed wx.html2.EVT_WEBVIEW_NAVIGATING event not being sent on some
   versions of Linux. (#741)

* wx.Sizers can now be used as an iterator to iterate over the items
   within the sizer. (#738)

* Fix Python3 division in ThumbnailCtrl. (#746)

* Fix leaking image list in CheckListCtrlMixin (#752)

* All items marked as deprecated in the wxWidgets interface
   (documentation) files will now throw a DeprecationWarning when used
   from wxPython. Many of these items are disappearing in 4.1 so it's
   important to ensure they are deprecated at runtime too instead of
   just in the docs. (#749)

* Ensure that the attribute list given to the GLCanvas constructor is
   zero-terminated like it was in Classic. (#770)

* Updated to the wxWidgets 3.0.4 release version.

* Added the wxWidgets version number to the tail end of the string
   returned by wx.version().

* Bind EVT_WINDOW_DESTROY event only to the tree windows in
   CustomTreeCtrl, since otherwise it would be caught when child
   windows are destroyed too, which causes problems in this
   case. (#778)

* Fixed a problem where wx.TreeCtrl.OnCompareItems was not being
   called in derived classes on Windows. This was due to an
   optimization that wasn't compatible with how the classes are
   wrapped. (#774)

* Added wrappers for wx.ClassInfo and exposed
   wx.Object.GetClassInfo. This class is part of wxWidgets' internal
   type information system and although it is not very useful for
   Python applications it is useful for debugging some internal
   wxPython issues.

* Removed the wx.lib.pubsub package, and replaced it with code that
   imports the standalone PyPubSub in order remain compatible with
   older code that still uses wx.lib.pubsub. (#782, #792)

* Fixed bug in wx.lib.intctrl (#790)

* Fixed subclassing of wx.TextCompleter and wx.TextCompleterSimple
   (#827)

* Fixes for Python3 compatibility in PyCrust. (#823)

* Fix wxGet to be able to use pip v10. (#817)

* Change winid parameter in wx.ScrolledWindow to id, for
   consistency. (#816)

* Ensure that the page exists in book controls GetPage and RemovePage
   methods. At least one of the wx ports do not do this. (#830)

* Added missing wx.NumberEntryDialog

* Change wx.TextCompleterSimple.GetCompletions to send the list of
   strings as a return value, rather than a parameter that gets
   filled. (#836)

* Enabled the wx.GraphicsContext.Create(metaFileDC) wrapper (#811)

* Metafile support is also available on OSX, so wx.msw.Metafile and
   wx.msw.MetafileDC have been moved to the core wx module. So they can
   now be accessed as wx.Metafile and wx.MetafileDC.

* Updated the waf tool used by the build to version 2.0.7. This fixes
   problems with building for Python 3.7.

* Fixed alignment in buttons on MSW which have had foreground or
   background colors set. (#815)

* Fix for unexpected assertion inside wx.aui.AuiMDIChildFrame.Close.

* Fix a bug in setting AuiDockingGuide size. (#727)

* Remove unnecessary AUI notebook updating, and use wx.BufferedDC in
   Repaint() to mitigate flicker. (wx.lib.agw.aui). (#851, #686)

* Fixed crashing bug when using client data with items in
   wx.dataview.DataViewTreeCtrl. (#856)

* Detach wx.Control in AuiToolbar from current sizer before attach to
   a new one. (#843)

* Fixed a problem in wx.lib.mixins.listctrl.TextEditMixin where the
   height of the editor widget could be set to zero. (See discussion in
   #849)

* Fix a bug in calculating whether a tool fits into the
   AuiToolBar. (#863)

* Override SetForegroundColour and SetBackgroundColour in
   MaskedEditMixin (#808)

* Add an explicit wx.GraphicsContext.Create overload for
   wx.AutoBufferedPaintDC. (#783)

* Return original AGW window style in
   AuiToolBar.GetAGWWindowStyleFlag. (#870)

* Fix a bug in group management on wx.lib.masked.numctrl; the previous
   code used truediv ('/') to calculate _groupSpace, but in python 3.x
   this leads to a float result, instead of an integer as was
   expected. Using floordiv ('//') instead to solve the problem. (#865)

* Hide the window when the tool does not fit into AuiToolBar. (#872)

* Fixed the virtual dispatch code for the PGEditor.GetValueFromControl
   method to properly pass the parameters to the Python implementation,
   and also fixed how the return value is handled. (#742)

* Fixed all implementations of the PGProperty.StringToValue and
   IntToValue methods to treat the value parameter as a return
   value. (#742)

* Add missing wx.adv.EVT_CALENDAR_WEEK_CLICKED (#875)

* Fixed the stock labels to conform to Windows design
   guidelines. (#787)

* Always reset floating size and style when floating a toolbar in
   agw.aui. (#880)

What is wxPython?
-----------------

wxPython is a cross-platform GUI toolkit for the Python programming
language. It allows Python programmers to create programs with a
robust, highly functional graphical user interface, simply and
easily. It is implemented as a set of Python extension modules that
wrap the GUI components of the popular wxWidgets cross platform
library, which is written in C++. Supported platforms are Microsoft
Windows, Mac OS X and macOS, and Linux or other unix-like systems with
GTK2 or GTK3 libraries. In most cases the native widgets are used on
each platform to provide a 100% native look and feel for the
application.

What is wxPython Phoenix?
-------------------------

wxPython's Project Phoenix is a new from-the-ground-up implementation
of wxPython, created with the intent of making wxPython “better,
stronger, faster than he was before.” In other words, this new
implementation is focused on improving speed, maintainability and
extensibility of wxPython, as well as removing most of the cruft that
had accumulated over the long life of Classic wxPython.

The project has been in development off and on, mostly behind the
scenes, for many years. For the past few years automated snapshot
builds have been available for those adventurous enough to try it, and
many people eventually started using the snapshots in their projects,
even for production releases. While there are still some things on
the periphery that need to be completed, the core of the new wxPython
extension modules which wrap the wxWidgets code has been stable for a
long time now.

Due to some things being cleaned up, reorganized, simplified and
dehackified wxPython Phoenix is not completely backwards compatible
with wxPython Classic. This is intended. In general, however, the API
differences tend to be minor and some applications can use Phoenix
with slight, or even with no modifications. In some other cases the
correct way to do things was also available in Classic and it's only
the wrong way that has been removed from Phoenix. For more
information there is a Migration Guide document available at:
https://docs.wxpython.org/MigrationGuide.html

The new wxPython API reference documentation, including all
Python-specific additions and customizations, and docs for the wx.lib
package, is located at: https://docs.wxpython.org/

--
Robin Dunn
Software Craftsman
http://wxPython.org

Great work! I’ve just installed and looking around: I get a lot of deprecation warning about NewId. Which is the recommended way of managing ids? Passing wx.ANY in the constructor of objects and then object.GetId() to get the id?

Marco

···

On Monday, June 18, 2018 at 6:49:36 AM UTC+2, Robin Dunn wrote:

Announcing wxPython 4.0.2

=========================

PyPI: https://pypi.org/project/wxPython/4.0.2

Extras: https://extras.wxPython.org/wxPython4/extras/

Pip: pip install wxPython==4.0.2

Changes in this release include the following:

  • Fixed wx.html2.EVT_WEBVIEW_NAVIGATING event not being sent on some

    versions of Linux. (#741)

  • wx.Sizers can now be used as an iterator to iterate over the items

    within the sizer. (#738)

  • Fix Python3 division in ThumbnailCtrl. (#746)

  • Fix leaking image list in CheckListCtrlMixin (#752)

  • All items marked as deprecated in the wxWidgets interface

    (documentation) files will now throw a DeprecationWarning when used

    from wxPython. Many of these items are disappearing in 4.1 so it’s

    important to ensure they are deprecated at runtime too instead of

    just in the docs. (#749)

  • Ensure that the attribute list given to the GLCanvas constructor is

    zero-terminated like it was in Classic. (#770)

  • Updated to the wxWidgets 3.0.4 release version.

  • Added the wxWidgets version number to the tail end of the string

    returned by wx.version().

  • Bind EVT_WINDOW_DESTROY event only to the tree windows in

    CustomTreeCtrl, since otherwise it would be caught when child

    windows are destroyed too, which causes problems in this

    case. (#778)

  • Fixed a problem where wx.TreeCtrl.OnCompareItems was not being

    called in derived classes on Windows. This was due to an

    optimization that wasn’t compatible with how the classes are

    wrapped. (#774)

  • Added wrappers for wx.ClassInfo and exposed

    wx.Object.GetClassInfo. This class is part of wxWidgets’ internal

    type information system and although it is not very useful for

    Python applications it is useful for debugging some internal

    wxPython issues.

  • Removed the wx.lib.pubsub package, and replaced it with code that

    imports the standalone PyPubSub in order remain compatible with

    older code that still uses wx.lib.pubsub. (#782, #792)

  • Fixed bug in wx.lib.intctrl (#790)

  • Fixed subclassing of wx.TextCompleter and wx.TextCompleterSimple

    (#827)

  • Fixes for Python3 compatibility in PyCrust. (#823)

  • Fix wxGet to be able to use pip v10. (#817)

  • Change winid parameter in wx.ScrolledWindow to id, for

    consistency. (#816)

  • Ensure that the page exists in book controls GetPage and RemovePage

    methods. At least one of the wx ports do not do this. (#830)

  • Added missing wx.NumberEntryDialog

  • Change wx.TextCompleterSimple.GetCompletions to send the list of

    strings as a return value, rather than a parameter that gets

    filled. (#836)

  • Enabled the wx.GraphicsContext.Create(metaFileDC) wrapper (#811)

  • Metafile support is also available on OSX, so wx.msw.Metafile and

    wx.msw.MetafileDC have been moved to the core wx module. So they can

    now be accessed as wx.Metafile and wx.MetafileDC.

  • Updated the waf tool used by the build to version 2.0.7. This fixes

    problems with building for Python 3.7.

  • Fixed alignment in buttons on MSW which have had foreground or

    background colors set. (#815)

  • Fix for unexpected assertion inside wx.aui.AuiMDIChildFrame.Close.

  • Fix a bug in setting AuiDockingGuide size. (#727)

  • Remove unnecessary AUI notebook updating, and use wx.BufferedDC in

    Repaint() to mitigate flicker. (wx.lib.agw.aui). (#851, #686)

  • Fixed crashing bug when using client data with items in

    wx.dataview.DataViewTreeCtrl. (#856)

  • Detach wx.Control in AuiToolbar from current sizer before attach to

    a new one. (#843)

  • Fixed a problem in wx.lib.mixins.listctrl.TextEditMixin where the

    height of the editor widget could be set to zero. (See discussion in

    #849)

  • Fix a bug in calculating whether a tool fits into the

    AuiToolBar. (#863)

  • Override SetForegroundColour and SetBackgroundColour in

    MaskedEditMixin (#808)

  • Add an explicit wx.GraphicsContext.Create overload for

    wx.AutoBufferedPaintDC. (#783)

  • Return original AGW window style in

    AuiToolBar.GetAGWWindowStyleFlag. (#870)

  • Fix a bug in group management on wx.lib.masked.numctrl; the previous

    code used truediv (‘/’) to calculate _groupSpace, but in python 3.x

    this leads to a float result, instead of an integer as was

    expected. Using floordiv (‘//’) instead to solve the problem. (#865)

  • Hide the window when the tool does not fit into AuiToolBar. (#872)

  • Fixed the virtual dispatch code for the PGEditor.GetValueFromControl

    method to properly pass the parameters to the Python implementation,

    and also fixed how the return value is handled. (#742)

  • Fixed all implementations of the PGProperty.StringToValue and

    IntToValue methods to treat the value parameter as a return

    value. (#742)

  • Add missing wx.adv.EVT_CALENDAR_WEEK_CLICKED (#875)

  • Fixed the stock labels to conform to Windows design

    guidelines. (#787)

  • Always reset floating size and style when floating a toolbar in

    agw.aui. (#880)

What is wxPython?


wxPython is a cross-platform GUI toolkit for the Python programming

language. It allows Python programmers to create programs with a

robust, highly functional graphical user interface, simply and

easily. It is implemented as a set of Python extension modules that

wrap the GUI components of the popular wxWidgets cross platform

library, which is written in C++. Supported platforms are Microsoft

Windows, Mac OS X and macOS, and Linux or other unix-like systems with

GTK2 or GTK3 libraries. In most cases the native widgets are used on

each platform to provide a 100% native look and feel for the

application.

What is wxPython Phoenix?


wxPython’s Project Phoenix is a new from-the-ground-up implementation

of wxPython, created with the intent of making wxPython “better,

stronger, faster than he was before.” In other words, this new

implementation is focused on improving speed, maintainability and

extensibility of wxPython, as well as removing most of the cruft that

had accumulated over the long life of Classic wxPython.

The project has been in development off and on, mostly behind the

scenes, for many years. For the past few years automated snapshot

builds have been available for those adventurous enough to try it, and

many people eventually started using the snapshots in their projects,

even for production releases. While there are still some things on

the periphery that need to be completed, the core of the new wxPython

extension modules which wrap the wxWidgets code has been stable for a

long time now.

Due to some things being cleaned up, reorganized, simplified and

dehackified wxPython Phoenix is not completely backwards compatible

with wxPython Classic. This is intended. In general, however, the API

differences tend to be minor and some applications can use Phoenix

with slight, or even with no modifications. In some other cases the

correct way to do things was also available in Classic and it’s only

the wrong way that has been removed from Phoenix. For more

information there is a Migration Guide document available at:

https://docs.wxpython.org/MigrationGuide.html

The new wxPython API reference documentation, including all

Python-specific additions and customizations, and docs for the wx.lib

package, is located at: https://docs.wxpython.org/


Robin Dunn

Software Craftsman

http://wxPython.org


Thanks once more, Robin! Good work.

···

On Sun, Jun 17, 2018 at 9:49 PM Robin Dunn robin@alldunn.com wrote:

Announcing wxPython 4.0.2

=========================

Yes. There is also a wx.NewId replacement on the way for when you need to pre-allocate IDs that may be used more than once.

···

On Monday, June 18, 2018 at 12:30:18 AM UTC-7, Marco Prosperi wrote:

Great work! I’ve just installed and looking around: I get a lot of deprecation warning about NewId. Which is the recommended way of managing ids? Passing wx.ANY in the constructor of objects and then object.GetId() to get the id?

Robin

I found this thread looking for solutions to the deprecation message. I was heartened by this exchange:

Before I go on a mass editing spree to replace wx.NewId, can you confirm that wx.Window.NewControlId is the proper replacement?
It is. It uses an internal management class to reserve IDs when used and release them when the widget is destroyed, so even if the internal counter wraps around those IDs that are still active will not be reused.

Perhaps I took this too literally, but when I replaced calls to wx.NewId() with calls to wx.Window.NewControlId() (which is what I thought that meant) I got something far worse than a deprecation warning:

Traceback (most recent call last):
File “E:/Users/paulk/Documents/Python Projects/SteelSeriesMacroEditor/ss3me.py”, line 177, in on_grid_cell_ctx_menu_click
menu.Append(self.menu_popup_ins_keycap, “Insert keystroke event below”)
wx._core.wxAssertionError: C++ assertion “gs_autoIdsRefCount[winid] != ID_FREE” failed at …..\src\common\windowid.cpp(110) in `anonymous-namespace’::IncIdRefCount(): id should first be reserved

``

So clearly there is some intermediate step that I have failed to appreciate. What is it?

Crude but effective (i.e. works for me):

# As of wxPython 4.0.2 (Pheonix) wx.NewId() is deprecated --
# there was a discussion of the on the mailing list, June 2018
def new_wx_id():
    try:
        # this is a new replacement function for deprecated NewId();
        # note that return is not int, but object w/ __int__ method
        return wx.NewIdRef()
    except AttributeError:
        return wx.NewId()

···

On Tue, 19 Feb 2019, Paul Keating wrote:

I found this thread looking for solutions to the deprecation message. I was
heartened by this exchange:

Before I go on a mass editing spree to replace wx.NewId, can you confirm
> that wx.Window.NewControlId is the proper replacement?

It is. It uses an internal management class to reserve IDs when used and
release them when the widget is destroyed, so even if the internal counter
wraps around those IDs that are still active will not be reused.

Perhaps I took this too literally, but when I replaced calls to wx.NewId()
with calls to wx.Window.NewControlId() (which is what I thought that meant)
I got something far worse than a deprecation warning:

Crude but effective (i.e. works for me):

# As of wxPython 4.0.2 (Pheonix) wx.NewId() is deprecated --
# there was a discussion of the on the mailing list, June 2018
def new_wx_id():
    try:
        # this is a new replacement function for deprecated NewId();
        # note that return is not int, but object w/ __int__ method
        return wx.NewIdRef()
    except AttributeError:
        return wx.NewId()

Or, monkey-patching, right after import wx in the "main script" (untested):

try:
   wx.NewIdRef
except AttributeError:
   wx.NewIdRef = wx.NewId

Karsten

Sorry for jumping in - but a thought occurred to me. The old wx.NewId() returned a positive int and the wx.Window.NewControlId() returns a negative int. With that in mind does having a positive ID for a control cause any issues? For example my menu items have very large ID numbers i.e. 140692866601464. Could the positive numbers cause seg faults or some other issues? Mixing the positive and negative numbers sounds like an issue???

Johnf

···

On 2/19/19 3:31 PM, Karsten Hilbert wrote:

Crude but effective (i.e. works for me):

# As of wxPython 4.0.2 (Pheonix) wx.NewId() is deprecated --
# there was a discussion of the on the mailing list, June 2018
def new_wx_id():
     try:
         # this is a new replacement function for deprecated NewId();
         # note that return is not int, but object w/ __int__ method
         return wx.NewIdRef()
     except AttributeError:
         return wx.NewId()

Or, monkey-patching, right after import wx in the "main script" (untested):

try:
    wx.NewIdRef
except AttributeError:
    wx.NewIdRef = wx.NewId

Karsten

There has been some other discussions since then that uncovered some more information, and prompted some new additions in newer wxPython releases. I summarized a few days ago what has changed, why, and what should be used going forward in the next release of the MigrationGuide. (The software changes were made in 4.0.3 however, so there is no need to wait for the next release.)

See the last section of the Migration Guide in the preview build of the docs: wxPython Project Phoenix Migration Guide — wxPython Phoenix 4.2.3a1 documentation

···

On Tuesday, February 19, 2019 at 12:45:46 PM UTC-8, Paul Keating wrote:

I found this thread looking for solutions to the deprecation message. I was heartened by this exchange:

Before I go on a mass editing spree to replace wx.NewId, can you confirm that wx.Window.NewControlId is the proper replacement?
It is. It uses an internal management class to reserve IDs when used and release them when the widget is destroyed, so even if the internal counter wraps around those IDs that are still active will not be reused.

Perhaps I took this too literally, but when I replaced calls to wx.NewId() with calls to wx.Window.NewControlId() (which is what I thought that meant) I got something far worse than a deprecation warning:

Robin

No. That was just the initial mechanism for keeping the managed IDs and the unmanaged IDs were kept from stomping on each other for as long as possible.

···

On Tuesday, February 19, 2019 at 3:43:45 PM UTC-8, johnf wrote:

      Sorry for
jumping in - but a thought occurred to me.  The old wx.NewId()
returned a positive int and the wx.Window.NewControlId() returns a
negative int.  With that in mind does having a positive ID for a
control cause any issues?  For example my menu items have very
large ID numbers i.e. 140692866601464. Could the positive numbers
cause seg faults or some other issues?  Mixing the positive and
negative numbers sounds like an issue??????

Robin

Hurrah!!! Thank you mery much for the work.

But I was unable to install wxPython 4.0.2 from PyPi in Ubuntu 18.04.
I get error:

(cd /tmp/pip-build-rblgzybr/wxpython/build/wxbld/gtk3/lib/; rm -f
libwx_gtk3u_ribbon-3.0.so libwx_gtk3u_ribbon-3.0.so.0; ln -s
libwx_gtk3u_ribbon-3.0.so.0.4.0 libwx_gtk3u_ribbon-3.0.so.0; ln -s
libwx_gtk3u_ribbon-3.0.so.0 libwx_gtk3u_ribbon-3.0.so)
    g++ -shared -fPIC -o
/tmp/pip-build-rblgzybr/wxpython/build/wxbld/gtk3/lib/libwx_gtk3u_gl-3.0.so.0.4.0
gldll_glcmn.o gldll_glx11.o gldll_gtk_glcanvas.o
-L/tmp/pip-build-rblgzybr/wxpython/build/wxbld/gtk3/lib
-Wl,-soname,libwx_gtk3u_gl-3.0.so.0 -pthread -lwxtiff-3.0
-lgtk-3 -lgdk-3 -lpangocairo-1.0 -lpango-1.0 -latk-1.0 -lcairo-gobject
-lcairo -lgdk_pixbuf-2.0 -lgio-2.0 -lgobject-2.0 -lgthread-2.0
-pthread -lglib-2.0 -lX11 -lXxf86vm -lSM -lgtk-3 -lgdk-3
-lpangocairo-1.0 -lpango-1.0 -latk-1.0 -lcairo-gobject -lcairo
-lgdk_pixbuf-2.0 -lgio-2.0 -lgobject-2.0 -lglib-2.0 -lpng -lz -ljpeg
-lwxregexu-3.0 -pthread
-Wl,--version-script,/tmp/pip-build-rblgzybr/wxpython/build/wxbld/gtk3/version-script
-lz -ldl -lm -lwx_gtk3u_core-3.0 -lwx_baseu-3.0 -lGL -lGLU -lz -ldl
-lm
    (cd /tmp/pip-build-rblgzybr/wxpython/build/wxbld/gtk3/lib/; rm -f
libwx_gtk3u_aui-3.0.so libwx_gtk3u_aui-3.0.so.0; ln -s
libwx_gtk3u_aui-3.0.so.0.4.0 libwx_gtk3u_aui-3.0.so.0; ln -s
libwx_gtk3u_aui-3.0.so.0 libwx_gtk3u_aui-3.0.so)
    (if test -f utils/wxrc/Makefile ; then cd utils/wxrc && make all ; fi)
    make[1]: вход в каталог
«/tmp/pip-build-rblgzybr/wxpython/build/wxbld/gtk3/utils/wxrc»
    make[1]: Цель «all» не требует выполнения команд.
    make[1]: выход из каталога
«/tmp/pip-build-rblgzybr/wxpython/build/wxbld/gtk3/utils/wxrc»
    (cd /tmp/pip-build-rblgzybr/wxpython/build/wxbld/gtk3/lib/; rm -f
libwx_gtk3u_propgrid-3.0.so libwx_gtk3u_propgrid-3.0.so.0; ln -s
libwx_gtk3u_propgrid-3.0.so.0.4.0 libwx_gtk3u_propgrid-3.0.so.0; ln -s
libwx_gtk3u_propgrid-3.0.so.0 libwx_gtk3u_propgrid-3.0.so)
    (cd /tmp/pip-build-rblgzybr/wxpython/build/wxbld/gtk3/lib/; rm -f
libwx_gtk3u_richtext-3.0.so libwx_gtk3u_richtext-3.0.so.0; ln -s
libwx_gtk3u_richtext-3.0.so.0.4.0 libwx_gtk3u_richtext-3.0.so.0; ln -s
libwx_gtk3u_richtext-3.0.so.0 libwx_gtk3u_richtext-3.0.so)
    /usr/bin/x86_64-linux-gnu-ld: cannot find -lGL
    collect2: error: ld returned 1 exit status
    Makefile:16107: recipe for target
'/tmp/pip-build-rblgzybr/wxpython/build/wxbld/gtk3/lib/libwx_gtk3u_gl-3.0.so.0.4.0'
failed
    make: *** [/tmp/pip-build-rblgzybr/wxpython/build/wxbld/gtk3/lib/libwx_gtk3u_gl-3.0.so.0.4.0]
Error 1
    Error building
    ERROR: failed building wxWidgets
    Traceback (most recent call last):
      File "build.py", line 1321, in cmd_build_wx
        wxbuild.main(wxDir(), build_options)
      File "/tmp/pip-build-rblgzybr/wxpython/buildtools/build_wxwidgets.py",
line 498, in main
        exitIfError(wxBuilder.build(dir=buildDir, options=args),
"Error building")
      File "/tmp/pip-build-rblgzybr/wxpython/buildtools/build_wxwidgets.py",
line 85, in exitIfError
        raise builder.BuildError(msg)
    buildtools.builder.BuildError: Error building
    Finished command: build_wx (0m2.315s)
    Finished command: build (0m2.316s)
    Command '"/home/jenyay/.local/share/virtualenvs/outwiker--dI8U2my/bin/python3"
-u build.py build' failed with exit code 1.

A similar error is described here -

···

пн, 18 июн. 2018 г. в 7:49, Robin Dunn <robin@alldunn.com>:

Announcing wxPython 4.0.2

PyPI: wxPython · PyPI
Extras: Index of /wxPython4/extras
Pip: ``pip install wxPython==4.0.2``

Changes in this release include the following:

* Fixed wx.html2.EVT_WEBVIEW_NAVIGATING event not being sent on some
   versions of Linux. (#741)

* wx.Sizers can now be used as an iterator to iterate over the items
   within the sizer. (#738)

* Fix Python3 division in ThumbnailCtrl. (#746)

* Fix leaking image list in CheckListCtrlMixin (#752)

* All items marked as deprecated in the wxWidgets interface
   (documentation) files will now throw a DeprecationWarning when used
   from wxPython. Many of these items are disappearing in 4.1 so it's
   important to ensure they are deprecated at runtime too instead of
   just in the docs. (#749)

* Ensure that the attribute list given to the GLCanvas constructor is
   zero-terminated like it was in Classic. (#770)

* Updated to the wxWidgets 3.0.4 release version.

* Added the wxWidgets version number to the tail end of the string
   returned by wx.version().

* Bind EVT_WINDOW_DESTROY event only to the tree windows in
   CustomTreeCtrl, since otherwise it would be caught when child
   windows are destroyed too, which causes problems in this
   case. (#778)

* Fixed a problem where wx.TreeCtrl.OnCompareItems was not being
   called in derived classes on Windows. This was due to an
   optimization that wasn't compatible with how the classes are
   wrapped. (#774)

* Added wrappers for wx.ClassInfo and exposed
   wx.Object.GetClassInfo. This class is part of wxWidgets' internal
   type information system and although it is not very useful for
   Python applications it is useful for debugging some internal
   wxPython issues.

* Removed the wx.lib.pubsub package, and replaced it with code that
   imports the standalone PyPubSub in order remain compatible with
   older code that still uses wx.lib.pubsub. (#782, #792)

* Fixed bug in wx.lib.intctrl (#790)

* Fixed subclassing of wx.TextCompleter and wx.TextCompleterSimple
   (#827)

* Fixes for Python3 compatibility in PyCrust. (#823)

* Fix wxGet to be able to use pip v10. (#817)

* Change winid parameter in wx.ScrolledWindow to id, for
   consistency. (#816)

* Ensure that the page exists in book controls GetPage and RemovePage
   methods. At least one of the wx ports do not do this. (#830)

* Added missing wx.NumberEntryDialog

* Change wx.TextCompleterSimple.GetCompletions to send the list of
   strings as a return value, rather than a parameter that gets
   filled. (#836)

* Enabled the wx.GraphicsContext.Create(metaFileDC) wrapper (#811)

* Metafile support is also available on OSX, so wx.msw.Metafile and
   wx.msw.MetafileDC have been moved to the core wx module. So they can
   now be accessed as wx.Metafile and wx.MetafileDC.

* Updated the waf tool used by the build to version 2.0.7. This fixes
   problems with building for Python 3.7.

* Fixed alignment in buttons on MSW which have had foreground or
   background colors set. (#815)

* Fix for unexpected assertion inside wx.aui.AuiMDIChildFrame.Close.

* Fix a bug in setting AuiDockingGuide size. (#727)

* Remove unnecessary AUI notebook updating, and use wx.BufferedDC in
   Repaint() to mitigate flicker. (wx.lib.agw.aui). (#851, #686)

* Fixed crashing bug when using client data with items in
   wx.dataview.DataViewTreeCtrl. (#856)

* Detach wx.Control in AuiToolbar from current sizer before attach to
   a new one. (#843)

* Fixed a problem in wx.lib.mixins.listctrl.TextEditMixin where the
   height of the editor widget could be set to zero. (See discussion in
   #849)

* Fix a bug in calculating whether a tool fits into the
   AuiToolBar. (#863)

* Override SetForegroundColour and SetBackgroundColour in
   MaskedEditMixin (#808)

* Add an explicit wx.GraphicsContext.Create overload for
   wx.AutoBufferedPaintDC. (#783)

* Return original AGW window style in
   AuiToolBar.GetAGWWindowStyleFlag. (#870)

* Fix a bug in group management on wx.lib.masked.numctrl; the previous
   code used truediv ('/') to calculate _groupSpace, but in python 3.x
   this leads to a float result, instead of an integer as was
   expected. Using floordiv ('//') instead to solve the problem. (#865)

* Hide the window when the tool does not fit into AuiToolBar. (#872)

* Fixed the virtual dispatch code for the PGEditor.GetValueFromControl
   method to properly pass the parameters to the Python implementation,
   and also fixed how the return value is handled. (#742)

* Fixed all implementations of the PGProperty.StringToValue and
   IntToValue methods to treat the value parameter as a return
   value. (#742)

* Add missing wx.adv.EVT_CALENDAR_WEEK_CLICKED (#875)

* Fixed the stock labels to conform to Windows design
   guidelines. (#787)

* Always reset floating size and style when floating a toolbar in
   agw.aui. (#880)

What is wxPython?
-----------------

wxPython is a cross-platform GUI toolkit for the Python programming
language. It allows Python programmers to create programs with a
robust, highly functional graphical user interface, simply and
easily. It is implemented as a set of Python extension modules that
wrap the GUI components of the popular wxWidgets cross platform
library, which is written in C++. Supported platforms are Microsoft
Windows, Mac OS X and macOS, and Linux or other unix-like systems with
GTK2 or GTK3 libraries. In most cases the native widgets are used on
each platform to provide a 100% native look and feel for the
application.

What is wxPython Phoenix?
-------------------------

wxPython's Project Phoenix is a new from-the-ground-up implementation
of wxPython, created with the intent of making wxPython “better,
stronger, faster than he was before.” In other words, this new
implementation is focused on improving speed, maintainability and
extensibility of wxPython, as well as removing most of the cruft that
had accumulated over the long life of Classic wxPython.

The project has been in development off and on, mostly behind the
scenes, for many years. For the past few years automated snapshot
builds have been available for those adventurous enough to try it, and
many people eventually started using the snapshots in their projects,
even for production releases. While there are still some things on
the periphery that need to be completed, the core of the new wxPython
extension modules which wrap the wxWidgets code has been stable for a
long time now.

Due to some things being cleaned up, reorganized, simplified and
dehackified wxPython Phoenix is not completely backwards compatible
with wxPython Classic. This is intended. In general, however, the API
differences tend to be minor and some applications can use Phoenix
with slight, or even with no modifications. In some other cases the
correct way to do things was also available in Classic and it's only
the wrong way that has been removed from Phoenix. For more
information there is a Migration Guide document available at:
wxPython Project Phoenix Migration Guide — wxPython Phoenix 4.2.2 documentation

The new wxPython API reference documentation, including all
Python-specific additions and customizations, and docs for the wx.lib
package, is located at: https://docs.wxpython.org/

--
Robin Dunn
Software Craftsman
http://wxPython.org

--
You received this message because you are subscribed to the Google Groups "wxPython-dev" group.
To unsubscribe from this group and stop receiving emails from it, send an email to wxPython-dev+unsubscribe@googlegroups.com.
For more options, visit https://groups.google.com/d/optout.

--
Всего хорошего.
Евгений Ильин

It looks like you are missing the libGL development files. Try running (as root):

apt-get build-dep wxwidgets3.0

That should get you everything you need.

···

On Tue, 19 Jun 2018, Евгений Ильин wrote:

Hurrah!!! Thank you mery much for the work.

But I was unable to install wxPython 4.0.2 from PyPi in Ubuntu 18.04.
I get error:

(cd /tmp/pip-build-rblgzybr/wxpython/build/wxbld/gtk3/lib/; rm -f
libwx_gtk3u_ribbon-3.0.so libwx_gtk3u_ribbon-3.0.so.0; ln -s
libwx_gtk3u_ribbon-3.0.so.0.4.0 libwx_gtk3u_ribbon-3.0.so.0; ln -s
libwx_gtk3u_ribbon-3.0.so.0 libwx_gtk3u_ribbon-3.0.so)
   g++ -shared -fPIC -o
/tmp/pip-build-rblgzybr/wxpython/build/wxbld/gtk3/lib/libwx_gtk3u_gl-3.0.so.0.4.0
gldll_glcmn.o gldll_glx11.o gldll_gtk_glcanvas.o
-L/tmp/pip-build-rblgzybr/wxpython/build/wxbld/gtk3/lib
-Wl,-soname,libwx_gtk3u_gl-3.0.so.0 -pthread -lwxtiff-3.0
-lgtk-3 -lgdk-3 -lpangocairo-1.0 -lpango-1.0 -latk-1.0 -lcairo-gobject
-lcairo -lgdk_pixbuf-2.0 -lgio-2.0 -lgobject-2.0 -lgthread-2.0
-pthread -lglib-2.0 -lX11 -lXxf86vm -lSM -lgtk-3 -lgdk-3
-lpangocairo-1.0 -lpango-1.0 -latk-1.0 -lcairo-gobject -lcairo
-lgdk_pixbuf-2.0 -lgio-2.0 -lgobject-2.0 -lglib-2.0 -lpng -lz -ljpeg
-lwxregexu-3.0 -pthread
-Wl,--version-script,/tmp/pip-build-rblgzybr/wxpython/build/wxbld/gtk3/version-script
-lz -ldl -lm -lwx_gtk3u_core-3.0 -lwx_baseu-3.0 -lGL -lGLU -lz -ldl
-lm
   (cd /tmp/pip-build-rblgzybr/wxpython/build/wxbld/gtk3/lib/; rm -f
libwx_gtk3u_aui-3.0.so libwx_gtk3u_aui-3.0.so.0; ln -s
libwx_gtk3u_aui-3.0.so.0.4.0 libwx_gtk3u_aui-3.0.so.0; ln -s
libwx_gtk3u_aui-3.0.so.0 libwx_gtk3u_aui-3.0.so)
   (if test -f utils/wxrc/Makefile ; then cd utils/wxrc && make all ; fi)
   make[1]: вход в каталог
«/tmp/pip-build-rblgzybr/wxpython/build/wxbld/gtk3/utils/wxrc»
   make[1]: Цель «all» не требует выполнения команд.
   make[1]: выход из каталога
«/tmp/pip-build-rblgzybr/wxpython/build/wxbld/gtk3/utils/wxrc»
   (cd /tmp/pip-build-rblgzybr/wxpython/build/wxbld/gtk3/lib/; rm -f
libwx_gtk3u_propgrid-3.0.so libwx_gtk3u_propgrid-3.0.so.0; ln -s
libwx_gtk3u_propgrid-3.0.so.0.4.0 libwx_gtk3u_propgrid-3.0.so.0; ln -s
libwx_gtk3u_propgrid-3.0.so.0 libwx_gtk3u_propgrid-3.0.so)
   (cd /tmp/pip-build-rblgzybr/wxpython/build/wxbld/gtk3/lib/; rm -f
libwx_gtk3u_richtext-3.0.so libwx_gtk3u_richtext-3.0.so.0; ln -s
libwx_gtk3u_richtext-3.0.so.0.4.0 libwx_gtk3u_richtext-3.0.so.0; ln -s
libwx_gtk3u_richtext-3.0.so.0 libwx_gtk3u_richtext-3.0.so)
   /usr/bin/x86_64-linux-gnu-ld: cannot find -lGL
   collect2: error: ld returned 1 exit status
   Makefile:16107: recipe for target
'/tmp/pip-build-rblgzybr/wxpython/build/wxbld/gtk3/lib/libwx_gtk3u_gl-3.0.so.0.4.0'
failed
   make: *** [/tmp/pip-build-rblgzybr/wxpython/build/wxbld/gtk3/lib/libwx_gtk3u_gl-3.0.so.0.4.0]
Error 1
   Error building
   ERROR: failed building wxWidgets
   Traceback (most recent call last):
     File "build.py", line 1321, in cmd_build_wx
       wxbuild.main(wxDir(), build_options)
     File "/tmp/pip-build-rblgzybr/wxpython/buildtools/build_wxwidgets.py",
line 498, in main
       exitIfError(wxBuilder.build(dir=buildDir, options=args),
"Error building")
     File "/tmp/pip-build-rblgzybr/wxpython/buildtools/build_wxwidgets.py",
line 85, in exitIfError
       raise builder.BuildError(msg)
   buildtools.builder.BuildError: Error building
   Finished command: build_wx (0m2.315s)
   Finished command: build (0m2.316s)
   Command '"/home/jenyay/.local/share/virtualenvs/outwiker--dI8U2my/bin/python3"
-u build.py build' failed with exit code 1.

A similar error is described here -
Bug #1770742 “Cannot find -lGL” : Bugs : libglvnd package : Ubuntu
пн, 18 июн. 2018 г. в 7:49, Robin Dunn <robin@alldunn.com>:

Announcing wxPython 4.0.2

PyPI: wxPython · PyPI
Extras: Index of /wxPython4/extras
Pip: ``pip install wxPython==4.0.2``

Changes in this release include the following:

* Fixed wx.html2.EVT_WEBVIEW_NAVIGATING event not being sent on some
   versions of Linux. (#741)

* wx.Sizers can now be used as an iterator to iterate over the items
   within the sizer. (#738)

* Fix Python3 division in ThumbnailCtrl. (#746)

* Fix leaking image list in CheckListCtrlMixin (#752)

* All items marked as deprecated in the wxWidgets interface
   (documentation) files will now throw a DeprecationWarning when used
   from wxPython. Many of these items are disappearing in 4.1 so it's
   important to ensure they are deprecated at runtime too instead of
   just in the docs. (#749)

* Ensure that the attribute list given to the GLCanvas constructor is
   zero-terminated like it was in Classic. (#770)

* Updated to the wxWidgets 3.0.4 release version.

* Added the wxWidgets version number to the tail end of the string
   returned by wx.version().

* Bind EVT_WINDOW_DESTROY event only to the tree windows in
   CustomTreeCtrl, since otherwise it would be caught when child
   windows are destroyed too, which causes problems in this
   case. (#778)

* Fixed a problem where wx.TreeCtrl.OnCompareItems was not being
   called in derived classes on Windows. This was due to an
   optimization that wasn't compatible with how the classes are
   wrapped. (#774)

* Added wrappers for wx.ClassInfo and exposed
   wx.Object.GetClassInfo. This class is part of wxWidgets' internal
   type information system and although it is not very useful for
   Python applications it is useful for debugging some internal
   wxPython issues.

* Removed the wx.lib.pubsub package, and replaced it with code that
   imports the standalone PyPubSub in order remain compatible with
   older code that still uses wx.lib.pubsub. (#782, #792)

* Fixed bug in wx.lib.intctrl (#790)

* Fixed subclassing of wx.TextCompleter and wx.TextCompleterSimple
   (#827)

* Fixes for Python3 compatibility in PyCrust. (#823)

* Fix wxGet to be able to use pip v10. (#817)

* Change winid parameter in wx.ScrolledWindow to id, for
   consistency. (#816)

* Ensure that the page exists in book controls GetPage and RemovePage
   methods. At least one of the wx ports do not do this. (#830)

* Added missing wx.NumberEntryDialog

* Change wx.TextCompleterSimple.GetCompletions to send the list of
   strings as a return value, rather than a parameter that gets
   filled. (#836)

* Enabled the wx.GraphicsContext.Create(metaFileDC) wrapper (#811)

* Metafile support is also available on OSX, so wx.msw.Metafile and
   wx.msw.MetafileDC have been moved to the core wx module. So they can
   now be accessed as wx.Metafile and wx.MetafileDC.

* Updated the waf tool used by the build to version 2.0.7. This fixes
   problems with building for Python 3.7.

* Fixed alignment in buttons on MSW which have had foreground or
   background colors set. (#815)

* Fix for unexpected assertion inside wx.aui.AuiMDIChildFrame.Close.

* Fix a bug in setting AuiDockingGuide size. (#727)

* Remove unnecessary AUI notebook updating, and use wx.BufferedDC in
   Repaint() to mitigate flicker. (wx.lib.agw.aui). (#851, #686)

* Fixed crashing bug when using client data with items in
   wx.dataview.DataViewTreeCtrl. (#856)

* Detach wx.Control in AuiToolbar from current sizer before attach to
   a new one. (#843)

* Fixed a problem in wx.lib.mixins.listctrl.TextEditMixin where the
   height of the editor widget could be set to zero. (See discussion in
   #849)

* Fix a bug in calculating whether a tool fits into the
   AuiToolBar. (#863)

* Override SetForegroundColour and SetBackgroundColour in
   MaskedEditMixin (#808)

* Add an explicit wx.GraphicsContext.Create overload for
   wx.AutoBufferedPaintDC. (#783)

* Return original AGW window style in
   AuiToolBar.GetAGWWindowStyleFlag. (#870)

* Fix a bug in group management on wx.lib.masked.numctrl; the previous
   code used truediv ('/') to calculate _groupSpace, but in python 3.x
   this leads to a float result, instead of an integer as was
   expected. Using floordiv ('//') instead to solve the problem. (#865)

* Hide the window when the tool does not fit into AuiToolBar. (#872)

* Fixed the virtual dispatch code for the PGEditor.GetValueFromControl
   method to properly pass the parameters to the Python implementation,
   and also fixed how the return value is handled. (#742)

* Fixed all implementations of the PGProperty.StringToValue and
   IntToValue methods to treat the value parameter as a return
   value. (#742)

* Add missing wx.adv.EVT_CALENDAR_WEEK_CLICKED (#875)

* Fixed the stock labels to conform to Windows design
   guidelines. (#787)

* Always reset floating size and style when floating a toolbar in
   agw.aui. (#880)

What is wxPython?
-----------------

wxPython is a cross-platform GUI toolkit for the Python programming
language. It allows Python programmers to create programs with a
robust, highly functional graphical user interface, simply and
easily. It is implemented as a set of Python extension modules that
wrap the GUI components of the popular wxWidgets cross platform
library, which is written in C++. Supported platforms are Microsoft
Windows, Mac OS X and macOS, and Linux or other unix-like systems with
GTK2 or GTK3 libraries. In most cases the native widgets are used on
each platform to provide a 100% native look and feel for the
application.

What is wxPython Phoenix?
-------------------------

wxPython's Project Phoenix is a new from-the-ground-up implementation
of wxPython, created with the intent of making wxPython “better,
stronger, faster than he was before.” In other words, this new
implementation is focused on improving speed, maintainability and
extensibility of wxPython, as well as removing most of the cruft that
had accumulated over the long life of Classic wxPython.

The project has been in development off and on, mostly behind the
scenes, for many years. For the past few years automated snapshot
builds have been available for those adventurous enough to try it, and
many people eventually started using the snapshots in their projects,
even for production releases. While there are still some things on
the periphery that need to be completed, the core of the new wxPython
extension modules which wrap the wxWidgets code has been stable for a
long time now.

Due to some things being cleaned up, reorganized, simplified and
dehackified wxPython Phoenix is not completely backwards compatible
with wxPython Classic. This is intended. In general, however, the API
differences tend to be minor and some applications can use Phoenix
with slight, or even with no modifications. In some other cases the
correct way to do things was also available in Classic and it's only
the wrong way that has been removed from Phoenix. For more
information there is a Migration Guide document available at:
wxPython Project Phoenix Migration Guide — wxPython Phoenix 4.2.2 documentation

The new wxPython API reference documentation, including all
Python-specific additions and customizations, and docs for the wx.lib
package, is located at: https://docs.wxpython.org/

--
Robin Dunn
Software Craftsman
http://wxPython.org

--
You received this message because you are subscribed to the Google Groups "wxPython-dev" group.
To unsubscribe from this group and stop receiving emails from it, send an email to wxPython-dev+unsubscribe@googlegroups.com.
For more options, visit https://groups.google.com/d/optout.

--
Всего хорошего.
Евгений Ильин
http://jenyay.net

--
You received this message because you are subscribed to the Google Groups "wxPython-dev" group.
To unsubscribe from this group and stop receiving emails from it, send an email to wxPython-dev+unsubscribe@googlegroups.com.
For more options, visit https://groups.google.com/d/optout.

Also, there are now Ubuntu 18 binaries available at Index of /wxPython4/extras/linux so you don’t need to build it yourself with pip if you are running on the amd64 architecture. See wxPython Downloads | wxPython for an example pip command for installing wheels from there.

···

Robin

On Tuesday, June 19, 2018 at 6:34:08 AM UTC-7, Scott Talbert wrote:

It looks like you are missing the libGL development files. Try running
(as root):

apt-get build-dep wxwidgets3.0

That should get you everything you need.

On Tue, 19 Jun 2018, Евгений Ильин wrote:

Hurrah!!! Thank you mery much for the work.

But I was unable to install wxPython 4.0.2 from PyPi in Ubuntu 18.04.

I get error:

(cd /tmp/pip-build-rblgzybr/wxpython/build/wxbld/gtk3/lib/; rm -f

libwx_gtk3u_ribbon-3.0.so libwx_gtk3u_ribbon-3.0.so.0; ln -s

libwx_gtk3u_ribbon-3.0.so.0.4.0 libwx_gtk3u_ribbon-3.0.so.0; ln -s

libwx_gtk3u_ribbon-3.0.so.0 libwx_gtk3u_ribbon-3.0.so)

g++ -shared -fPIC -o

/tmp/pip-build-rblgzybr/wxpython/build/wxbld/gtk3/lib/libwx_gtk3u_gl-3.0.so.0.4.0

gldll_glcmn.o gldll_glx11.o gldll_gtk_glcanvas.o

-L/tmp/pip-build-rblgzybr/wxpython/build/wxbld/gtk3/lib

-Wl,-soname,libwx_gtk3u_gl-3.0.so.0 -pthread -lwxtiff-3.0

-lgtk-3 -lgdk-3 -lpangocairo-1.0 -lpango-1.0 -latk-1.0 -lcairo-gobject

-lcairo -lgdk_pixbuf-2.0 -lgio-2.0 -lgobject-2.0 -lgthread-2.0

-pthread -lglib-2.0 -lX11 -lXxf86vm -lSM -lgtk-3 -lgdk-3

-lpangocairo-1.0 -lpango-1.0 -latk-1.0 -lcairo-gobject -lcairo

-lgdk_pixbuf-2.0 -lgio-2.0 -lgobject-2.0 -lglib-2.0 -lpng -lz -ljpeg

-lwxregexu-3.0 -pthread

-Wl,–version-script,/tmp/pip-build-rblgzybr/wxpython/build/wxbld/gtk3/version-script

-lz -ldl -lm -lwx_gtk3u_core-3.0 -lwx_baseu-3.0 -lGL -lGLU -lz -ldl

-lm

(cd /tmp/pip-build-rblgzybr/wxpython/build/wxbld/gtk3/lib/; rm -f

libwx_gtk3u_aui-3.0.so libwx_gtk3u_aui-3.0.so.0; ln -s

libwx_gtk3u_aui-3.0.so.0.4.0 libwx_gtk3u_aui-3.0.so.0; ln -s

libwx_gtk3u_aui-3.0.so.0 libwx_gtk3u_aui-3.0.so)

(if test -f utils/wxrc/Makefile ; then cd utils/wxrc && make all ; fi)

make[1]: вход в каталог

«/tmp/pip-build-rblgzybr/wxpython/build/wxbld/gtk3/utils/wxrc»

make[1]: Цель «all» не требует выполнения команд.

make[1]: выход из каталога

«/tmp/pip-build-rblgzybr/wxpython/build/wxbld/gtk3/utils/wxrc»

(cd /tmp/pip-build-rblgzybr/wxpython/build/wxbld/gtk3/lib/; rm -f

libwx_gtk3u_propgrid-3.0.so libwx_gtk3u_propgrid-3.0.so.0; ln -s

libwx_gtk3u_propgrid-3.0.so.0.4.0 libwx_gtk3u_propgrid-3.0.so.0; ln -s

libwx_gtk3u_propgrid-3.0.so.0 libwx_gtk3u_propgrid-3.0.so)

(cd /tmp/pip-build-rblgzybr/wxpython/build/wxbld/gtk3/lib/; rm -f

libwx_gtk3u_richtext-3.0.so libwx_gtk3u_richtext-3.0.so.0; ln -s

libwx_gtk3u_richtext-3.0.so.0.4.0 libwx_gtk3u_richtext-3.0.so.0; ln -s

libwx_gtk3u_richtext-3.0.so.0 libwx_gtk3u_richtext-3.0.so)

/usr/bin/x86_64-linux-gnu-ld: cannot find -lGL

collect2: error: ld returned 1 exit status

Makefile:16107: recipe for target

‘/tmp/pip-build-rblgzybr/wxpython/build/wxbld/gtk3/lib/libwx_gtk3u_gl-3.0.so.0.4.0’

failed

make: *** [/tmp/pip-build-rblgzybr/wxpython/build/wxbld/gtk3/lib/libwx_gtk3u_gl-3.0.so.0.4.0]

Error 1

Error building

ERROR: failed building wxWidgets

Traceback (most recent call last):

 File "build.py", line 1321, in cmd_build_wx
   wxbuild.main(wxDir(), build_options)
 File "/tmp/pip-build-rblgzybr/wxpython/buildtools/build_wxwidgets.py",

line 498, in main

   exitIfError(wxBuilder.build(dir=buildDir, options=args),

“Error building”)

 File "/tmp/pip-build-rblgzybr/wxpython/buildtools/build_wxwidgets.py",

line 85, in exitIfError

   raise builder.BuildError(msg)

buildtools.builder.BuildError: Error building

Finished command: build_wx (0m2.315s)

Finished command: build (0m2.316s)

Command '“/home/jenyay/.local/share/virtualenvs/outwiker–dI8U2my/bin/python3”

-u build.py build’ failed with exit code 1.

A similar error is described here -

https://bugs.launchpad.net/ubuntu/+source/libglvnd/+bug/1770742

пн, 18 июн. 2018 г. в 7:49, Robin Dunn robin@alldunn.com:

Announcing wxPython 4.0.2

=========================

PyPI: https://pypi.org/project/wxPython/4.0.2

Extras: https://extras.wxPython.org/wxPython4/extras/

Pip: pip install wxPython==4.0.2

Changes in this release include the following:

  • Fixed wx.html2.EVT_WEBVIEW_NAVIGATING event not being sent on some

versions of Linux. (#741)

  • wx.Sizers can now be used as an iterator to iterate over the items

within the sizer. (#738)

  • Fix Python3 division in ThumbnailCtrl. (#746)
  • Fix leaking image list in CheckListCtrlMixin (#752)
  • All items marked as deprecated in the wxWidgets interface

(documentation) files will now throw a DeprecationWarning when used

from wxPython. Many of these items are disappearing in 4.1 so it’s

important to ensure they are deprecated at runtime too instead of

just in the docs. (#749)

  • Ensure that the attribute list given to the GLCanvas constructor is

zero-terminated like it was in Classic. (#770)

  • Updated to the wxWidgets 3.0.4 release version.
  • Added the wxWidgets version number to the tail end of the string

returned by wx.version().

  • Bind EVT_WINDOW_DESTROY event only to the tree windows in

CustomTreeCtrl, since otherwise it would be caught when child

windows are destroyed too, which causes problems in this

case. (#778)

  • Fixed a problem where wx.TreeCtrl.OnCompareItems was not being

called in derived classes on Windows. This was due to an

optimization that wasn’t compatible with how the classes are

wrapped. (#774)

  • Added wrappers for wx.ClassInfo and exposed

wx.Object.GetClassInfo. This class is part of wxWidgets’ internal

type information system and although it is not very useful for

Python applications it is useful for debugging some internal

wxPython issues.

  • Removed the wx.lib.pubsub package, and replaced it with code that

imports the standalone PyPubSub in order remain compatible with

older code that still uses wx.lib.pubsub. (#782, #792)

  • Fixed bug in wx.lib.intctrl (#790)
  • Fixed subclassing of wx.TextCompleter and wx.TextCompleterSimple

(#827)

  • Fixes for Python3 compatibility in PyCrust. (#823)
  • Fix wxGet to be able to use pip v10. (#817)
  • Change winid parameter in wx.ScrolledWindow to id, for

consistency. (#816)

  • Ensure that the page exists in book controls GetPage and RemovePage

methods. At least one of the wx ports do not do this. (#830)

  • Added missing wx.NumberEntryDialog
  • Change wx.TextCompleterSimple.GetCompletions to send the list of

strings as a return value, rather than a parameter that gets

filled. (#836)

  • Enabled the wx.GraphicsContext.Create(metaFileDC) wrapper (#811)
  • Metafile support is also available on OSX, so wx.msw.Metafile and

wx.msw.MetafileDC have been moved to the core wx module. So they can

now be accessed as wx.Metafile and wx.MetafileDC.

  • Updated the waf tool used by the build to version 2.0.7. This fixes

problems with building for Python 3.7.

  • Fixed alignment in buttons on MSW which have had foreground or

background colors set. (#815)

  • Fix for unexpected assertion inside wx.aui.AuiMDIChildFrame.Close.
  • Fix a bug in setting AuiDockingGuide size. (#727)
  • Remove unnecessary AUI notebook updating, and use wx.BufferedDC in

Repaint() to mitigate flicker. (wx.lib.agw.aui). (#851, #686)

  • Fixed crashing bug when using client data with items in

wx.dataview.DataViewTreeCtrl. (#856)

  • Detach wx.Control in AuiToolbar from current sizer before attach to

a new one. (#843)

  • Fixed a problem in wx.lib.mixins.listctrl.TextEditMixin where the

height of the editor widget could be set to zero. (See discussion in

#849)

  • Fix a bug in calculating whether a tool fits into the

AuiToolBar. (#863)

  • Override SetForegroundColour and SetBackgroundColour in

MaskedEditMixin (#808)

  • Add an explicit wx.GraphicsContext.Create overload for

wx.AutoBufferedPaintDC. (#783)

  • Return original AGW window style in

AuiToolBar.GetAGWWindowStyleFlag. (#870)

  • Fix a bug in group management on wx.lib.masked.numctrl; the previous

code used truediv (‘/’) to calculate _groupSpace, but in python 3.x

this leads to a float result, instead of an integer as was

expected. Using floordiv (‘//’) instead to solve the problem. (#865)

  • Hide the window when the tool does not fit into AuiToolBar. (#872)
  • Fixed the virtual dispatch code for the PGEditor.GetValueFromControl

method to properly pass the parameters to the Python implementation,

and also fixed how the return value is handled. (#742)

  • Fixed all implementations of the PGProperty.StringToValue and

IntToValue methods to treat the value parameter as a return

value. (#742)

  • Add missing wx.adv.EVT_CALENDAR_WEEK_CLICKED (#875)
  • Fixed the stock labels to conform to Windows design

guidelines. (#787)

  • Always reset floating size and style when floating a toolbar in

agw.aui. (#880)

What is wxPython?


wxPython is a cross-platform GUI toolkit for the Python programming

language. It allows Python programmers to create programs with a

robust, highly functional graphical user interface, simply and

easily. It is implemented as a set of Python extension modules that

wrap the GUI components of the popular wxWidgets cross platform

library, which is written in C++. Supported platforms are Microsoft

Windows, Mac OS X and macOS, and Linux or other unix-like systems with

GTK2 or GTK3 libraries. In most cases the native widgets are used on

each platform to provide a 100% native look and feel for the

application.

What is wxPython Phoenix?


wxPython’s Project Phoenix is a new from-the-ground-up implementation

of wxPython, created with the intent of making wxPython “better,

stronger, faster than he was before.” In other words, this new

implementation is focused on improving speed, maintainability and

extensibility of wxPython, as well as removing most of the cruft that

had accumulated over the long life of Classic wxPython.

The project has been in development off and on, mostly behind the

scenes, for many years. For the past few years automated snapshot

builds have been available for those adventurous enough to try it, and

many people eventually started using the snapshots in their projects,

even for production releases. While there are still some things on

the periphery that need to be completed, the core of the new wxPython

extension modules which wrap the wxWidgets code has been stable for a

long time now.

Due to some things being cleaned up, reorganized, simplified and

dehackified wxPython Phoenix is not completely backwards compatible

with wxPython Classic. This is intended. In general, however, the API

differences tend to be minor and some applications can use Phoenix

with slight, or even with no modifications. In some other cases the

correct way to do things was also available in Classic and it’s only

the wrong way that has been removed from Phoenix. For more

information there is a Migration Guide document available at:

https://docs.wxpython.org/MigrationGuide.html

The new wxPython API reference documentation, including all

Python-specific additions and customizations, and docs for the wx.lib

package, is located at: https://docs.wxpython.org/

Robin Dunn

Software Craftsman

http://wxPython.org

You received this message because you are subscribed to the Google Groups “wxPython-dev” group.

To unsubscribe from this group and stop receiving emails from it, send an email to wxPython-dev+unsubscribe@googlegroups.com.

For more options, visit https://groups.google.com/d/optout.


Всего хорошего.

Евгений Ильин

http://jenyay.net


You received this message because you are subscribed to the Google Groups “wxPython-dev” group.

To unsubscribe from this group and stop receiving emails from it, send an email to wxPython-dev+unsubscribe@googlegroups.com.

For more options, visit https://groups.google.com/d/optout.

Unfortunately, it did not help. All dependencies are installed. There
is a suspicion that this is some kind of bug in Ubuntu 18.04. In
google sometimes referred to this error in this version of Ubuntu.

···

:

It looks like you are missing the libGL development files. Try running
(as root):

apt-get build-dep wxwidgets3.0

That should get you everything you need.

On Tue, 19 Jun 2018, Евгений Ильин wrote:

> Hurrah!!! Thank you mery much for the work.
>
> But I was unable to install wxPython 4.0.2 from PyPi in Ubuntu 18.04.
> I get error:
>
> (cd /tmp/pip-build-rblgzybr/wxpython/build/wxbld/gtk3/lib/; rm -f
> libwx_gtk3u_ribbon-3.0.so libwx_gtk3u_ribbon-3.0.so.0; ln -s
> libwx_gtk3u_ribbon-3.0.so.0.4.0 libwx_gtk3u_ribbon-3.0.so.0; ln -s
> libwx_gtk3u_ribbon-3.0.so.0 libwx_gtk3u_ribbon-3.0.so)
> g++ -shared -fPIC -o
> /tmp/pip-build-rblgzybr/wxpython/build/wxbld/gtk3/lib/libwx_gtk3u_gl-3.0.so.0.4.0
> gldll_glcmn.o gldll_glx11.o gldll_gtk_glcanvas.o
> -L/tmp/pip-build-rblgzybr/wxpython/build/wxbld/gtk3/lib
> -Wl,-soname,libwx_gtk3u_gl-3.0.so.0 -pthread -lwxtiff-3.0
> -lgtk-3 -lgdk-3 -lpangocairo-1.0 -lpango-1.0 -latk-1.0 -lcairo-gobject
> -lcairo -lgdk_pixbuf-2.0 -lgio-2.0 -lgobject-2.0 -lgthread-2.0
> -pthread -lglib-2.0 -lX11 -lXxf86vm -lSM -lgtk-3 -lgdk-3
> -lpangocairo-1.0 -lpango-1.0 -latk-1.0 -lcairo-gobject -lcairo
> -lgdk_pixbuf-2.0 -lgio-2.0 -lgobject-2.0 -lglib-2.0 -lpng -lz -ljpeg
> -lwxregexu-3.0 -pthread
> -Wl,--version-script,/tmp/pip-build-rblgzybr/wxpython/build/wxbld/gtk3/version-script
> -lz -ldl -lm -lwx_gtk3u_core-3.0 -lwx_baseu-3.0 -lGL -lGLU -lz -ldl
> -lm
> (cd /tmp/pip-build-rblgzybr/wxpython/build/wxbld/gtk3/lib/; rm -f
> libwx_gtk3u_aui-3.0.so libwx_gtk3u_aui-3.0.so.0; ln -s
> libwx_gtk3u_aui-3.0.so.0.4.0 libwx_gtk3u_aui-3.0.so.0; ln -s
> libwx_gtk3u_aui-3.0.so.0 libwx_gtk3u_aui-3.0.so)
> (if test -f utils/wxrc/Makefile ; then cd utils/wxrc && make all ; fi)
> make[1]: вход в каталог
> «/tmp/pip-build-rblgzybr/wxpython/build/wxbld/gtk3/utils/wxrc»
> make[1]: Цель «all» не требует выполнения команд.
> make[1]: выход из каталога
> «/tmp/pip-build-rblgzybr/wxpython/build/wxbld/gtk3/utils/wxrc»
> (cd /tmp/pip-build-rblgzybr/wxpython/build/wxbld/gtk3/lib/; rm -f
> libwx_gtk3u_propgrid-3.0.so libwx_gtk3u_propgrid-3.0.so.0; ln -s
> libwx_gtk3u_propgrid-3.0.so.0.4.0 libwx_gtk3u_propgrid-3.0.so.0; ln -s
> libwx_gtk3u_propgrid-3.0.so.0 libwx_gtk3u_propgrid-3.0.so)
> (cd /tmp/pip-build-rblgzybr/wxpython/build/wxbld/gtk3/lib/; rm -f
> libwx_gtk3u_richtext-3.0.so libwx_gtk3u_richtext-3.0.so.0; ln -s
> libwx_gtk3u_richtext-3.0.so.0.4.0 libwx_gtk3u_richtext-3.0.so.0; ln -s
> libwx_gtk3u_richtext-3.0.so.0 libwx_gtk3u_richtext-3.0.so)
> /usr/bin/x86_64-linux-gnu-ld: cannot find -lGL
> collect2: error: ld returned 1 exit status
> Makefile:16107: recipe for target
> '/tmp/pip-build-rblgzybr/wxpython/build/wxbld/gtk3/lib/libwx_gtk3u_gl-3.0.so.0.4.0'
> failed
> make: *** [/tmp/pip-build-rblgzybr/wxpython/build/wxbld/gtk3/lib/libwx_gtk3u_gl-3.0.so.0.4.0]
> Error 1
> Error building
> ERROR: failed building wxWidgets
> Traceback (most recent call last):
> File "build.py", line 1321, in cmd_build_wx
> wxbuild.main(wxDir(), build_options)
> File "/tmp/pip-build-rblgzybr/wxpython/buildtools/build_wxwidgets.py",
> line 498, in main
> exitIfError(wxBuilder.build(dir=buildDir, options=args),
> "Error building")
> File "/tmp/pip-build-rblgzybr/wxpython/buildtools/build_wxwidgets.py",
> line 85, in exitIfError
> raise builder.BuildError(msg)
> buildtools.builder.BuildError: Error building
> Finished command: build_wx (0m2.315s)
> Finished command: build (0m2.316s)
> Command '"/home/jenyay/.local/share/virtualenvs/outwiker--dI8U2my/bin/python3"
> -u build.py build' failed with exit code 1.
>
> A similar error is described here -
> Bug #1770742 “Cannot find -lGL” : Bugs : libglvnd package : Ubuntu
> пн, 18 июн. 2018 г. в 7:49, Robin Dunn <robin@alldunn.com>:
>>
>> Announcing wxPython 4.0.2
>> =========================
>>
>> PyPI: wxPython · PyPI
>> Extras: Index of /wxPython4/extras
>> Pip: ``pip install wxPython==4.0.2``
>>
>> Changes in this release include the following:
>>
>> * Fixed wx.html2.EVT_WEBVIEW_NAVIGATING event not being sent on some
>> versions of Linux. (#741)
>>
>> * wx.Sizers can now be used as an iterator to iterate over the items
>> within the sizer. (#738)
>>
>> * Fix Python3 division in ThumbnailCtrl. (#746)
>>
>> * Fix leaking image list in CheckListCtrlMixin (#752)
>>
>> * All items marked as deprecated in the wxWidgets interface
>> (documentation) files will now throw a DeprecationWarning when used
>> from wxPython. Many of these items are disappearing in 4.1 so it's
>> important to ensure they are deprecated at runtime too instead of
>> just in the docs. (#749)
>>
>> * Ensure that the attribute list given to the GLCanvas constructor is
>> zero-terminated like it was in Classic. (#770)
>>
>> * Updated to the wxWidgets 3.0.4 release version.
>>
>> * Added the wxWidgets version number to the tail end of the string
>> returned by wx.version().
>>
>> * Bind EVT_WINDOW_DESTROY event only to the tree windows in
>> CustomTreeCtrl, since otherwise it would be caught when child
>> windows are destroyed too, which causes problems in this
>> case. (#778)
>>
>> * Fixed a problem where wx.TreeCtrl.OnCompareItems was not being
>> called in derived classes on Windows. This was due to an
>> optimization that wasn't compatible with how the classes are
>> wrapped. (#774)
>>
>> * Added wrappers for wx.ClassInfo and exposed
>> wx.Object.GetClassInfo. This class is part of wxWidgets' internal
>> type information system and although it is not very useful for
>> Python applications it is useful for debugging some internal
>> wxPython issues.
>>
>> * Removed the wx.lib.pubsub package, and replaced it with code that
>> imports the standalone PyPubSub in order remain compatible with
>> older code that still uses wx.lib.pubsub. (#782, #792)
>>
>> * Fixed bug in wx.lib.intctrl (#790)
>>
>> * Fixed subclassing of wx.TextCompleter and wx.TextCompleterSimple
>> (#827)
>>
>> * Fixes for Python3 compatibility in PyCrust. (#823)
>>
>> * Fix wxGet to be able to use pip v10. (#817)
>>
>> * Change winid parameter in wx.ScrolledWindow to id, for
>> consistency. (#816)
>>
>> * Ensure that the page exists in book controls GetPage and RemovePage
>> methods. At least one of the wx ports do not do this. (#830)
>>
>> * Added missing wx.NumberEntryDialog
>>
>> * Change wx.TextCompleterSimple.GetCompletions to send the list of
>> strings as a return value, rather than a parameter that gets
>> filled. (#836)
>>
>> * Enabled the wx.GraphicsContext.Create(metaFileDC) wrapper (#811)
>>
>> * Metafile support is also available on OSX, so wx.msw.Metafile and
>> wx.msw.MetafileDC have been moved to the core wx module. So they can
>> now be accessed as wx.Metafile and wx.MetafileDC.
>>
>> * Updated the waf tool used by the build to version 2.0.7. This fixes
>> problems with building for Python 3.7.
>>
>> * Fixed alignment in buttons on MSW which have had foreground or
>> background colors set. (#815)
>>
>> * Fix for unexpected assertion inside wx.aui.AuiMDIChildFrame.Close.
>>
>> * Fix a bug in setting AuiDockingGuide size. (#727)
>>
>> * Remove unnecessary AUI notebook updating, and use wx.BufferedDC in
>> Repaint() to mitigate flicker. (wx.lib.agw.aui). (#851, #686)
>>
>> * Fixed crashing bug when using client data with items in
>> wx.dataview.DataViewTreeCtrl. (#856)
>>
>> * Detach wx.Control in AuiToolbar from current sizer before attach to
>> a new one. (#843)
>>
>> * Fixed a problem in wx.lib.mixins.listctrl.TextEditMixin where the
>> height of the editor widget could be set to zero. (See discussion in
>> #849)
>>
>> * Fix a bug in calculating whether a tool fits into the
>> AuiToolBar. (#863)
>>
>> * Override SetForegroundColour and SetBackgroundColour in
>> MaskedEditMixin (#808)
>>
>> * Add an explicit wx.GraphicsContext.Create overload for
>> wx.AutoBufferedPaintDC. (#783)
>>
>> * Return original AGW window style in
>> AuiToolBar.GetAGWWindowStyleFlag. (#870)
>>
>> * Fix a bug in group management on wx.lib.masked.numctrl; the previous
>> code used truediv ('/') to calculate _groupSpace, but in python 3.x
>> this leads to a float result, instead of an integer as was
>> expected. Using floordiv ('//') instead to solve the problem. (#865)
>>
>> * Hide the window when the tool does not fit into AuiToolBar. (#872)
>>
>> * Fixed the virtual dispatch code for the PGEditor.GetValueFromControl
>> method to properly pass the parameters to the Python implementation,
>> and also fixed how the return value is handled. (#742)
>>
>> * Fixed all implementations of the PGProperty.StringToValue and
>> IntToValue methods to treat the value parameter as a return
>> value. (#742)
>>
>> * Add missing wx.adv.EVT_CALENDAR_WEEK_CLICKED (#875)
>>
>> * Fixed the stock labels to conform to Windows design
>> guidelines. (#787)
>>
>> * Always reset floating size and style when floating a toolbar in
>> agw.aui. (#880)
>>
>>
>>
>>
>>
>> What is wxPython?
>> -----------------
>>
>> wxPython is a cross-platform GUI toolkit for the Python programming
>> language. It allows Python programmers to create programs with a
>> robust, highly functional graphical user interface, simply and
>> easily. It is implemented as a set of Python extension modules that
>> wrap the GUI components of the popular wxWidgets cross platform
>> library, which is written in C++. Supported platforms are Microsoft
>> Windows, Mac OS X and macOS, and Linux or other unix-like systems with
>> GTK2 or GTK3 libraries. In most cases the native widgets are used on
>> each platform to provide a 100% native look and feel for the
>> application.
>>
>>
>> What is wxPython Phoenix?
>> -------------------------
>>
>> wxPython's Project Phoenix is a new from-the-ground-up implementation
>> of wxPython, created with the intent of making wxPython “better,
>> stronger, faster than he was before.” In other words, this new
>> implementation is focused on improving speed, maintainability and
>> extensibility of wxPython, as well as removing most of the cruft that
>> had accumulated over the long life of Classic wxPython.
>>
>> The project has been in development off and on, mostly behind the
>> scenes, for many years. For the past few years automated snapshot
>> builds have been available for those adventurous enough to try it, and
>> many people eventually started using the snapshots in their projects,
>> even for production releases. While there are still some things on
>> the periphery that need to be completed, the core of the new wxPython
>> extension modules which wrap the wxWidgets code has been stable for a
>> long time now.
>>
>> Due to some things being cleaned up, reorganized, simplified and
>> dehackified wxPython Phoenix is not completely backwards compatible
>> with wxPython Classic. This is intended. In general, however, the API
>> differences tend to be minor and some applications can use Phoenix
>> with slight, or even with no modifications. In some other cases the
>> correct way to do things was also available in Classic and it's only
>> the wrong way that has been removed from Phoenix. For more
>> information there is a Migration Guide document available at:
>> wxPython Project Phoenix Migration Guide — wxPython Phoenix 4.2.2 documentation
>>
>> The new wxPython API reference documentation, including all
>> Python-specific additions and customizations, and docs for the wx.lib
>> package, is located at: https://docs.wxpython.org/
>>
>>
>>
>> --
>> Robin Dunn
>> Software Craftsman
>> http://wxPython.org
>>
>> --
>> You received this message because you are subscribed to the Google Groups "wxPython-dev" group.
>> To unsubscribe from this group and stop receiving emails from it, send an email to wxPython-dev+unsubscribe@googlegroups.com.
>> For more options, visit https://groups.google.com/d/optout.
>
>
>
> --
> Всего хорошего.
> Евгений Ильин
> http://jenyay.net
>
> --
> You received this message because you are subscribed to the Google Groups "wxPython-dev" group.
> To unsubscribe from this group and stop receiving emails from it, send an email to wxPython-dev+unsubscribe@googlegroups.com.
> For more options, visit https://groups.google.com/d/optout.
>

--
You received this message because you are subscribed to the Google Groups "wxPython-dev" group.
To unsubscribe from this group and stop receiving emails from it, send an email to wxPython-dev+unsubscribe@googlegroups.com.
For more options, visit https://groups.google.com/d/optout.

--
Всего хорошего.
Евгений Ильин

Thanks, these binaries were installed without problems. But in any
case, it's interesting to find out the reason for compilation problems
from the source.

···

вт, 19 июн. 2018 г. в 19:20, Robin Dunn <robin@alldunn.com>:

Also, there are now Ubuntu 18 binaries available at Index of /wxPython4/extras/linux so you don't need to build it yourself with pip if you are running on the amd64 architecture. See wxPython Downloads | wxPython for an example pip command for installing wheels from there.

--
Robin

On Tuesday, June 19, 2018 at 6:34:08 AM UTC-7, Scott Talbert wrote:

It looks like you are missing the libGL development files. Try running
(as root):

apt-get build-dep wxwidgets3.0

That should get you everything you need.

On Tue, 19 Jun 2018, Евгений Ильин wrote:

> Hurrah!!! Thank you mery much for the work.
>
> But I was unable to install wxPython 4.0.2 from PyPi in Ubuntu 18.04.
> I get error:
>
> (cd /tmp/pip-build-rblgzybr/wxpython/build/wxbld/gtk3/lib/; rm -f
> libwx_gtk3u_ribbon-3.0.so libwx_gtk3u_ribbon-3.0.so.0; ln -s
> libwx_gtk3u_ribbon-3.0.so.0.4.0 libwx_gtk3u_ribbon-3.0.so.0; ln -s
> libwx_gtk3u_ribbon-3.0.so.0 libwx_gtk3u_ribbon-3.0.so)
> g++ -shared -fPIC -o
> /tmp/pip-build-rblgzybr/wxpython/build/wxbld/gtk3/lib/libwx_gtk3u_gl-3.0.so.0.4.0
> gldll_glcmn.o gldll_glx11.o gldll_gtk_glcanvas.o
> -L/tmp/pip-build-rblgzybr/wxpython/build/wxbld/gtk3/lib
> -Wl,-soname,libwx_gtk3u_gl-3.0.so.0 -pthread -lwxtiff-3.0
> -lgtk-3 -lgdk-3 -lpangocairo-1.0 -lpango-1.0 -latk-1.0 -lcairo-gobject
> -lcairo -lgdk_pixbuf-2.0 -lgio-2.0 -lgobject-2.0 -lgthread-2.0
> -pthread -lglib-2.0 -lX11 -lXxf86vm -lSM -lgtk-3 -lgdk-3
> -lpangocairo-1.0 -lpango-1.0 -latk-1.0 -lcairo-gobject -lcairo
> -lgdk_pixbuf-2.0 -lgio-2.0 -lgobject-2.0 -lglib-2.0 -lpng -lz -ljpeg
> -lwxregexu-3.0 -pthread
> -Wl,--version-script,/tmp/pip-build-rblgzybr/wxpython/build/wxbld/gtk3/version-script
> -lz -ldl -lm -lwx_gtk3u_core-3.0 -lwx_baseu-3.0 -lGL -lGLU -lz -ldl
> -lm
> (cd /tmp/pip-build-rblgzybr/wxpython/build/wxbld/gtk3/lib/; rm -f
> libwx_gtk3u_aui-3.0.so libwx_gtk3u_aui-3.0.so.0; ln -s
> libwx_gtk3u_aui-3.0.so.0.4.0 libwx_gtk3u_aui-3.0.so.0; ln -s
> libwx_gtk3u_aui-3.0.so.0 libwx_gtk3u_aui-3.0.so)
> (if test -f utils/wxrc/Makefile ; then cd utils/wxrc && make all ; fi)
> make[1]: вход в каталог
> «/tmp/pip-build-rblgzybr/wxpython/build/wxbld/gtk3/utils/wxrc»
> make[1]: Цель «all» не требует выполнения команд.
> make[1]: выход из каталога
> «/tmp/pip-build-rblgzybr/wxpython/build/wxbld/gtk3/utils/wxrc»
> (cd /tmp/pip-build-rblgzybr/wxpython/build/wxbld/gtk3/lib/; rm -f
> libwx_gtk3u_propgrid-3.0.so libwx_gtk3u_propgrid-3.0.so.0; ln -s
> libwx_gtk3u_propgrid-3.0.so.0.4.0 libwx_gtk3u_propgrid-3.0.so.0; ln -s
> libwx_gtk3u_propgrid-3.0.so.0 libwx_gtk3u_propgrid-3.0.so)
> (cd /tmp/pip-build-rblgzybr/wxpython/build/wxbld/gtk3/lib/; rm -f
> libwx_gtk3u_richtext-3.0.so libwx_gtk3u_richtext-3.0.so.0; ln -s
> libwx_gtk3u_richtext-3.0.so.0.4.0 libwx_gtk3u_richtext-3.0.so.0; ln -s
> libwx_gtk3u_richtext-3.0.so.0 libwx_gtk3u_richtext-3.0.so)
> /usr/bin/x86_64-linux-gnu-ld: cannot find -lGL
> collect2: error: ld returned 1 exit status
> Makefile:16107: recipe for target
> '/tmp/pip-build-rblgzybr/wxpython/build/wxbld/gtk3/lib/libwx_gtk3u_gl-3.0.so.0.4.0'
> failed
> make: *** [/tmp/pip-build-rblgzybr/wxpython/build/wxbld/gtk3/lib/libwx_gtk3u_gl-3.0.so.0.4.0]
> Error 1
> Error building
> ERROR: failed building wxWidgets
> Traceback (most recent call last):
> File "build.py", line 1321, in cmd_build_wx
> wxbuild.main(wxDir(), build_options)
> File "/tmp/pip-build-rblgzybr/wxpython/buildtools/build_wxwidgets.py",
> line 498, in main
> exitIfError(wxBuilder.build(dir=buildDir, options=args),
> "Error building")
> File "/tmp/pip-build-rblgzybr/wxpython/buildtools/build_wxwidgets.py",
> line 85, in exitIfError
> raise builder.BuildError(msg)
> buildtools.builder.BuildError: Error building
> Finished command: build_wx (0m2.315s)
> Finished command: build (0m2.316s)
> Command '"/home/jenyay/.local/share/virtualenvs/outwiker--dI8U2my/bin/python3"
> -u build.py build' failed with exit code 1.
>
> A similar error is described here -
> Bug #1770742 “Cannot find -lGL” : Bugs : libglvnd package : Ubuntu
> пн, 18 июн. 2018 г. в 7:49, Robin Dunn <robin@alldunn.com>:
>>
>> Announcing wxPython 4.0.2
>> =========================
>>
>> PyPI: wxPython · PyPI
>> Extras: Index of /wxPython4/extras
>> Pip: ``pip install wxPython==4.0.2``
>>
>> Changes in this release include the following:
>>
>> * Fixed wx.html2.EVT_WEBVIEW_NAVIGATING event not being sent on some
>> versions of Linux. (#741)
>>
>> * wx.Sizers can now be used as an iterator to iterate over the items
>> within the sizer. (#738)
>>
>> * Fix Python3 division in ThumbnailCtrl. (#746)
>>
>> * Fix leaking image list in CheckListCtrlMixin (#752)
>>
>> * All items marked as deprecated in the wxWidgets interface
>> (documentation) files will now throw a DeprecationWarning when used
>> from wxPython. Many of these items are disappearing in 4.1 so it's
>> important to ensure they are deprecated at runtime too instead of
>> just in the docs. (#749)
>>
>> * Ensure that the attribute list given to the GLCanvas constructor is
>> zero-terminated like it was in Classic. (#770)
>>
>> * Updated to the wxWidgets 3.0.4 release version.
>>
>> * Added the wxWidgets version number to the tail end of the string
>> returned by wx.version().
>>
>> * Bind EVT_WINDOW_DESTROY event only to the tree windows in
>> CustomTreeCtrl, since otherwise it would be caught when child
>> windows are destroyed too, which causes problems in this
>> case. (#778)
>>
>> * Fixed a problem where wx.TreeCtrl.OnCompareItems was not being
>> called in derived classes on Windows. This was due to an
>> optimization that wasn't compatible with how the classes are
>> wrapped. (#774)
>>
>> * Added wrappers for wx.ClassInfo and exposed
>> wx.Object.GetClassInfo. This class is part of wxWidgets' internal
>> type information system and although it is not very useful for
>> Python applications it is useful for debugging some internal
>> wxPython issues.
>>
>> * Removed the wx.lib.pubsub package, and replaced it with code that
>> imports the standalone PyPubSub in order remain compatible with
>> older code that still uses wx.lib.pubsub. (#782, #792)
>>
>> * Fixed bug in wx.lib.intctrl (#790)
>>
>> * Fixed subclassing of wx.TextCompleter and wx.TextCompleterSimple
>> (#827)
>>
>> * Fixes for Python3 compatibility in PyCrust. (#823)
>>
>> * Fix wxGet to be able to use pip v10. (#817)
>>
>> * Change winid parameter in wx.ScrolledWindow to id, for
>> consistency. (#816)
>>
>> * Ensure that the page exists in book controls GetPage and RemovePage
>> methods. At least one of the wx ports do not do this. (#830)
>>
>> * Added missing wx.NumberEntryDialog
>>
>> * Change wx.TextCompleterSimple.GetCompletions to send the list of
>> strings as a return value, rather than a parameter that gets
>> filled. (#836)
>>
>> * Enabled the wx.GraphicsContext.Create(metaFileDC) wrapper (#811)
>>
>> * Metafile support is also available on OSX, so wx.msw.Metafile and
>> wx.msw.MetafileDC have been moved to the core wx module. So they can
>> now be accessed as wx.Metafile and wx.MetafileDC.
>>
>> * Updated the waf tool used by the build to version 2.0.7. This fixes
>> problems with building for Python 3.7.
>>
>> * Fixed alignment in buttons on MSW which have had foreground or
>> background colors set. (#815)
>>
>> * Fix for unexpected assertion inside wx.aui.AuiMDIChildFrame.Close.
>>
>> * Fix a bug in setting AuiDockingGuide size. (#727)
>>
>> * Remove unnecessary AUI notebook updating, and use wx.BufferedDC in
>> Repaint() to mitigate flicker. (wx.lib.agw.aui). (#851, #686)
>>
>> * Fixed crashing bug when using client data with items in
>> wx.dataview.DataViewTreeCtrl. (#856)
>>
>> * Detach wx.Control in AuiToolbar from current sizer before attach to
>> a new one. (#843)
>>
>> * Fixed a problem in wx.lib.mixins.listctrl.TextEditMixin where the
>> height of the editor widget could be set to zero. (See discussion in
>> #849)
>>
>> * Fix a bug in calculating whether a tool fits into the
>> AuiToolBar. (#863)
>>
>> * Override SetForegroundColour and SetBackgroundColour in
>> MaskedEditMixin (#808)
>>
>> * Add an explicit wx.GraphicsContext.Create overload for
>> wx.AutoBufferedPaintDC. (#783)
>>
>> * Return original AGW window style in
>> AuiToolBar.GetAGWWindowStyleFlag. (#870)
>>
>> * Fix a bug in group management on wx.lib.masked.numctrl; the previous
>> code used truediv ('/') to calculate _groupSpace, but in python 3.x
>> this leads to a float result, instead of an integer as was
>> expected. Using floordiv ('//') instead to solve the problem. (#865)
>>
>> * Hide the window when the tool does not fit into AuiToolBar. (#872)
>>
>> * Fixed the virtual dispatch code for the PGEditor.GetValueFromControl
>> method to properly pass the parameters to the Python implementation,
>> and also fixed how the return value is handled. (#742)
>>
>> * Fixed all implementations of the PGProperty.StringToValue and
>> IntToValue methods to treat the value parameter as a return
>> value. (#742)
>>
>> * Add missing wx.adv.EVT_CALENDAR_WEEK_CLICKED (#875)
>>
>> * Fixed the stock labels to conform to Windows design
>> guidelines. (#787)
>>
>> * Always reset floating size and style when floating a toolbar in
>> agw.aui. (#880)
>>
>>
>>
>>
>>
>> What is wxPython?
>> -----------------
>>
>> wxPython is a cross-platform GUI toolkit for the Python programming
>> language. It allows Python programmers to create programs with a
>> robust, highly functional graphical user interface, simply and
>> easily. It is implemented as a set of Python extension modules that
>> wrap the GUI components of the popular wxWidgets cross platform
>> library, which is written in C++. Supported platforms are Microsoft
>> Windows, Mac OS X and macOS, and Linux or other unix-like systems with
>> GTK2 or GTK3 libraries. In most cases the native widgets are used on
>> each platform to provide a 100% native look and feel for the
>> application.
>>
>>
>> What is wxPython Phoenix?
>> -------------------------
>>
>> wxPython's Project Phoenix is a new from-the-ground-up implementation
>> of wxPython, created with the intent of making wxPython “better,
>> stronger, faster than he was before.” In other words, this new
>> implementation is focused on improving speed, maintainability and
>> extensibility of wxPython, as well as removing most of the cruft that
>> had accumulated over the long life of Classic wxPython.
>>
>> The project has been in development off and on, mostly behind the
>> scenes, for many years. For the past few years automated snapshot
>> builds have been available for those adventurous enough to try it, and
>> many people eventually started using the snapshots in their projects,
>> even for production releases. While there are still some things on
>> the periphery that need to be completed, the core of the new wxPython
>> extension modules which wrap the wxWidgets code has been stable for a
>> long time now.
>>
>> Due to some things being cleaned up, reorganized, simplified and
>> dehackified wxPython Phoenix is not completely backwards compatible
>> with wxPython Classic. This is intended. In general, however, the API
>> differences tend to be minor and some applications can use Phoenix
>> with slight, or even with no modifications. In some other cases the
>> correct way to do things was also available in Classic and it's only
>> the wrong way that has been removed from Phoenix. For more
>> information there is a Migration Guide document available at:
>> wxPython Project Phoenix Migration Guide — wxPython Phoenix 4.2.2 documentation
>>
>> The new wxPython API reference documentation, including all
>> Python-specific additions and customizations, and docs for the wx.lib
>> package, is located at: https://docs.wxpython.org/
>>
>>
>>
>> --
>> Robin Dunn
>> Software Craftsman
>> http://wxPython.org
>>
>> --
>> You received this message because you are subscribed to the Google Groups "wxPython-dev" group.
>> To unsubscribe from this group and stop receiving emails from it, send an email to wxPython-dev+unsubscribe@googlegroups.com.
>> For more options, visit https://groups.google.com/d/optout.
>
>
>
> --
> Всего хорошего.
> Евгений Ильин
> http://jenyay.net
>
> --
> You received this message because you are subscribed to the Google Groups "wxPython-dev" group.
> To unsubscribe from this group and stop receiving emails from it, send an email to wxPython-dev+unsubscribe@googlegroups.com.
> For more options, visit https://groups.google.com/d/optout.
>

--
You received this message because you are subscribed to the Google Groups "wxPython-dev" group.
To unsubscribe from this group and stop receiving emails from it, send an email to wxPython-dev+unsubscribe@googlegroups.com.
For more options, visit https://groups.google.com/d/optout.

--
Всего хорошего.
Евгений Ильин

You can see the packages I install for the Ubuntu 18 build VM here in this script: Phoenix/vagrant/ubuntu-18.04/bootstrap.sh at wxPy-4.0.x · wxWidgets/Phoenix · GitHub

···

Robin

On Tuesday, June 19, 2018 at 10:16:51 AM UTC-7, jenyay wrote:

Unfortunately, it did not help. All dependencies are installed. There

is a suspicion that this is some kind of bug in Ubuntu 18.04. In

google sometimes referred to this error in this version of Ubuntu.

:

It looks like you are missing the libGL development files. Try running

(as root):

apt-get build-dep wxwidgets3.0

That should get you everything you need.

On Tue, 19 Jun 2018, Евгений Ильин wrote:

Hurrah!!! Thank you mery much for the work.

But I was unable to install wxPython 4.0.2 from PyPi in Ubuntu 18.04.

I get error:

(cd /tmp/pip-build-rblgzybr/wxpython/build/wxbld/gtk3/lib/; rm -f

libwx_gtk3u_ribbon-3.0.so libwx_gtk3u_ribbon-3.0.so.0; ln -s

libwx_gtk3u_ribbon-3.0.so.0.4.0 libwx_gtk3u_ribbon-3.0.so.0; ln -s

libwx_gtk3u_ribbon-3.0.so.0 libwx_gtk3u_ribbon-3.0.so)

g++ -shared -fPIC -o

/tmp/pip-build-rblgzybr/wxpython/build/wxbld/gtk3/lib/libwx_gtk3u_gl-3.0.so.0.4.0

gldll_glcmn.o gldll_glx11.o gldll_gtk_glcanvas.o

-L/tmp/pip-build-rblgzybr/wxpython/build/wxbld/gtk3/lib

-Wl,-soname,libwx_gtk3u_gl-3.0.so.0 -pthread -lwxtiff-3.0

-lgtk-3 -lgdk-3 -lpangocairo-1.0 -lpango-1.0 -latk-1.0 -lcairo-gobject

-lcairo -lgdk_pixbuf-2.0 -lgio-2.0 -lgobject-2.0 -lgthread-2.0

-pthread -lglib-2.0 -lX11 -lXxf86vm -lSM -lgtk-3 -lgdk-3

-lpangocairo-1.0 -lpango-1.0 -latk-1.0 -lcairo-gobject -lcairo

-lgdk_pixbuf-2.0 -lgio-2.0 -lgobject-2.0 -lglib-2.0 -lpng -lz -ljpeg

-lwxregexu-3.0 -pthread

-Wl,–version-script,/tmp/pip-build-rblgzybr/wxpython/build/wxbld/gtk3/version-script

-lz -ldl -lm -lwx_gtk3u_core-3.0 -lwx_baseu-3.0 -lGL -lGLU -lz -ldl

-lm

(cd /tmp/pip-build-rblgzybr/wxpython/build/wxbld/gtk3/lib/; rm -f

libwx_gtk3u_aui-3.0.so libwx_gtk3u_aui-3.0.so.0; ln -s

libwx_gtk3u_aui-3.0.so.0.4.0 libwx_gtk3u_aui-3.0.so.0; ln -s

libwx_gtk3u_aui-3.0.so.0 libwx_gtk3u_aui-3.0.so)

(if test -f utils/wxrc/Makefile ; then cd utils/wxrc && make all ; fi)

make[1]: вход в каталог

«/tmp/pip-build-rblgzybr/wxpython/build/wxbld/gtk3/utils/wxrc»

make[1]: Цель «all» не требует выполнения команд.

make[1]: выход из каталога

«/tmp/pip-build-rblgzybr/wxpython/build/wxbld/gtk3/utils/wxrc»

(cd /tmp/pip-build-rblgzybr/wxpython/build/wxbld/gtk3/lib/; rm -f

libwx_gtk3u_propgrid-3.0.so libwx_gtk3u_propgrid-3.0.so.0; ln -s

libwx_gtk3u_propgrid-3.0.so.0.4.0 libwx_gtk3u_propgrid-3.0.so.0; ln -s

libwx_gtk3u_propgrid-3.0.so.0 libwx_gtk3u_propgrid-3.0.so)

(cd /tmp/pip-build-rblgzybr/wxpython/build/wxbld/gtk3/lib/; rm -f

libwx_gtk3u_richtext-3.0.so libwx_gtk3u_richtext-3.0.so.0; ln -s

libwx_gtk3u_richtext-3.0.so.0.4.0 libwx_gtk3u_richtext-3.0.so.0; ln -s

libwx_gtk3u_richtext-3.0.so.0 libwx_gtk3u_richtext-3.0.so)

/usr/bin/x86_64-linux-gnu-ld: cannot find -lGL

collect2: error: ld returned 1 exit status

Makefile:16107: recipe for target

‘/tmp/pip-build-rblgzybr/wxpython/build/wxbld/gtk3/lib/libwx_gtk3u_gl-3.0.so.0.4.0’

failed

make: *** [/tmp/pip-build-rblgzybr/wxpython/build/wxbld/gtk3/lib/libwx_gtk3u_gl-3.0.so.0.4.0]

Error 1

Error building

ERROR: failed building wxWidgets

Traceback (most recent call last):

 File "build.py", line 1321, in cmd_build_wx
   wxbuild.main(wxDir(), build_options)
 File "/tmp/pip-build-rblgzybr/wxpython/buildtools/build_wxwidgets.py",

line 498, in main

   exitIfError(wxBuilder.build(dir=buildDir, options=args),

“Error building”)

 File "/tmp/pip-build-rblgzybr/wxpython/buildtools/build_wxwidgets.py",

line 85, in exitIfError

   raise builder.BuildError(msg)

buildtools.builder.BuildError: Error building

Finished command: build_wx (0m2.315s)

Finished command: build (0m2.316s)

Command '“/home/jenyay/.local/share/virtualenvs/outwiker–dI8U2my/bin/python3”

-u build.py build’ failed with exit code 1.

A similar error is described here -

https://bugs.launchpad.net/ubuntu/+source/libglvnd/+bug/1770742

пн, 18 июн. 2018 г. в 7:49, Robin Dunn robin@alldunn.com:

Announcing wxPython 4.0.2

=========================

PyPI: https://pypi.org/project/wxPython/4.0.2

Extras: https://extras.wxPython.org/wxPython4/extras/

Pip: pip install wxPython==4.0.2

Changes in this release include the following:

  • Fixed wx.html2.EVT_WEBVIEW_NAVIGATING event not being sent on some

versions of Linux. (#741)

  • wx.Sizers can now be used as an iterator to iterate over the items

within the sizer. (#738)

  • Fix Python3 division in ThumbnailCtrl. (#746)
  • Fix leaking image list in CheckListCtrlMixin (#752)
  • All items marked as deprecated in the wxWidgets interface

(documentation) files will now throw a DeprecationWarning when used

from wxPython. Many of these items are disappearing in 4.1 so it’s

important to ensure they are deprecated at runtime too instead of

just in the docs. (#749)

  • Ensure that the attribute list given to the GLCanvas constructor is

zero-terminated like it was in Classic. (#770)

  • Updated to the wxWidgets 3.0.4 release version.
  • Added the wxWidgets version number to the tail end of the string

returned by wx.version().

  • Bind EVT_WINDOW_DESTROY event only to the tree windows in

CustomTreeCtrl, since otherwise it would be caught when child

windows are destroyed too, which causes problems in this

case. (#778)

  • Fixed a problem where wx.TreeCtrl.OnCompareItems was not being

called in derived classes on Windows. This was due to an

optimization that wasn’t compatible with how the classes are

wrapped. (#774)

  • Added wrappers for wx.ClassInfo and exposed

wx.Object.GetClassInfo. This class is part of wxWidgets’ internal

type information system and although it is not very useful for

Python applications it is useful for debugging some internal

wxPython issues.

  • Removed the wx.lib.pubsub package, and replaced it with code that

imports the standalone PyPubSub in order remain compatible with

older code that still uses wx.lib.pubsub. (#782, #792)

  • Fixed bug in wx.lib.intctrl (#790)
  • Fixed subclassing of wx.TextCompleter and wx.TextCompleterSimple

(#827)

  • Fixes for Python3 compatibility in PyCrust. (#823)
  • Fix wxGet to be able to use pip v10. (#817)
  • Change winid parameter in wx.ScrolledWindow to id, for

consistency. (#816)

  • Ensure that the page exists in book controls GetPage and RemovePage

methods. At least one of the wx ports do not do this. (#830)

  • Added missing wx.NumberEntryDialog
  • Change wx.TextCompleterSimple.GetCompletions to send the list of

strings as a return value, rather than a parameter that gets

filled. (#836)

  • Enabled the wx.GraphicsContext.Create(metaFileDC) wrapper (#811)
  • Metafile support is also available on OSX, so wx.msw.Metafile and

wx.msw.MetafileDC have been moved to the core wx module. So they can

now be accessed as wx.Metafile and wx.MetafileDC.

  • Updated the waf tool used by the build to version 2.0.7. This fixes

problems with building for Python 3.7.

  • Fixed alignment in buttons on MSW which have had foreground or

background colors set. (#815)

  • Fix for unexpected assertion inside wx.aui.AuiMDIChildFrame.Close.
  • Fix a bug in setting AuiDockingGuide size. (#727)
  • Remove unnecessary AUI notebook updating, and use wx.BufferedDC in

Repaint() to mitigate flicker. (wx.lib.agw.aui). (#851, #686)

  • Fixed crashing bug when using client data with items in

wx.dataview.DataViewTreeCtrl. (#856)

  • Detach wx.Control in AuiToolbar from current sizer before attach to

a new one. (#843)

  • Fixed a problem in wx.lib.mixins.listctrl.TextEditMixin where the

height of the editor widget could be set to zero. (See discussion in

#849)

  • Fix a bug in calculating whether a tool fits into the

AuiToolBar. (#863)

  • Override SetForegroundColour and SetBackgroundColour in

MaskedEditMixin (#808)

  • Add an explicit wx.GraphicsContext.Create overload for

wx.AutoBufferedPaintDC. (#783)

  • Return original AGW window style in

AuiToolBar.GetAGWWindowStyleFlag. (#870)

  • Fix a bug in group management on wx.lib.masked.numctrl; the previous

code used truediv (‘/’) to calculate _groupSpace, but in python 3.x

this leads to a float result, instead of an integer as was

expected. Using floordiv (‘//’) instead to solve the problem. (#865)

  • Hide the window when the tool does not fit into AuiToolBar. (#872)
  • Fixed the virtual dispatch code for the PGEditor.GetValueFromControl

method to properly pass the parameters to the Python implementation,

and also fixed how the return value is handled. (#742)

  • Fixed all implementations of the PGProperty.StringToValue and

IntToValue methods to treat the value parameter as a return

value. (#742)

  • Add missing wx.adv.EVT_CALENDAR_WEEK_CLICKED (#875)
  • Fixed the stock labels to conform to Windows design

guidelines. (#787)

  • Always reset floating size and style when floating a toolbar in

agw.aui. (#880)

What is wxPython?


wxPython is a cross-platform GUI toolkit for the Python programming

language. It allows Python programmers to create programs with a

robust, highly functional graphical user interface, simply and

easily. It is implemented as a set of Python extension modules that

wrap the GUI components of the popular wxWidgets cross platform

library, which is written in C++. Supported platforms are Microsoft

Windows, Mac OS X and macOS, and Linux or other unix-like systems with

GTK2 or GTK3 libraries. In most cases the native widgets are used on

each platform to provide a 100% native look and feel for the

application.

What is wxPython Phoenix?


wxPython’s Project Phoenix is a new from-the-ground-up implementation

of wxPython, created with the intent of making wxPython “better,

stronger, faster than he was before.” In other words, this new

implementation is focused on improving speed, maintainability and

extensibility of wxPython, as well as removing most of the cruft that

had accumulated over the long life of Classic wxPython.

The project has been in development off and on, mostly behind the

scenes, for many years. For the past few years automated snapshot

builds have been available for those adventurous enough to try it, and

many people eventually started using the snapshots in their projects,

even for production releases. While there are still some things on

the periphery that need to be completed, the core of the new wxPython

extension modules which wrap the wxWidgets code has been stable for a

long time now.

Due to some things being cleaned up, reorganized, simplified and

dehackified wxPython Phoenix is not completely backwards compatible

with wxPython Classic. This is intended. In general, however, the API

differences tend to be minor and some applications can use Phoenix

with slight, or even with no modifications. In some other cases the

correct way to do things was also available in Classic and it’s only

the wrong way that has been removed from Phoenix. For more

information there is a Migration Guide document available at:

https://docs.wxpython.org/MigrationGuide.html

The new wxPython API reference documentation, including all

Python-specific additions and customizations, and docs for the wx.lib

package, is located at: https://docs.wxpython.org/

Robin Dunn

Software Craftsman

http://wxPython.org

You received this message because you are subscribed to the Google Groups “wxPython-dev” group.

To unsubscribe from this group and stop receiving emails from it, send an email to wxPython-dev+unsubscribe@googlegroups.com.

For more options, visit https://groups.google.com/d/optout.

Всего хорошего.

Евгений Ильин

http://jenyay.net

You received this message because you are subscribed to the Google Groups “wxPython-dev” group.

To unsubscribe from this group and stop receiving emails from it, send an email to wxPython-dev+unsubscribe@googlegroups.com.

For more options, visit https://groups.google.com/d/optout.

You received this message because you are subscribed to the Google Groups “wxPython-dev” group.

To unsubscribe from this group and stop receiving emails from it, send an email to wxPython-dev+unsubscribe@googlegroups.com.

For more options, visit https://groups.google.com/d/optout.


Всего хорошего.

Евгений Ильин

http://jenyay.net

Out of curiosity, do you have any third-party video drivers installed (e.g., proprietary nVidia driver)?

···

On Tue, 19 Jun 2018, Евгений Ильин wrote:

Thanks, these binaries were installed without problems. But in any
case, it's interesting to find out the reason for compilation problems
from the source.
вт, 19 июн. 2018 г. в 19:20, Robin Dunn <robin@alldunn.com>:

Also, there are now Ubuntu 18 binaries available at Index of /wxPython4/extras/linux so you don't need to build it yourself with pip if you are running on the amd64 architecture. See wxPython Downloads | wxPython for an example pip command for installing wheels from there.

--
Robin

On Tuesday, June 19, 2018 at 6:34:08 AM UTC-7, Scott Talbert wrote:

It looks like you are missing the libGL development files. Try running
(as root):

apt-get build-dep wxwidgets3.0

That should get you everything you need.

On Tue, 19 Jun 2018, Евгений Ильин wrote:

Hurrah!!! Thank you mery much for the work.

But I was unable to install wxPython 4.0.2 from PyPi in Ubuntu 18.04.
I get error:

(cd /tmp/pip-build-rblgzybr/wxpython/build/wxbld/gtk3/lib/; rm -f
libwx_gtk3u_ribbon-3.0.so libwx_gtk3u_ribbon-3.0.so.0; ln -s
libwx_gtk3u_ribbon-3.0.so.0.4.0 libwx_gtk3u_ribbon-3.0.so.0; ln -s
libwx_gtk3u_ribbon-3.0.so.0 libwx_gtk3u_ribbon-3.0.so)
   g++ -shared -fPIC -o
/tmp/pip-build-rblgzybr/wxpython/build/wxbld/gtk3/lib/libwx_gtk3u_gl-3.0.so.0.4.0
gldll_glcmn.o gldll_glx11.o gldll_gtk_glcanvas.o
-L/tmp/pip-build-rblgzybr/wxpython/build/wxbld/gtk3/lib
-Wl,-soname,libwx_gtk3u_gl-3.0.so.0 -pthread -lwxtiff-3.0
-lgtk-3 -lgdk-3 -lpangocairo-1.0 -lpango-1.0 -latk-1.0 -lcairo-gobject
-lcairo -lgdk_pixbuf-2.0 -lgio-2.0 -lgobject-2.0 -lgthread-2.0
-pthread -lglib-2.0 -lX11 -lXxf86vm -lSM -lgtk-3 -lgdk-3
-lpangocairo-1.0 -lpango-1.0 -latk-1.0 -lcairo-gobject -lcairo
-lgdk_pixbuf-2.0 -lgio-2.0 -lgobject-2.0 -lglib-2.0 -lpng -lz -ljpeg
-lwxregexu-3.0 -pthread
-Wl,--version-script,/tmp/pip-build-rblgzybr/wxpython/build/wxbld/gtk3/version-script
-lz -ldl -lm -lwx_gtk3u_core-3.0 -lwx_baseu-3.0 -lGL -lGLU -lz -ldl
-lm
   (cd /tmp/pip-build-rblgzybr/wxpython/build/wxbld/gtk3/lib/; rm -f
libwx_gtk3u_aui-3.0.so libwx_gtk3u_aui-3.0.so.0; ln -s
libwx_gtk3u_aui-3.0.so.0.4.0 libwx_gtk3u_aui-3.0.so.0; ln -s
libwx_gtk3u_aui-3.0.so.0 libwx_gtk3u_aui-3.0.so)
   (if test -f utils/wxrc/Makefile ; then cd utils/wxrc && make all ; fi)
   make[1]: вход в каталог
«/tmp/pip-build-rblgzybr/wxpython/build/wxbld/gtk3/utils/wxrc»
   make[1]: Цель «all» не требует выполнения команд.
   make[1]: выход из каталога
«/tmp/pip-build-rblgzybr/wxpython/build/wxbld/gtk3/utils/wxrc»
   (cd /tmp/pip-build-rblgzybr/wxpython/build/wxbld/gtk3/lib/; rm -f
libwx_gtk3u_propgrid-3.0.so libwx_gtk3u_propgrid-3.0.so.0; ln -s
libwx_gtk3u_propgrid-3.0.so.0.4.0 libwx_gtk3u_propgrid-3.0.so.0; ln -s
libwx_gtk3u_propgrid-3.0.so.0 libwx_gtk3u_propgrid-3.0.so)
   (cd /tmp/pip-build-rblgzybr/wxpython/build/wxbld/gtk3/lib/; rm -f
libwx_gtk3u_richtext-3.0.so libwx_gtk3u_richtext-3.0.so.0; ln -s
libwx_gtk3u_richtext-3.0.so.0.4.0 libwx_gtk3u_richtext-3.0.so.0; ln -s
libwx_gtk3u_richtext-3.0.so.0 libwx_gtk3u_richtext-3.0.so)
   /usr/bin/x86_64-linux-gnu-ld: cannot find -lGL
   collect2: error: ld returned 1 exit status
   Makefile:16107: recipe for target
'/tmp/pip-build-rblgzybr/wxpython/build/wxbld/gtk3/lib/libwx_gtk3u_gl-3.0.so.0.4.0'
failed
   make: *** [/tmp/pip-build-rblgzybr/wxpython/build/wxbld/gtk3/lib/libwx_gtk3u_gl-3.0.so.0.4.0]
Error 1
   Error building
   ERROR: failed building wxWidgets
   Traceback (most recent call last):
     File "build.py", line 1321, in cmd_build_wx
       wxbuild.main(wxDir(), build_options)
     File "/tmp/pip-build-rblgzybr/wxpython/buildtools/build_wxwidgets.py",
line 498, in main
       exitIfError(wxBuilder.build(dir=buildDir, options=args),
"Error building")
     File "/tmp/pip-build-rblgzybr/wxpython/buildtools/build_wxwidgets.py",
line 85, in exitIfError
       raise builder.BuildError(msg)
   buildtools.builder.BuildError: Error building
   Finished command: build_wx (0m2.315s)
   Finished command: build (0m2.316s)
   Command '"/home/jenyay/.local/share/virtualenvs/outwiker--dI8U2my/bin/python3"
-u build.py build' failed with exit code 1.

A similar error is described here -
Bug #1770742 “Cannot find -lGL” : Bugs : libglvnd package : Ubuntu
пн, 18 июн. 2018 г. в 7:49, Robin Dunn <robin@alldunn.com>:

Announcing wxPython 4.0.2

PyPI: wxPython · PyPI
Extras: Index of /wxPython4/extras
Pip: ``pip install wxPython==4.0.2``

Changes in this release include the following:

* Fixed wx.html2.EVT_WEBVIEW_NAVIGATING event not being sent on some
   versions of Linux. (#741)

* wx.Sizers can now be used as an iterator to iterate over the items
   within the sizer. (#738)

* Fix Python3 division in ThumbnailCtrl. (#746)

* Fix leaking image list in CheckListCtrlMixin (#752)

* All items marked as deprecated in the wxWidgets interface
   (documentation) files will now throw a DeprecationWarning when used
   from wxPython. Many of these items are disappearing in 4.1 so it's
   important to ensure they are deprecated at runtime too instead of
   just in the docs. (#749)

* Ensure that the attribute list given to the GLCanvas constructor is
   zero-terminated like it was in Classic. (#770)

* Updated to the wxWidgets 3.0.4 release version.

* Added the wxWidgets version number to the tail end of the string
   returned by wx.version().

* Bind EVT_WINDOW_DESTROY event only to the tree windows in
   CustomTreeCtrl, since otherwise it would be caught when child
   windows are destroyed too, which causes problems in this
   case. (#778)

* Fixed a problem where wx.TreeCtrl.OnCompareItems was not being
   called in derived classes on Windows. This was due to an
   optimization that wasn't compatible with how the classes are
   wrapped. (#774)

* Added wrappers for wx.ClassInfo and exposed
   wx.Object.GetClassInfo. This class is part of wxWidgets' internal
   type information system and although it is not very useful for
   Python applications it is useful for debugging some internal
   wxPython issues.

* Removed the wx.lib.pubsub package, and replaced it with code that
   imports the standalone PyPubSub in order remain compatible with
   older code that still uses wx.lib.pubsub. (#782, #792)

* Fixed bug in wx.lib.intctrl (#790)

* Fixed subclassing of wx.TextCompleter and wx.TextCompleterSimple
   (#827)

* Fixes for Python3 compatibility in PyCrust. (#823)

* Fix wxGet to be able to use pip v10. (#817)

* Change winid parameter in wx.ScrolledWindow to id, for
   consistency. (#816)

* Ensure that the page exists in book controls GetPage and RemovePage
   methods. At least one of the wx ports do not do this. (#830)

* Added missing wx.NumberEntryDialog

* Change wx.TextCompleterSimple.GetCompletions to send the list of
   strings as a return value, rather than a parameter that gets
   filled. (#836)

* Enabled the wx.GraphicsContext.Create(metaFileDC) wrapper (#811)

* Metafile support is also available on OSX, so wx.msw.Metafile and
   wx.msw.MetafileDC have been moved to the core wx module. So they can
   now be accessed as wx.Metafile and wx.MetafileDC.

* Updated the waf tool used by the build to version 2.0.7. This fixes
   problems with building for Python 3.7.

* Fixed alignment in buttons on MSW which have had foreground or
   background colors set. (#815)

* Fix for unexpected assertion inside wx.aui.AuiMDIChildFrame.Close.

* Fix a bug in setting AuiDockingGuide size. (#727)

* Remove unnecessary AUI notebook updating, and use wx.BufferedDC in
   Repaint() to mitigate flicker. (wx.lib.agw.aui). (#851, #686)

* Fixed crashing bug when using client data with items in
   wx.dataview.DataViewTreeCtrl. (#856)

* Detach wx.Control in AuiToolbar from current sizer before attach to
   a new one. (#843)

* Fixed a problem in wx.lib.mixins.listctrl.TextEditMixin where the
   height of the editor widget could be set to zero. (See discussion in
   #849)

* Fix a bug in calculating whether a tool fits into the
   AuiToolBar. (#863)

* Override SetForegroundColour and SetBackgroundColour in
   MaskedEditMixin (#808)

* Add an explicit wx.GraphicsContext.Create overload for
   wx.AutoBufferedPaintDC. (#783)

* Return original AGW window style in
   AuiToolBar.GetAGWWindowStyleFlag. (#870)

* Fix a bug in group management on wx.lib.masked.numctrl; the previous
   code used truediv ('/') to calculate _groupSpace, but in python 3.x
   this leads to a float result, instead of an integer as was
   expected. Using floordiv ('//') instead to solve the problem. (#865)

* Hide the window when the tool does not fit into AuiToolBar. (#872)

* Fixed the virtual dispatch code for the PGEditor.GetValueFromControl
   method to properly pass the parameters to the Python implementation,
   and also fixed how the return value is handled. (#742)

* Fixed all implementations of the PGProperty.StringToValue and
   IntToValue methods to treat the value parameter as a return
   value. (#742)

* Add missing wx.adv.EVT_CALENDAR_WEEK_CLICKED (#875)

* Fixed the stock labels to conform to Windows design
   guidelines. (#787)

* Always reset floating size and style when floating a toolbar in
   agw.aui. (#880)

What is wxPython?
-----------------

wxPython is a cross-platform GUI toolkit for the Python programming
language. It allows Python programmers to create programs with a
robust, highly functional graphical user interface, simply and
easily. It is implemented as a set of Python extension modules that
wrap the GUI components of the popular wxWidgets cross platform
library, which is written in C++. Supported platforms are Microsoft
Windows, Mac OS X and macOS, and Linux or other unix-like systems with
GTK2 or GTK3 libraries. In most cases the native widgets are used on
each platform to provide a 100% native look and feel for the
application.

What is wxPython Phoenix?
-------------------------

wxPython's Project Phoenix is a new from-the-ground-up implementation
of wxPython, created with the intent of making wxPython “better,
stronger, faster than he was before.” In other words, this new
implementation is focused on improving speed, maintainability and
extensibility of wxPython, as well as removing most of the cruft that
had accumulated over the long life of Classic wxPython.

The project has been in development off and on, mostly behind the
scenes, for many years. For the past few years automated snapshot
builds have been available for those adventurous enough to try it, and
many people eventually started using the snapshots in their projects,
even for production releases. While there are still some things on
the periphery that need to be completed, the core of the new wxPython
extension modules which wrap the wxWidgets code has been stable for a
long time now.

Due to some things being cleaned up, reorganized, simplified and
dehackified wxPython Phoenix is not completely backwards compatible
with wxPython Classic. This is intended. In general, however, the API
differences tend to be minor and some applications can use Phoenix
with slight, or even with no modifications. In some other cases the
correct way to do things was also available in Classic and it's only
the wrong way that has been removed from Phoenix. For more
information there is a Migration Guide document available at:
wxPython Project Phoenix Migration Guide — wxPython Phoenix 4.2.2 documentation

The new wxPython API reference documentation, including all
Python-specific additions and customizations, and docs for the wx.lib
package, is located at: https://docs.wxpython.org/

--
Robin Dunn
Software Craftsman
http://wxPython.org

--
You received this message because you are subscribed to the Google Groups "wxPython-dev" group.
To unsubscribe from this group and stop receiving emails from it, send an email to wxPython-dev+unsubscribe@googlegroups.com.
For more options, visit https://groups.google.com/d/optout.

--
Всего хорошего.
Евгений Ильин
http://jenyay.net

--
You received this message because you are subscribed to the Google Groups "wxPython-dev" group.
To unsubscribe from this group and stop receiving emails from it, send an email to wxPython-dev+unsubscribe@googlegroups.com.
For more options, visit https://groups.google.com/d/optout.

--
You received this message because you are subscribed to the Google Groups "wxPython-dev" group.
To unsubscribe from this group and stop receiving emails from it, send an email to wxPython-dev+unsubscribe@googlegroups.com.
For more options, visit https://groups.google.com/d/optout.

--
Всего хорошего.
Евгений Ильин
http://jenyay.net

--
You received this message because you are subscribed to the Google Groups "wxPython-dev" group.
To unsubscribe from this group and stop receiving emails from it, send an email to wxPython-dev+unsubscribe@googlegroups.com.
For more options, visit https://groups.google.com/d/optout.

Yes, nvidia-driver-390.

···

Out of curiosity, do you have any third-party video drivers installed
(e.g., proprietary nVidia driver)?

On Tue, 19 Jun 2018, Евгений Ильин wrote:

> Thanks, these binaries were installed without problems. But in any
> case, it's interesting to find out the reason for compilation problems
> from the source.
> вт, 19 июн. 2018 г. в 19:20, Robin Dunn <robin@alldunn.com>:
>>
>> Also, there are now Ubuntu 18 binaries available at Index of /wxPython4/extras/linux so you don't need to build it yourself with pip if you are running on the amd64 architecture. See wxPython Downloads | wxPython for an example pip command for installing wheels from there.
>>
>> --
>> Robin
>>
>>
>> On Tuesday, June 19, 2018 at 6:34:08 AM UTC-7, Scott Talbert wrote:
>>>
>>> It looks like you are missing the libGL development files. Try running
>>> (as root):
>>>
>>> apt-get build-dep wxwidgets3.0
>>>
>>> That should get you everything you need.
>>>
>>> On Tue, 19 Jun 2018, Евгений Ильин wrote:
>>>
>>>> Hurrah!!! Thank you mery much for the work.
>>>>
>>>> But I was unable to install wxPython 4.0.2 from PyPi in Ubuntu 18.04.
>>>> I get error:
>>>>
>>>> (cd /tmp/pip-build-rblgzybr/wxpython/build/wxbld/gtk3/lib/; rm -f
>>>> libwx_gtk3u_ribbon-3.0.so libwx_gtk3u_ribbon-3.0.so.0; ln -s
>>>> libwx_gtk3u_ribbon-3.0.so.0.4.0 libwx_gtk3u_ribbon-3.0.so.0; ln -s
>>>> libwx_gtk3u_ribbon-3.0.so.0 libwx_gtk3u_ribbon-3.0.so)
>>>> g++ -shared -fPIC -o
>>>> /tmp/pip-build-rblgzybr/wxpython/build/wxbld/gtk3/lib/libwx_gtk3u_gl-3.0.so.0.4.0
>>>> gldll_glcmn.o gldll_glx11.o gldll_gtk_glcanvas.o
>>>> -L/tmp/pip-build-rblgzybr/wxpython/build/wxbld/gtk3/lib
>>>> -Wl,-soname,libwx_gtk3u_gl-3.0.so.0 -pthread -lwxtiff-3.0
>>>> -lgtk-3 -lgdk-3 -lpangocairo-1.0 -lpango-1.0 -latk-1.0 -lcairo-gobject
>>>> -lcairo -lgdk_pixbuf-2.0 -lgio-2.0 -lgobject-2.0 -lgthread-2.0
>>>> -pthread -lglib-2.0 -lX11 -lXxf86vm -lSM -lgtk-3 -lgdk-3
>>>> -lpangocairo-1.0 -lpango-1.0 -latk-1.0 -lcairo-gobject -lcairo
>>>> -lgdk_pixbuf-2.0 -lgio-2.0 -lgobject-2.0 -lglib-2.0 -lpng -lz -ljpeg
>>>> -lwxregexu-3.0 -pthread
>>>> -Wl,--version-script,/tmp/pip-build-rblgzybr/wxpython/build/wxbld/gtk3/version-script
>>>> -lz -ldl -lm -lwx_gtk3u_core-3.0 -lwx_baseu-3.0 -lGL -lGLU -lz -ldl
>>>> -lm
>>>> (cd /tmp/pip-build-rblgzybr/wxpython/build/wxbld/gtk3/lib/; rm -f
>>>> libwx_gtk3u_aui-3.0.so libwx_gtk3u_aui-3.0.so.0; ln -s
>>>> libwx_gtk3u_aui-3.0.so.0.4.0 libwx_gtk3u_aui-3.0.so.0; ln -s
>>>> libwx_gtk3u_aui-3.0.so.0 libwx_gtk3u_aui-3.0.so)
>>>> (if test -f utils/wxrc/Makefile ; then cd utils/wxrc && make all ; fi)
>>>> make[1]: вход в каталог
>>>> «/tmp/pip-build-rblgzybr/wxpython/build/wxbld/gtk3/utils/wxrc»
>>>> make[1]: Цель «all» не требует выполнения команд.
>>>> make[1]: выход из каталога
>>>> «/tmp/pip-build-rblgzybr/wxpython/build/wxbld/gtk3/utils/wxrc»
>>>> (cd /tmp/pip-build-rblgzybr/wxpython/build/wxbld/gtk3/lib/; rm -f
>>>> libwx_gtk3u_propgrid-3.0.so libwx_gtk3u_propgrid-3.0.so.0; ln -s
>>>> libwx_gtk3u_propgrid-3.0.so.0.4.0 libwx_gtk3u_propgrid-3.0.so.0; ln -s
>>>> libwx_gtk3u_propgrid-3.0.so.0 libwx_gtk3u_propgrid-3.0.so)
>>>> (cd /tmp/pip-build-rblgzybr/wxpython/build/wxbld/gtk3/lib/; rm -f
>>>> libwx_gtk3u_richtext-3.0.so libwx_gtk3u_richtext-3.0.so.0; ln -s
>>>> libwx_gtk3u_richtext-3.0.so.0.4.0 libwx_gtk3u_richtext-3.0.so.0; ln -s
>>>> libwx_gtk3u_richtext-3.0.so.0 libwx_gtk3u_richtext-3.0.so)
>>>> /usr/bin/x86_64-linux-gnu-ld: cannot find -lGL
>>>> collect2: error: ld returned 1 exit status
>>>> Makefile:16107: recipe for target
>>>> '/tmp/pip-build-rblgzybr/wxpython/build/wxbld/gtk3/lib/libwx_gtk3u_gl-3.0.so.0.4.0'
>>>> failed
>>>> make: *** [/tmp/pip-build-rblgzybr/wxpython/build/wxbld/gtk3/lib/libwx_gtk3u_gl-3.0.so.0.4.0]
>>>> Error 1
>>>> Error building
>>>> ERROR: failed building wxWidgets
>>>> Traceback (most recent call last):
>>>> File "build.py", line 1321, in cmd_build_wx
>>>> wxbuild.main(wxDir(), build_options)
>>>> File "/tmp/pip-build-rblgzybr/wxpython/buildtools/build_wxwidgets.py",
>>>> line 498, in main
>>>> exitIfError(wxBuilder.build(dir=buildDir, options=args),
>>>> "Error building")
>>>> File "/tmp/pip-build-rblgzybr/wxpython/buildtools/build_wxwidgets.py",
>>>> line 85, in exitIfError
>>>> raise builder.BuildError(msg)
>>>> buildtools.builder.BuildError: Error building
>>>> Finished command: build_wx (0m2.315s)
>>>> Finished command: build (0m2.316s)
>>>> Command '"/home/jenyay/.local/share/virtualenvs/outwiker--dI8U2my/bin/python3"
>>>> -u build.py build' failed with exit code 1.
>>>>
>>>> A similar error is described here -
>>>> Bug #1770742 “Cannot find -lGL” : Bugs : libglvnd package : Ubuntu
>>>> пн, 18 июн. 2018 г. в 7:49, Robin Dunn <robin@alldunn.com>:
>>>>>
>>>>> Announcing wxPython 4.0.2
>>>>> =========================
>>>>>
>>>>> PyPI: wxPython · PyPI
>>>>> Extras: Index of /wxPython4/extras
>>>>> Pip: ``pip install wxPython==4.0.2``
>>>>>
>>>>> Changes in this release include the following:
>>>>>
>>>>> * Fixed wx.html2.EVT_WEBVIEW_NAVIGATING event not being sent on some
>>>>> versions of Linux. (#741)
>>>>>
>>>>> * wx.Sizers can now be used as an iterator to iterate over the items
>>>>> within the sizer. (#738)
>>>>>
>>>>> * Fix Python3 division in ThumbnailCtrl. (#746)
>>>>>
>>>>> * Fix leaking image list in CheckListCtrlMixin (#752)
>>>>>
>>>>> * All items marked as deprecated in the wxWidgets interface
>>>>> (documentation) files will now throw a DeprecationWarning when used
>>>>> from wxPython. Many of these items are disappearing in 4.1 so it's
>>>>> important to ensure they are deprecated at runtime too instead of
>>>>> just in the docs. (#749)
>>>>>
>>>>> * Ensure that the attribute list given to the GLCanvas constructor is
>>>>> zero-terminated like it was in Classic. (#770)
>>>>>
>>>>> * Updated to the wxWidgets 3.0.4 release version.
>>>>>
>>>>> * Added the wxWidgets version number to the tail end of the string
>>>>> returned by wx.version().
>>>>>
>>>>> * Bind EVT_WINDOW_DESTROY event only to the tree windows in
>>>>> CustomTreeCtrl, since otherwise it would be caught when child
>>>>> windows are destroyed too, which causes problems in this
>>>>> case. (#778)
>>>>>
>>>>> * Fixed a problem where wx.TreeCtrl.OnCompareItems was not being
>>>>> called in derived classes on Windows. This was due to an
>>>>> optimization that wasn't compatible with how the classes are
>>>>> wrapped. (#774)
>>>>>
>>>>> * Added wrappers for wx.ClassInfo and exposed
>>>>> wx.Object.GetClassInfo. This class is part of wxWidgets' internal
>>>>> type information system and although it is not very useful for
>>>>> Python applications it is useful for debugging some internal
>>>>> wxPython issues.
>>>>>
>>>>> * Removed the wx.lib.pubsub package, and replaced it with code that
>>>>> imports the standalone PyPubSub in order remain compatible with
>>>>> older code that still uses wx.lib.pubsub. (#782, #792)
>>>>>
>>>>> * Fixed bug in wx.lib.intctrl (#790)
>>>>>
>>>>> * Fixed subclassing of wx.TextCompleter and wx.TextCompleterSimple
>>>>> (#827)
>>>>>
>>>>> * Fixes for Python3 compatibility in PyCrust. (#823)
>>>>>
>>>>> * Fix wxGet to be able to use pip v10. (#817)
>>>>>
>>>>> * Change winid parameter in wx.ScrolledWindow to id, for
>>>>> consistency. (#816)
>>>>>
>>>>> * Ensure that the page exists in book controls GetPage and RemovePage
>>>>> methods. At least one of the wx ports do not do this. (#830)
>>>>>
>>>>> * Added missing wx.NumberEntryDialog
>>>>>
>>>>> * Change wx.TextCompleterSimple.GetCompletions to send the list of
>>>>> strings as a return value, rather than a parameter that gets
>>>>> filled. (#836)
>>>>>
>>>>> * Enabled the wx.GraphicsContext.Create(metaFileDC) wrapper (#811)
>>>>>
>>>>> * Metafile support is also available on OSX, so wx.msw.Metafile and
>>>>> wx.msw.MetafileDC have been moved to the core wx module. So they can
>>>>> now be accessed as wx.Metafile and wx.MetafileDC.
>>>>>
>>>>> * Updated the waf tool used by the build to version 2.0.7. This fixes
>>>>> problems with building for Python 3.7.
>>>>>
>>>>> * Fixed alignment in buttons on MSW which have had foreground or
>>>>> background colors set. (#815)
>>>>>
>>>>> * Fix for unexpected assertion inside wx.aui.AuiMDIChildFrame.Close.
>>>>>
>>>>> * Fix a bug in setting AuiDockingGuide size. (#727)
>>>>>
>>>>> * Remove unnecessary AUI notebook updating, and use wx.BufferedDC in
>>>>> Repaint() to mitigate flicker. (wx.lib.agw.aui). (#851, #686)
>>>>>
>>>>> * Fixed crashing bug when using client data with items in
>>>>> wx.dataview.DataViewTreeCtrl. (#856)
>>>>>
>>>>> * Detach wx.Control in AuiToolbar from current sizer before attach to
>>>>> a new one. (#843)
>>>>>
>>>>> * Fixed a problem in wx.lib.mixins.listctrl.TextEditMixin where the
>>>>> height of the editor widget could be set to zero. (See discussion in
>>>>> #849)
>>>>>
>>>>> * Fix a bug in calculating whether a tool fits into the
>>>>> AuiToolBar. (#863)
>>>>>
>>>>> * Override SetForegroundColour and SetBackgroundColour in
>>>>> MaskedEditMixin (#808)
>>>>>
>>>>> * Add an explicit wx.GraphicsContext.Create overload for
>>>>> wx.AutoBufferedPaintDC. (#783)
>>>>>
>>>>> * Return original AGW window style in
>>>>> AuiToolBar.GetAGWWindowStyleFlag. (#870)
>>>>>
>>>>> * Fix a bug in group management on wx.lib.masked.numctrl; the previous
>>>>> code used truediv ('/') to calculate _groupSpace, but in python 3.x
>>>>> this leads to a float result, instead of an integer as was
>>>>> expected. Using floordiv ('//') instead to solve the problem. (#865)
>>>>>
>>>>> * Hide the window when the tool does not fit into AuiToolBar. (#872)
>>>>>
>>>>> * Fixed the virtual dispatch code for the PGEditor.GetValueFromControl
>>>>> method to properly pass the parameters to the Python implementation,
>>>>> and also fixed how the return value is handled. (#742)
>>>>>
>>>>> * Fixed all implementations of the PGProperty.StringToValue and
>>>>> IntToValue methods to treat the value parameter as a return
>>>>> value. (#742)
>>>>>
>>>>> * Add missing wx.adv.EVT_CALENDAR_WEEK_CLICKED (#875)
>>>>>
>>>>> * Fixed the stock labels to conform to Windows design
>>>>> guidelines. (#787)
>>>>>
>>>>> * Always reset floating size and style when floating a toolbar in
>>>>> agw.aui. (#880)
>>>>>
>>>>>
>>>>>
>>>>>
>>>>>
>>>>> What is wxPython?
>>>>> -----------------
>>>>>
>>>>> wxPython is a cross-platform GUI toolkit for the Python programming
>>>>> language. It allows Python programmers to create programs with a
>>>>> robust, highly functional graphical user interface, simply and
>>>>> easily. It is implemented as a set of Python extension modules that
>>>>> wrap the GUI components of the popular wxWidgets cross platform
>>>>> library, which is written in C++. Supported platforms are Microsoft
>>>>> Windows, Mac OS X and macOS, and Linux or other unix-like systems with
>>>>> GTK2 or GTK3 libraries. In most cases the native widgets are used on
>>>>> each platform to provide a 100% native look and feel for the
>>>>> application.
>>>>>
>>>>>
>>>>> What is wxPython Phoenix?
>>>>> -------------------------
>>>>>
>>>>> wxPython's Project Phoenix is a new from-the-ground-up implementation
>>>>> of wxPython, created with the intent of making wxPython “better,
>>>>> stronger, faster than he was before.” In other words, this new
>>>>> implementation is focused on improving speed, maintainability and
>>>>> extensibility of wxPython, as well as removing most of the cruft that
>>>>> had accumulated over the long life of Classic wxPython.
>>>>>
>>>>> The project has been in development off and on, mostly behind the
>>>>> scenes, for many years. For the past few years automated snapshot
>>>>> builds have been available for those adventurous enough to try it, and
>>>>> many people eventually started using the snapshots in their projects,
>>>>> even for production releases. While there are still some things on
>>>>> the periphery that need to be completed, the core of the new wxPython
>>>>> extension modules which wrap the wxWidgets code has been stable for a
>>>>> long time now.
>>>>>
>>>>> Due to some things being cleaned up, reorganized, simplified and
>>>>> dehackified wxPython Phoenix is not completely backwards compatible
>>>>> with wxPython Classic. This is intended. In general, however, the API
>>>>> differences tend to be minor and some applications can use Phoenix
>>>>> with slight, or even with no modifications. In some other cases the
>>>>> correct way to do things was also available in Classic and it's only
>>>>> the wrong way that has been removed from Phoenix. For more
>>>>> information there is a Migration Guide document available at:
>>>>> wxPython Project Phoenix Migration Guide — wxPython Phoenix 4.2.2 documentation
>>>>>
>>>>> The new wxPython API reference documentation, including all
>>>>> Python-specific additions and customizations, and docs for the wx.lib
>>>>> package, is located at: https://docs.wxpython.org/
>>>>>
>>>>>
>>>>>
>>>>> --
>>>>> Robin Dunn
>>>>> Software Craftsman
>>>>> http://wxPython.org
>>>>>
>>>>> --
>>>>> You received this message because you are subscribed to the Google Groups "wxPython-dev" group.
>>>>> To unsubscribe from this group and stop receiving emails from it, send an email to wxPython-dev+unsubscribe@googlegroups.com.
>>>>> For more options, visit https://groups.google.com/d/optout.
>>>>
>>>>
>>>>
>>>> --
>>>> Всего хорошего.
>>>> Евгений Ильин
>>>> http://jenyay.net
>>>>
>>>> --
>>>> You received this message because you are subscribed to the Google Groups "wxPython-dev" group.
>>>> To unsubscribe from this group and stop receiving emails from it, send an email to wxPython-dev+unsubscribe@googlegroups.com.
>>>> For more options, visit https://groups.google.com/d/optout.
>>>>
>>
>> --
>> You received this message because you are subscribed to the Google Groups "wxPython-dev" group.
>> To unsubscribe from this group and stop receiving emails from it, send an email to wxPython-dev+unsubscribe@googlegroups.com.
>> For more options, visit https://groups.google.com/d/optout.
>
>
>
> --
> Всего хорошего.
> Евгений Ильин
> http://jenyay.net
>
> --
> You received this message because you are subscribed to the Google Groups "wxPython-dev" group.
> To unsubscribe from this group and stop receiving emails from it, send an email to wxPython-dev+unsubscribe@googlegroups.com.
> For more options, visit https://groups.google.com/d/optout.
>

--
You received this message because you are subscribed to the Google Groups "wxPython-dev" group.
To unsubscribe from this group and stop receiving emails from it, send an email to wxPython-dev+unsubscribe@googlegroups.com.
For more options, visit https://groups.google.com/d/optout.

--
Всего хорошего.
Евгений Ильин

Do you use the Ubuntu package for that, or install manually?

···

On Tue, 19 Jun 2018, Евгений Ильин wrote:

Yes, nvidia-driver-390.

Out of curiosity, do you have any third-party video drivers installed
(e.g., proprietary nVidia driver)?

On Tue, 19 Jun 2018, Евгений Ильин wrote:

Thanks, these binaries were installed without problems. But in any
case, it's interesting to find out the reason for compilation problems
from the source.
вт, 19 июн. 2018 г. в 19:20, Robin Dunn <robin@alldunn.com>:

Also, there are now Ubuntu 18 binaries available at Index of /wxPython4/extras/linux so you don't need to build it yourself with pip if you are running on the amd64 architecture. See wxPython Downloads | wxPython for an example pip command for installing wheels from there.

--
Robin

On Tuesday, June 19, 2018 at 6:34:08 AM UTC-7, Scott Talbert wrote:

It looks like you are missing the libGL development files. Try running
(as root):

apt-get build-dep wxwidgets3.0

That should get you everything you need.

On Tue, 19 Jun 2018, Евгений Ильин wrote:

Hurrah!!! Thank you mery much for the work.

But I was unable to install wxPython 4.0.2 from PyPi in Ubuntu 18.04.
I get error:

(cd /tmp/pip-build-rblgzybr/wxpython/build/wxbld/gtk3/lib/; rm -f
libwx_gtk3u_ribbon-3.0.so libwx_gtk3u_ribbon-3.0.so.0; ln -s
libwx_gtk3u_ribbon-3.0.so.0.4.0 libwx_gtk3u_ribbon-3.0.so.0; ln -s
libwx_gtk3u_ribbon-3.0.so.0 libwx_gtk3u_ribbon-3.0.so)
   g++ -shared -fPIC -o
/tmp/pip-build-rblgzybr/wxpython/build/wxbld/gtk3/lib/libwx_gtk3u_gl-3.0.so.0.4.0
gldll_glcmn.o gldll_glx11.o gldll_gtk_glcanvas.o
-L/tmp/pip-build-rblgzybr/wxpython/build/wxbld/gtk3/lib
-Wl,-soname,libwx_gtk3u_gl-3.0.so.0 -pthread -lwxtiff-3.0
-lgtk-3 -lgdk-3 -lpangocairo-1.0 -lpango-1.0 -latk-1.0 -lcairo-gobject
-lcairo -lgdk_pixbuf-2.0 -lgio-2.0 -lgobject-2.0 -lgthread-2.0
-pthread -lglib-2.0 -lX11 -lXxf86vm -lSM -lgtk-3 -lgdk-3
-lpangocairo-1.0 -lpango-1.0 -latk-1.0 -lcairo-gobject -lcairo
-lgdk_pixbuf-2.0 -lgio-2.0 -lgobject-2.0 -lglib-2.0 -lpng -lz -ljpeg
-lwxregexu-3.0 -pthread
-Wl,--version-script,/tmp/pip-build-rblgzybr/wxpython/build/wxbld/gtk3/version-script
-lz -ldl -lm -lwx_gtk3u_core-3.0 -lwx_baseu-3.0 -lGL -lGLU -lz -ldl
-lm
   (cd /tmp/pip-build-rblgzybr/wxpython/build/wxbld/gtk3/lib/; rm -f
libwx_gtk3u_aui-3.0.so libwx_gtk3u_aui-3.0.so.0; ln -s
libwx_gtk3u_aui-3.0.so.0.4.0 libwx_gtk3u_aui-3.0.so.0; ln -s
libwx_gtk3u_aui-3.0.so.0 libwx_gtk3u_aui-3.0.so)
   (if test -f utils/wxrc/Makefile ; then cd utils/wxrc && make all ; fi)
   make[1]: вход в каталог
«/tmp/pip-build-rblgzybr/wxpython/build/wxbld/gtk3/utils/wxrc»
   make[1]: Цель «all» не требует выполнения команд.
   make[1]: выход из каталога
«/tmp/pip-build-rblgzybr/wxpython/build/wxbld/gtk3/utils/wxrc»
   (cd /tmp/pip-build-rblgzybr/wxpython/build/wxbld/gtk3/lib/; rm -f
libwx_gtk3u_propgrid-3.0.so libwx_gtk3u_propgrid-3.0.so.0; ln -s
libwx_gtk3u_propgrid-3.0.so.0.4.0 libwx_gtk3u_propgrid-3.0.so.0; ln -s
libwx_gtk3u_propgrid-3.0.so.0 libwx_gtk3u_propgrid-3.0.so)
   (cd /tmp/pip-build-rblgzybr/wxpython/build/wxbld/gtk3/lib/; rm -f
libwx_gtk3u_richtext-3.0.so libwx_gtk3u_richtext-3.0.so.0; ln -s
libwx_gtk3u_richtext-3.0.so.0.4.0 libwx_gtk3u_richtext-3.0.so.0; ln -s
libwx_gtk3u_richtext-3.0.so.0 libwx_gtk3u_richtext-3.0.so)
   /usr/bin/x86_64-linux-gnu-ld: cannot find -lGL
   collect2: error: ld returned 1 exit status
   Makefile:16107: recipe for target
'/tmp/pip-build-rblgzybr/wxpython/build/wxbld/gtk3/lib/libwx_gtk3u_gl-3.0.so.0.4.0'
failed
   make: *** [/tmp/pip-build-rblgzybr/wxpython/build/wxbld/gtk3/lib/libwx_gtk3u_gl-3.0.so.0.4.0]
Error 1
   Error building
   ERROR: failed building wxWidgets
   Traceback (most recent call last):
     File "build.py", line 1321, in cmd_build_wx
       wxbuild.main(wxDir(), build_options)
     File "/tmp/pip-build-rblgzybr/wxpython/buildtools/build_wxwidgets.py",
line 498, in main
       exitIfError(wxBuilder.build(dir=buildDir, options=args),
"Error building")
     File "/tmp/pip-build-rblgzybr/wxpython/buildtools/build_wxwidgets.py",
line 85, in exitIfError
       raise builder.BuildError(msg)
   buildtools.builder.BuildError: Error building
   Finished command: build_wx (0m2.315s)
   Finished command: build (0m2.316s)
   Command '"/home/jenyay/.local/share/virtualenvs/outwiker--dI8U2my/bin/python3"
-u build.py build' failed with exit code 1.

A similar error is described here -
Bug #1770742 “Cannot find -lGL” : Bugs : libglvnd package : Ubuntu
пн, 18 июн. 2018 г. в 7:49, Robin Dunn <robin@alldunn.com>:

Announcing wxPython 4.0.2

PyPI: wxPython · PyPI
Extras: Index of /wxPython4/extras
Pip: ``pip install wxPython==4.0.2``

Changes in this release include the following:

* Fixed wx.html2.EVT_WEBVIEW_NAVIGATING event not being sent on some
   versions of Linux. (#741)

* wx.Sizers can now be used as an iterator to iterate over the items
   within the sizer. (#738)

* Fix Python3 division in ThumbnailCtrl. (#746)

* Fix leaking image list in CheckListCtrlMixin (#752)

* All items marked as deprecated in the wxWidgets interface
   (documentation) files will now throw a DeprecationWarning when used
   from wxPython. Many of these items are disappearing in 4.1 so it's
   important to ensure they are deprecated at runtime too instead of
   just in the docs. (#749)

* Ensure that the attribute list given to the GLCanvas constructor is
   zero-terminated like it was in Classic. (#770)

* Updated to the wxWidgets 3.0.4 release version.

* Added the wxWidgets version number to the tail end of the string
   returned by wx.version().

* Bind EVT_WINDOW_DESTROY event only to the tree windows in
   CustomTreeCtrl, since otherwise it would be caught when child
   windows are destroyed too, which causes problems in this
   case. (#778)

* Fixed a problem where wx.TreeCtrl.OnCompareItems was not being
   called in derived classes on Windows. This was due to an
   optimization that wasn't compatible with how the classes are
   wrapped. (#774)

* Added wrappers for wx.ClassInfo and exposed
   wx.Object.GetClassInfo. This class is part of wxWidgets' internal
   type information system and although it is not very useful for
   Python applications it is useful for debugging some internal
   wxPython issues.

* Removed the wx.lib.pubsub package, and replaced it with code that
   imports the standalone PyPubSub in order remain compatible with
   older code that still uses wx.lib.pubsub. (#782, #792)

* Fixed bug in wx.lib.intctrl (#790)

* Fixed subclassing of wx.TextCompleter and wx.TextCompleterSimple
   (#827)

* Fixes for Python3 compatibility in PyCrust. (#823)

* Fix wxGet to be able to use pip v10. (#817)

* Change winid parameter in wx.ScrolledWindow to id, for
   consistency. (#816)

* Ensure that the page exists in book controls GetPage and RemovePage
   methods. At least one of the wx ports do not do this. (#830)

* Added missing wx.NumberEntryDialog

* Change wx.TextCompleterSimple.GetCompletions to send the list of
   strings as a return value, rather than a parameter that gets
   filled. (#836)

* Enabled the wx.GraphicsContext.Create(metaFileDC) wrapper (#811)

* Metafile support is also available on OSX, so wx.msw.Metafile and
   wx.msw.MetafileDC have been moved to the core wx module. So they can
   now be accessed as wx.Metafile and wx.MetafileDC.

* Updated the waf tool used by the build to version 2.0.7. This fixes
   problems with building for Python 3.7.

* Fixed alignment in buttons on MSW which have had foreground or
   background colors set. (#815)

* Fix for unexpected assertion inside wx.aui.AuiMDIChildFrame.Close.

* Fix a bug in setting AuiDockingGuide size. (#727)

* Remove unnecessary AUI notebook updating, and use wx.BufferedDC in
   Repaint() to mitigate flicker. (wx.lib.agw.aui). (#851, #686)

* Fixed crashing bug when using client data with items in
   wx.dataview.DataViewTreeCtrl. (#856)

* Detach wx.Control in AuiToolbar from current sizer before attach to
   a new one. (#843)

* Fixed a problem in wx.lib.mixins.listctrl.TextEditMixin where the
   height of the editor widget could be set to zero. (See discussion in
   #849)

* Fix a bug in calculating whether a tool fits into the
   AuiToolBar. (#863)

* Override SetForegroundColour and SetBackgroundColour in
   MaskedEditMixin (#808)

* Add an explicit wx.GraphicsContext.Create overload for
   wx.AutoBufferedPaintDC. (#783)

* Return original AGW window style in
   AuiToolBar.GetAGWWindowStyleFlag. (#870)

* Fix a bug in group management on wx.lib.masked.numctrl; the previous
   code used truediv ('/') to calculate _groupSpace, but in python 3.x
   this leads to a float result, instead of an integer as was
   expected. Using floordiv ('//') instead to solve the problem. (#865)

* Hide the window when the tool does not fit into AuiToolBar. (#872)

* Fixed the virtual dispatch code for the PGEditor.GetValueFromControl
   method to properly pass the parameters to the Python implementation,
   and also fixed how the return value is handled. (#742)

* Fixed all implementations of the PGProperty.StringToValue and
   IntToValue methods to treat the value parameter as a return
   value. (#742)

* Add missing wx.adv.EVT_CALENDAR_WEEK_CLICKED (#875)

* Fixed the stock labels to conform to Windows design
   guidelines. (#787)

* Always reset floating size and style when floating a toolbar in
   agw.aui. (#880)

What is wxPython?
-----------------

wxPython is a cross-platform GUI toolkit for the Python programming
language. It allows Python programmers to create programs with a
robust, highly functional graphical user interface, simply and
easily. It is implemented as a set of Python extension modules that
wrap the GUI components of the popular wxWidgets cross platform
library, which is written in C++. Supported platforms are Microsoft
Windows, Mac OS X and macOS, and Linux or other unix-like systems with
GTK2 or GTK3 libraries. In most cases the native widgets are used on
each platform to provide a 100% native look and feel for the
application.

What is wxPython Phoenix?
-------------------------

wxPython's Project Phoenix is a new from-the-ground-up implementation
of wxPython, created with the intent of making wxPython “better,
stronger, faster than he was before.” In other words, this new
implementation is focused on improving speed, maintainability and
extensibility of wxPython, as well as removing most of the cruft that
had accumulated over the long life of Classic wxPython.

The project has been in development off and on, mostly behind the
scenes, for many years. For the past few years automated snapshot
builds have been available for those adventurous enough to try it, and
many people eventually started using the snapshots in their projects,
even for production releases. While there are still some things on
the periphery that need to be completed, the core of the new wxPython
extension modules which wrap the wxWidgets code has been stable for a
long time now.

Due to some things being cleaned up, reorganized, simplified and
dehackified wxPython Phoenix is not completely backwards compatible
with wxPython Classic. This is intended. In general, however, the API
differences tend to be minor and some applications can use Phoenix
with slight, or even with no modifications. In some other cases the
correct way to do things was also available in Classic and it's only
the wrong way that has been removed from Phoenix. For more
information there is a Migration Guide document available at:
wxPython Project Phoenix Migration Guide — wxPython Phoenix 4.2.2 documentation

The new wxPython API reference documentation, including all
Python-specific additions and customizations, and docs for the wx.lib
package, is located at: https://docs.wxpython.org/

--
Robin Dunn
Software Craftsman
http://wxPython.org

--
You received this message because you are subscribed to the Google Groups "wxPython-dev" group.
To unsubscribe from this group and stop receiving emails from it, send an email to wxPython-dev+unsubscribe@googlegroups.com.
For more options, visit https://groups.google.com/d/optout.

--
Всего хорошего.
Евгений Ильин
http://jenyay.net

--
You received this message because you are subscribed to the Google Groups "wxPython-dev" group.
To unsubscribe from this group and stop receiving emails from it, send an email to wxPython-dev+unsubscribe@googlegroups.com.
For more options, visit https://groups.google.com/d/optout.

--
You received this message because you are subscribed to the Google Groups "wxPython-dev" group.
To unsubscribe from this group and stop receiving emails from it, send an email to wxPython-dev+unsubscribe@googlegroups.com.
For more options, visit https://groups.google.com/d/optout.

--
Всего хорошего.
Евгений Ильин
http://jenyay.net

--
You received this message because you are subscribed to the Google Groups "wxPython-dev" group.
To unsubscribe from this group and stop receiving emails from it, send an email to wxPython-dev+unsubscribe@googlegroups.com.
For more options, visit https://groups.google.com/d/optout.

--
You received this message because you are subscribed to the Google Groups "wxPython-dev" group.
To unsubscribe from this group and stop receiving emails from it, send an email to wxPython-dev+unsubscribe@googlegroups.com.
For more options, visit https://groups.google.com/d/optout.

--
Всего хорошего.
Евгений Ильин
http://jenyay.net

--
You received this message because you are subscribed to the Google Groups "wxPython-dev" group.
To unsubscribe from this group and stop receiving emails from it, send an email to wxPython-dev+unsubscribe@googlegroups.com.
For more options, visit https://groups.google.com/d/optout.

I use Ubuntu package.

···

Do you use the Ubuntu package for that, or install manually?

On Tue, 19 Jun 2018, Евгений Ильин wrote:

> Yes, nvidia-driver-390.
>
>> Out of curiosity, do you have any third-party video drivers installed
>> (e.g., proprietary nVidia driver)?
>>
>> On Tue, 19 Jun 2018, Евгений Ильин wrote:
>>
>>> Thanks, these binaries were installed without problems. But in any
>>> case, it's interesting to find out the reason for compilation problems
>>> from the source.
>>> вт, 19 июн. 2018 г. в 19:20, Robin Dunn <robin@alldunn.com>:
>>>>
>>>> Also, there are now Ubuntu 18 binaries available at Index of /wxPython4/extras/linux so you don't need to build it yourself with pip if you are running on the amd64 architecture. See wxPython Downloads | wxPython for an example pip command for installing wheels from there.
>>>>
>>>> --
>>>> Robin
>>>>
>>>>
>>>> On Tuesday, June 19, 2018 at 6:34:08 AM UTC-7, Scott Talbert wrote:
>>>>>
>>>>> It looks like you are missing the libGL development files. Try running
>>>>> (as root):
>>>>>
>>>>> apt-get build-dep wxwidgets3.0
>>>>>
>>>>> That should get you everything you need.
>>>>>
>>>>> On Tue, 19 Jun 2018, Евгений Ильин wrote:
>>>>>
>>>>>> Hurrah!!! Thank you mery much for the work.
>>>>>>
>>>>>> But I was unable to install wxPython 4.0.2 from PyPi in Ubuntu 18.04.
>>>>>> I get error:
>>>>>>
>>>>>> (cd /tmp/pip-build-rblgzybr/wxpython/build/wxbld/gtk3/lib/; rm -f
>>>>>> libwx_gtk3u_ribbon-3.0.so libwx_gtk3u_ribbon-3.0.so.0; ln -s
>>>>>> libwx_gtk3u_ribbon-3.0.so.0.4.0 libwx_gtk3u_ribbon-3.0.so.0; ln -s
>>>>>> libwx_gtk3u_ribbon-3.0.so.0 libwx_gtk3u_ribbon-3.0.so)
>>>>>> g++ -shared -fPIC -o
>>>>>> /tmp/pip-build-rblgzybr/wxpython/build/wxbld/gtk3/lib/libwx_gtk3u_gl-3.0.so.0.4.0
>>>>>> gldll_glcmn.o gldll_glx11.o gldll_gtk_glcanvas.o
>>>>>> -L/tmp/pip-build-rblgzybr/wxpython/build/wxbld/gtk3/lib
>>>>>> -Wl,-soname,libwx_gtk3u_gl-3.0.so.0 -pthread -lwxtiff-3.0
>>>>>> -lgtk-3 -lgdk-3 -lpangocairo-1.0 -lpango-1.0 -latk-1.0 -lcairo-gobject
>>>>>> -lcairo -lgdk_pixbuf-2.0 -lgio-2.0 -lgobject-2.0 -lgthread-2.0
>>>>>> -pthread -lglib-2.0 -lX11 -lXxf86vm -lSM -lgtk-3 -lgdk-3
>>>>>> -lpangocairo-1.0 -lpango-1.0 -latk-1.0 -lcairo-gobject -lcairo
>>>>>> -lgdk_pixbuf-2.0 -lgio-2.0 -lgobject-2.0 -lglib-2.0 -lpng -lz -ljpeg
>>>>>> -lwxregexu-3.0 -pthread
>>>>>> -Wl,--version-script,/tmp/pip-build-rblgzybr/wxpython/build/wxbld/gtk3/version-script
>>>>>> -lz -ldl -lm -lwx_gtk3u_core-3.0 -lwx_baseu-3.0 -lGL -lGLU -lz -ldl
>>>>>> -lm
>>>>>> (cd /tmp/pip-build-rblgzybr/wxpython/build/wxbld/gtk3/lib/; rm -f
>>>>>> libwx_gtk3u_aui-3.0.so libwx_gtk3u_aui-3.0.so.0; ln -s
>>>>>> libwx_gtk3u_aui-3.0.so.0.4.0 libwx_gtk3u_aui-3.0.so.0; ln -s
>>>>>> libwx_gtk3u_aui-3.0.so.0 libwx_gtk3u_aui-3.0.so)
>>>>>> (if test -f utils/wxrc/Makefile ; then cd utils/wxrc && make all ; fi)
>>>>>> make[1]: вход в каталог
>>>>>> «/tmp/pip-build-rblgzybr/wxpython/build/wxbld/gtk3/utils/wxrc»
>>>>>> make[1]: Цель «all» не требует выполнения команд.
>>>>>> make[1]: выход из каталога
>>>>>> «/tmp/pip-build-rblgzybr/wxpython/build/wxbld/gtk3/utils/wxrc»
>>>>>> (cd /tmp/pip-build-rblgzybr/wxpython/build/wxbld/gtk3/lib/; rm -f
>>>>>> libwx_gtk3u_propgrid-3.0.so libwx_gtk3u_propgrid-3.0.so.0; ln -s
>>>>>> libwx_gtk3u_propgrid-3.0.so.0.4.0 libwx_gtk3u_propgrid-3.0.so.0; ln -s
>>>>>> libwx_gtk3u_propgrid-3.0.so.0 libwx_gtk3u_propgrid-3.0.so)
>>>>>> (cd /tmp/pip-build-rblgzybr/wxpython/build/wxbld/gtk3/lib/; rm -f
>>>>>> libwx_gtk3u_richtext-3.0.so libwx_gtk3u_richtext-3.0.so.0; ln -s
>>>>>> libwx_gtk3u_richtext-3.0.so.0.4.0 libwx_gtk3u_richtext-3.0.so.0; ln -s
>>>>>> libwx_gtk3u_richtext-3.0.so.0 libwx_gtk3u_richtext-3.0.so)
>>>>>> /usr/bin/x86_64-linux-gnu-ld: cannot find -lGL
>>>>>> collect2: error: ld returned 1 exit status
>>>>>> Makefile:16107: recipe for target
>>>>>> '/tmp/pip-build-rblgzybr/wxpython/build/wxbld/gtk3/lib/libwx_gtk3u_gl-3.0.so.0.4.0'
>>>>>> failed
>>>>>> make: *** [/tmp/pip-build-rblgzybr/wxpython/build/wxbld/gtk3/lib/libwx_gtk3u_gl-3.0.so.0.4.0]
>>>>>> Error 1
>>>>>> Error building
>>>>>> ERROR: failed building wxWidgets
>>>>>> Traceback (most recent call last):
>>>>>> File "build.py", line 1321, in cmd_build_wx
>>>>>> wxbuild.main(wxDir(), build_options)
>>>>>> File "/tmp/pip-build-rblgzybr/wxpython/buildtools/build_wxwidgets.py",
>>>>>> line 498, in main
>>>>>> exitIfError(wxBuilder.build(dir=buildDir, options=args),
>>>>>> "Error building")
>>>>>> File "/tmp/pip-build-rblgzybr/wxpython/buildtools/build_wxwidgets.py",
>>>>>> line 85, in exitIfError
>>>>>> raise builder.BuildError(msg)
>>>>>> buildtools.builder.BuildError: Error building
>>>>>> Finished command: build_wx (0m2.315s)
>>>>>> Finished command: build (0m2.316s)
>>>>>> Command '"/home/jenyay/.local/share/virtualenvs/outwiker--dI8U2my/bin/python3"
>>>>>> -u build.py build' failed with exit code 1.
>>>>>>
>>>>>> A similar error is described here -
>>>>>> Bug #1770742 “Cannot find -lGL” : Bugs : libglvnd package : Ubuntu
>>>>>> пн, 18 июн. 2018 г. в 7:49, Robin Dunn <robin@alldunn.com>:
>>>>>>>
>>>>>>> Announcing wxPython 4.0.2
>>>>>>> =========================
>>>>>>>
>>>>>>> PyPI: wxPython · PyPI
>>>>>>> Extras: Index of /wxPython4/extras
>>>>>>> Pip: ``pip install wxPython==4.0.2``
>>>>>>>
>>>>>>> Changes in this release include the following:
>>>>>>>
>>>>>>> * Fixed wx.html2.EVT_WEBVIEW_NAVIGATING event not being sent on some
>>>>>>> versions of Linux. (#741)
>>>>>>>
>>>>>>> * wx.Sizers can now be used as an iterator to iterate over the items
>>>>>>> within the sizer. (#738)
>>>>>>>
>>>>>>> * Fix Python3 division in ThumbnailCtrl. (#746)
>>>>>>>
>>>>>>> * Fix leaking image list in CheckListCtrlMixin (#752)
>>>>>>>
>>>>>>> * All items marked as deprecated in the wxWidgets interface
>>>>>>> (documentation) files will now throw a DeprecationWarning when used
>>>>>>> from wxPython. Many of these items are disappearing in 4.1 so it's
>>>>>>> important to ensure they are deprecated at runtime too instead of
>>>>>>> just in the docs. (#749)
>>>>>>>
>>>>>>> * Ensure that the attribute list given to the GLCanvas constructor is
>>>>>>> zero-terminated like it was in Classic. (#770)
>>>>>>>
>>>>>>> * Updated to the wxWidgets 3.0.4 release version.
>>>>>>>
>>>>>>> * Added the wxWidgets version number to the tail end of the string
>>>>>>> returned by wx.version().
>>>>>>>
>>>>>>> * Bind EVT_WINDOW_DESTROY event only to the tree windows in
>>>>>>> CustomTreeCtrl, since otherwise it would be caught when child
>>>>>>> windows are destroyed too, which causes problems in this
>>>>>>> case. (#778)
>>>>>>>
>>>>>>> * Fixed a problem where wx.TreeCtrl.OnCompareItems was not being
>>>>>>> called in derived classes on Windows. This was due to an
>>>>>>> optimization that wasn't compatible with how the classes are
>>>>>>> wrapped. (#774)
>>>>>>>
>>>>>>> * Added wrappers for wx.ClassInfo and exposed
>>>>>>> wx.Object.GetClassInfo. This class is part of wxWidgets' internal
>>>>>>> type information system and although it is not very useful for
>>>>>>> Python applications it is useful for debugging some internal
>>>>>>> wxPython issues.
>>>>>>>
>>>>>>> * Removed the wx.lib.pubsub package, and replaced it with code that
>>>>>>> imports the standalone PyPubSub in order remain compatible with
>>>>>>> older code that still uses wx.lib.pubsub. (#782, #792)
>>>>>>>
>>>>>>> * Fixed bug in wx.lib.intctrl (#790)
>>>>>>>
>>>>>>> * Fixed subclassing of wx.TextCompleter and wx.TextCompleterSimple
>>>>>>> (#827)
>>>>>>>
>>>>>>> * Fixes for Python3 compatibility in PyCrust. (#823)
>>>>>>>
>>>>>>> * Fix wxGet to be able to use pip v10. (#817)
>>>>>>>
>>>>>>> * Change winid parameter in wx.ScrolledWindow to id, for
>>>>>>> consistency. (#816)
>>>>>>>
>>>>>>> * Ensure that the page exists in book controls GetPage and RemovePage
>>>>>>> methods. At least one of the wx ports do not do this. (#830)
>>>>>>>
>>>>>>> * Added missing wx.NumberEntryDialog
>>>>>>>
>>>>>>> * Change wx.TextCompleterSimple.GetCompletions to send the list of
>>>>>>> strings as a return value, rather than a parameter that gets
>>>>>>> filled. (#836)
>>>>>>>
>>>>>>> * Enabled the wx.GraphicsContext.Create(metaFileDC) wrapper (#811)
>>>>>>>
>>>>>>> * Metafile support is also available on OSX, so wx.msw.Metafile and
>>>>>>> wx.msw.MetafileDC have been moved to the core wx module. So they can
>>>>>>> now be accessed as wx.Metafile and wx.MetafileDC.
>>>>>>>
>>>>>>> * Updated the waf tool used by the build to version 2.0.7. This fixes
>>>>>>> problems with building for Python 3.7.
>>>>>>>
>>>>>>> * Fixed alignment in buttons on MSW which have had foreground or
>>>>>>> background colors set. (#815)
>>>>>>>
>>>>>>> * Fix for unexpected assertion inside wx.aui.AuiMDIChildFrame.Close.
>>>>>>>
>>>>>>> * Fix a bug in setting AuiDockingGuide size. (#727)
>>>>>>>
>>>>>>> * Remove unnecessary AUI notebook updating, and use wx.BufferedDC in
>>>>>>> Repaint() to mitigate flicker. (wx.lib.agw.aui). (#851, #686)
>>>>>>>
>>>>>>> * Fixed crashing bug when using client data with items in
>>>>>>> wx.dataview.DataViewTreeCtrl. (#856)
>>>>>>>
>>>>>>> * Detach wx.Control in AuiToolbar from current sizer before attach to
>>>>>>> a new one. (#843)
>>>>>>>
>>>>>>> * Fixed a problem in wx.lib.mixins.listctrl.TextEditMixin where the
>>>>>>> height of the editor widget could be set to zero. (See discussion in
>>>>>>> #849)
>>>>>>>
>>>>>>> * Fix a bug in calculating whether a tool fits into the
>>>>>>> AuiToolBar. (#863)
>>>>>>>
>>>>>>> * Override SetForegroundColour and SetBackgroundColour in
>>>>>>> MaskedEditMixin (#808)
>>>>>>>
>>>>>>> * Add an explicit wx.GraphicsContext.Create overload for
>>>>>>> wx.AutoBufferedPaintDC. (#783)
>>>>>>>
>>>>>>> * Return original AGW window style in
>>>>>>> AuiToolBar.GetAGWWindowStyleFlag. (#870)
>>>>>>>
>>>>>>> * Fix a bug in group management on wx.lib.masked.numctrl; the previous
>>>>>>> code used truediv ('/') to calculate _groupSpace, but in python 3.x
>>>>>>> this leads to a float result, instead of an integer as was
>>>>>>> expected. Using floordiv ('//') instead to solve the problem. (#865)
>>>>>>>
>>>>>>> * Hide the window when the tool does not fit into AuiToolBar. (#872)
>>>>>>>
>>>>>>> * Fixed the virtual dispatch code for the PGEditor.GetValueFromControl
>>>>>>> method to properly pass the parameters to the Python implementation,
>>>>>>> and also fixed how the return value is handled. (#742)
>>>>>>>
>>>>>>> * Fixed all implementations of the PGProperty.StringToValue and
>>>>>>> IntToValue methods to treat the value parameter as a return
>>>>>>> value. (#742)
>>>>>>>
>>>>>>> * Add missing wx.adv.EVT_CALENDAR_WEEK_CLICKED (#875)
>>>>>>>
>>>>>>> * Fixed the stock labels to conform to Windows design
>>>>>>> guidelines. (#787)
>>>>>>>
>>>>>>> * Always reset floating size and style when floating a toolbar in
>>>>>>> agw.aui. (#880)
>>>>>>>
>>>>>>>
>>>>>>>
>>>>>>>
>>>>>>>
>>>>>>> What is wxPython?
>>>>>>> -----------------
>>>>>>>
>>>>>>> wxPython is a cross-platform GUI toolkit for the Python programming
>>>>>>> language. It allows Python programmers to create programs with a
>>>>>>> robust, highly functional graphical user interface, simply and
>>>>>>> easily. It is implemented as a set of Python extension modules that
>>>>>>> wrap the GUI components of the popular wxWidgets cross platform
>>>>>>> library, which is written in C++. Supported platforms are Microsoft
>>>>>>> Windows, Mac OS X and macOS, and Linux or other unix-like systems with
>>>>>>> GTK2 or GTK3 libraries. In most cases the native widgets are used on
>>>>>>> each platform to provide a 100% native look and feel for the
>>>>>>> application.
>>>>>>>
>>>>>>>
>>>>>>> What is wxPython Phoenix?
>>>>>>> -------------------------
>>>>>>>
>>>>>>> wxPython's Project Phoenix is a new from-the-ground-up implementation
>>>>>>> of wxPython, created with the intent of making wxPython “better,
>>>>>>> stronger, faster than he was before.” In other words, this new
>>>>>>> implementation is focused on improving speed, maintainability and
>>>>>>> extensibility of wxPython, as well as removing most of the cruft that
>>>>>>> had accumulated over the long life of Classic wxPython.
>>>>>>>
>>>>>>> The project has been in development off and on, mostly behind the
>>>>>>> scenes, for many years. For the past few years automated snapshot
>>>>>>> builds have been available for those adventurous enough to try it, and
>>>>>>> many people eventually started using the snapshots in their projects,
>>>>>>> even for production releases. While there are still some things on
>>>>>>> the periphery that need to be completed, the core of the new wxPython
>>>>>>> extension modules which wrap the wxWidgets code has been stable for a
>>>>>>> long time now.
>>>>>>>
>>>>>>> Due to some things being cleaned up, reorganized, simplified and
>>>>>>> dehackified wxPython Phoenix is not completely backwards compatible
>>>>>>> with wxPython Classic. This is intended. In general, however, the API
>>>>>>> differences tend to be minor and some applications can use Phoenix
>>>>>>> with slight, or even with no modifications. In some other cases the
>>>>>>> correct way to do things was also available in Classic and it's only
>>>>>>> the wrong way that has been removed from Phoenix. For more
>>>>>>> information there is a Migration Guide document available at:
>>>>>>> wxPython Project Phoenix Migration Guide — wxPython Phoenix 4.2.2 documentation
>>>>>>>
>>>>>>> The new wxPython API reference documentation, including all
>>>>>>> Python-specific additions and customizations, and docs for the wx.lib
>>>>>>> package, is located at: https://docs.wxpython.org/
>>>>>>>
>>>>>>>
>>>>>>>
>>>>>>> --
>>>>>>> Robin Dunn
>>>>>>> Software Craftsman
>>>>>>> http://wxPython.org
>>>>>>>
>>>>>>> --
>>>>>>> You received this message because you are subscribed to the Google Groups "wxPython-dev" group.
>>>>>>> To unsubscribe from this group and stop receiving emails from it, send an email to wxPython-dev+unsubscribe@googlegroups.com.
>>>>>>> For more options, visit https://groups.google.com/d/optout.
>>>>>>
>>>>>>
>>>>>>
>>>>>> --
>>>>>> Всего хорошего.
>>>>>> Евгений Ильин
>>>>>> http://jenyay.net
>>>>>>
>>>>>> --
>>>>>> You received this message because you are subscribed to the Google Groups "wxPython-dev" group.
>>>>>> To unsubscribe from this group and stop receiving emails from it, send an email to wxPython-dev+unsubscribe@googlegroups.com.
>>>>>> For more options, visit https://groups.google.com/d/optout.
>>>>>>
>>>>
>>>> --
>>>> You received this message because you are subscribed to the Google Groups "wxPython-dev" group.
>>>> To unsubscribe from this group and stop receiving emails from it, send an email to wxPython-dev+unsubscribe@googlegroups.com.
>>>> For more options, visit https://groups.google.com/d/optout.
>>>
>>>
>>>
>>> --
>>> Всего хорошего.
>>> Евгений Ильин
>>> http://jenyay.net
>>>
>>> --
>>> You received this message because you are subscribed to the Google Groups "wxPython-dev" group.
>>> To unsubscribe from this group and stop receiving emails from it, send an email to wxPython-dev+unsubscribe@googlegroups.com.
>>> For more options, visit https://groups.google.com/d/optout.
>>>
>>
>> --
>> You received this message because you are subscribed to the Google Groups "wxPython-dev" group.
>> To unsubscribe from this group and stop receiving emails from it, send an email to wxPython-dev+unsubscribe@googlegroups.com.
>> For more options, visit https://groups.google.com/d/optout.
>
>
>
> --
> Всего хорошего.
> Евгений Ильин
> http://jenyay.net
>
> --
> You received this message because you are subscribed to the Google Groups "wxPython-dev" group.
> To unsubscribe from this group and stop receiving emails from it, send an email to wxPython-dev+unsubscribe@googlegroups.com.
> For more options, visit https://groups.google.com/d/optout.
>

--
You received this message because you are subscribed to the Google Groups "wxPython-dev" group.
To unsubscribe from this group and stop receiving emails from it, send an email to wxPython-dev+unsubscribe@googlegroups.com.
For more options, visit https://groups.google.com/d/optout.

--
Всего хорошего.
Евгений Ильин