Hi Igor,
You are digressing from the main topic of installing WxPython on Linux.
Perhaps we should continue this discussion in another thread to avoid
confusing Vadim who is trying to help in a path that is closer to my
solution path. I understand that you are trying to optimize my system in
your way, yet it may not be the best fit for me at my situation.
I will try to answer you in here in hope this will satisfy your curiosity
and close this path. My system is called MIST - MIcro Simulation Tool. Here
is a link to it: https://github.com/Jacob-Barhak/MIST
It is a MIcro Simulation Compiler and run environment. About 8 years ago
when working on MIST predecessor IEST we chose python and WxPython as
development platforms. It was a good choice at the time. Yet installation
was always an issue and many people who work in the disease modeling field
rarely understand the details we are discussing now. They want a solution
that just works. I am trying to get to this point. I am happy to tell you
that with windows I am successful. I was able to do this through conda. Yet
Linux need some more work - this is why I am on this list asking for
insights.
I do not care about size of installation. My system runs in HPC environment
and entire anaconda with all packages you can think of installed will be
tiny compared to the data processed by the system. Yet I heard the
name mini-conda from Peter Wang in one of the Austin python meetings,
perhaps this is the solution to the size issue you were mentioning.
I do care about the environment being the same and Anaconda gives me that
solution and also gives me an AMI when I need to run things on the cloud.
And yes, I do call python from my code as a process in multiple scripts,
even in my test code. However, I did not do this in WxPython like in your
example - there it is handled differently. Any system that turns my code
into an executable will not be able to capture those calls to python
through a process. And even if it is smart enough to redirect these to the
python that comes standard with Ubuntu then it will break for not having
the dependencies I need such as numpy, Inspyred etc. Unless of course it
does what conda does and installs those packages.
Therefore instead of reinventing my system to solve the installation
problem I am trying to just resolve the last difficulty I have - WxPython
installation on Linux. Since I already have working solution with conda I
want to use this tool. It is easy enough to do. It just requires figuring
out some details by a few experts.
I hope this text explains my reasoning and will help navigate the
discussion in the direction of finding a solution for installing WxPython.
Thanks again for trying to help.
Jacob
On Sat, Jul 5, 2014 at 9:03 PM, Igor Korot <***@gmail.com> wrote:
> Jacob,
>
> On Sat, Jul 5, 2014 at 6:34 PM, Jacob Barhak <***@gmail.com>
> wrote:
> > Thanks Igor,
> >
> > Your enthusiasm is in place yet does not provide a solution.
>
> Thank you.
> Let me assure you that I'm not in any way affiliated to the
> Pyinstaller or its developers. ;-)
>
> >
> > I was referring to py2exe with window only in mind.
> >
> > I did look at PyInstaller yet did not try it since a system that compile
> my python into executables breaks it.
>
> You mean you can't install PyInstaller itself?
> Did you try the package manager or compiling from source? I'm sure
> PyInstaller devs will be happy to provide
> support for it...
>
> >
> > In some case my system calls python to invoke scripts it writes on the
> fly. And unless PyInstaller replicates what conda does and installs the
> python environment for you then it will break.
>
> You mean that you code is written like this:
>
> def foo()
> wx.Execute("python my_script.py")
>
> ?
>
> Can't you just import the script you are trying to run and call the
> appropriate function?
>
> And also conda installs the whole python environment on the system?
> This is just a big waste of the resources as the idea behind binary is
> to run the program without
> the need to depend on the developmental environment.
>
> Also, out of curiosity, what Linux comes without Python pre-installed?
> >
> > If you have experience with PyInstaller that contradicts this, please
> let me know. My choice with conda is justified here since it just transfers
> the eco system of the application and does not try to change the code into
> an executable.
>
> Nope. I don't. I'm just a developer that work on the (wx)Python scripts.
> But IIUC, my solutions probably is not a good fit/match, unless you
> try it yourself and tell me that its not good. ;-)
>
> Thank you.
>
> >
> > I believe someone on the list is capable of building a working Ubuntu
> WxPython package. If this is done I will be able to help upload it to
> binstar for conda install.
> >
> > Jacob
> >
> >
> > Sent from my iPhone
> >
> > On Jul 5, 2014, at 5:36 PM, Igor Korot <***@gmail.com> wrote:
> >
> >> Jacob,
> >>
> >> On Sat, Jul 5, 2014 at 3:20 PM, Jacob Barhak <***@gmail.com>
> wrote:
> >>> Thanks Igor,
> >>>
> >>> Yet py2exe is not a good solution and I doubt PyInstaller will help
> since my code calls python to invoke scripts. I actually played around with
> py2exe a few years ago without much success.
> >>> However, it will not install on Linux if the name is descriptive. My
> windows problem is actually already fully solved with conda that is able to
> install WxPython correctly as a dependency.
> >>
> >> You didn't look at pyinstaller. Let me quote the homepage:
> >>
> >> "
> >> PyInstaller is a program that converts (packages) Python programs into
> >> stand-alone executables, under Windows, Linux, Mac OS X, Solaris and
> >> AIX. Its main advantages over similar tools are that PyInstaller works
> >> with any version of Python since 2.4, it builds smaller executables
> >> thanks to transparent compression, it is fully multi-platform, and use
> >> the OS support to load the dynamic libraries, thus ensuring full
> >> compatibility.
> >>
> >> The main goal of PyInstaller is to be compatible with 3rd-party
> >> packages out-of-the-box. This means that, with PyInstaller, all the
> >> required tricks to make external packages work are already integrated
> >> within PyInstaller itself so that there is no user intervention
> >> required. You'll never be required to look for tricks in wikis and
> >> apply custom modification to your files or your setup scripts. As an
> >> example, libraries like PyQt, Django or matplotlib are fully
> >> supported, without having to handle plugins or external data files
> >> manually. Check our compatibility list of SupportedPackages for
> >> details.
> >> "
> >>
> >> First paragraph says that pyinstaller will package any python (not
> >> just wxPython) script under all OS.
> >>
> >> Try it.
> >>
> >> Now once again. It will not help you install wxPython. It will help
> >> you make binary executable out of you python script that is ready to
> >> be distributed.
> >>
> >> Thank you.
> >>
> >>>
> >>> My issues are with the WxPython Linux installation that seems to be
> not fully solved. This is where I am asking for help. If someone knows how
> to properly build and package WxPython on Ubuntu using conda and binstar
> then I have a perfect solution for both Linux and windows.
> >>>
> >>> Yet thank you for suggesting these paths.
> >>>
> >>> Jacob
> >>>
> >>>
> >>> Sent from my iPhone
> >>>
> >>> On Jul 5, 2014, at 4:56 PM, Igor Korot <***@gmail.com> wrote:
> >>>
> >>>> Jacob,
> >>>>
> >>>> On Sat, Jul 5, 2014 at 2:36 PM, Jacob Barhak <***@gmail.com>
> wrote:
> >>>>> Sorry Igor,
> >>>>>
> >>>>> You will have to be clearer and point out a solution that will
> specifically fit me. And distributing binaries is not a satisfactory
> solution here.
> >>>>
> >>>> Check out py2exe and pyinstaller.
> >>>> I don't have a reference for the former but pyinstaller can be found
> >>>> at www.pyinstaller.org.
> >>>>
> >>>> Now my employer says that they had issues with py2exe and they use
> pyinstaller,
> >>>> but I don't know about that. You can try both and see if any will
> >>>> satisfy you needs.
> >>>>
> >>>> Thank you.
> >>>>
> >>>>>
> >>>>> My software is pure python and it uses WxPython for GUI. Once I
> write import wx in my code then I cannot give my software to someone else
> without asking them to install WxPython first.
> >>>>>
> >>>>> Python works more or less the same on all platforms, so distributing
> it should be easy. However, once I include WxPython as a dependency I get
> into all sorts of binary problems that are foreign to python.
> >>>>>
> >>>>> Note that most packages in python have installers through pip
> install easy_install or conda that work cross platform. For some reason
> WxPython lacks this.
> >>>>>
> >>>>> Conda is a new tool that resolves many issues with versions and
> installation and can deal with binaries as well as python and in
> combination with binstar can give a solution for the community and for
> WxPython to distribute binaries in a way that will make installation of
> dependencies easier. For example my system uses the Inspyred library. I was
> able to create an Inspyred package in my binstar account. When I install my
> software using conda the system knows to install Inspyred for me without me
> asking. Doing the same for WxPython is much harder. It is far from writing
> python setup.py. There are many hidden dependencies there. Something in
> WxPython makes it much harder and therefore an expert should do this.
> Fortunately using binstar and conda is not difficult, so an expert can
> easily do that. And someone actually did that, yet it needs some fine
> tuning. Is there an expert who can resolve this on this list?
> >>>>>
> >>>>> I hope there is.
> >>>>>
> >>>>> Jacob
> >>>>>
> >>>>> Sent from my iPhone
> >>>>>
> >>>>> On Jul 5, 2014, at 4:02 PM, Igor Korot <***@gmail.com> wrote:
> >>>>>
> >>>>>> Hi, Jacob.
> >>>>>>
> >>>>>> On Sat, Jul 5, 2014 at 1:32 PM, Jacob Barhak <
> ***@gmail.com> wrote:
> >>>>>>> Thanks Vadim,
> >>>>>>>
> >>>>>>> Your willingness to help is nice. However, the issue is much
> bigger. I am stuck with the Linux issue for many months now.
> >>>>>>
> >>>>>> Why you users needs to install wxPython?
> >>>>>> All you need to do is to install it on you machine.
> >>>>>>
> >>>>>> Then you will develop you software and when its ready you will make
> a
> >>>>>> binary executable from it and distribute this binary among the
> users.
> >>>>>>
> >>>>>> Search the web. There are many solutions to make the binary from
> >>>>>> python/wxPython.
> >>>>>>
> >>>>>> Thank you.
> >>>>>>
> >>>>>>>
> >>>>>>> For example, the link you sent me contains out of date
> documentation. If you go through the build instructions it links to you
> will find out that they don't match the last version. When I needed to
> build Wxpython 3.0 a few month ago I needed to use a patch that was not
> documented anywhere but this mailing list. I was eventually successful to
> some degree yet if I want my application to depend on WxPython I cannot
> leave this complexity to the user.
> >>>>>>>
> >>>>>>> Just to explain, my potential user may not know what python is.
> And some have trouble locating the command prompt. Running python setup.py
> in the correct directory may be too demanding to ask from such a user.
> Therefore if my application uses WxPython I must have a simple way to
> install it for the user with my application.
> >>>>>>>
> >>>>>>> The fact that you are willing to help me solve problems is
> comforting, yet it helps only me, not my potential users. Think about it,
> for each developer there are multiple users. If the developer cannot
> package the solution for the users then you will have to serve them all.
> >>>>>>>
> >>>>>>> However, if you can package the solution in a way that can be
> forwarded to others, you have a good solution - which will attract users.
> >>>>>>>
> >>>>>>> The conda solution works on Windows. I can install my app through
> a conda command in a system without WxPython and my app works great after
> conda detects WxPython as a dependency and installs the necessary binaries.
> The user does not know what happened and does not need to seek help through
> this list.
> >>>>>>>
> >>>>>>> However, I cannot get the same thing to work on Ununtu. Either the
> system breaks on GLib_C or a different WxPython version seems to behave
> funny - depending on binaries used - see my last post.
> >>>>>>>
> >>>>>>> My question is, how hard it is to create a set of binaries that
> will work on a barebones Ubuntu installation and package these as an
> official WxPython install through conda?
> >>>>>>>
> >>>>>>> Do you need a different set of binaries for each Linux
> distribution? Even if so, the process of creating those can be automated.
> >>>>>>>
> >>>>>>> The guys from Continuum Analytics have done a big stride forward
> with conda in this regard. Windows is well covered and Linux is half
> working. Can a WxPython expert help finish the job and make it work fully?
> Creating a conda package is relatively easy, can this be the method to
> install all binaries?
> >>>>>>>
> >>>>>>> This is what I am aiming at. I hope someone can help here.
> >>>>>>>
> >>>>>>> Jacob
> >>>>>>>
> >>>>>>>
> >>>>>>> Sent from my iPhone
> >>>>>>>
> >>>>>>> On Jul 5, 2014, at 7:22 AM, Vadim Zeitlin <***@wxwidgets.org>
> wrote:
> >>>>>>>
> >>>>>>>> On Fri, 4 Jul 2014 14:46:31 -0700 (PDT) Jacob Barhak wrote:
> >>>>>>>>
> >>>>>>>> JB> Ubuntu 14.04 LTS is out. The synaptic package manager does not
> >>>>>>>> JB> show wxpython 3.0 - it has 2.8. Did I not see it, or perhaps
> it is not
> >>>>>>>> JB> there yet?
> >>>>>>>>
> >>>>>>>> I do see wxGTK 3.0 in it (
> http://packages.ubuntu.com/trusty/libwxgtk3.0-0)
> >>>>>>>> but wxPython seems to be stuck at 2.8 (even in Utopic). This is
> >>>>>>>> unfortunate, but there is really not much we can do about it.
> >>>>>>>>
> >>>>>>>> JB> However, I am still stuck with the inability to install
> wxpython seamlessly
> >>>>>>>> JB> for a user different than me on Ubuntu. It seems just too
> complex - even
> >>>>>>>> JB> for a developer.
> >>>>>>>>
> >>>>>>>> AFAIK it's just a matter of running "setup.py install" (see
> >>>>>>>> http://wiki.wxpython.org/How%20to%20install%20wxPython for more
> details).
> >>>>>>>> Of course, it's possible that something is broken and you ran
> into some
> >>>>>>>> problem while doing it, but we'd really need to know what it was
> in order
> >>>>>>>> to be able to help you.
> >>>>>>>>
> >>>>>>>> JB> The installation problem has been open for years and now
> there are tools
> >>>>>>>> JB> that can help close this for good.
> >>>>>>>>
> >>>>>>>> Most people strongly prefer to use distribution package manager
> for
> >>>>>>>> installing everything, so I'm really not sure if this N+1-st
> solution is
> >>>>>>>> going to be as final as you think. In any case, we can only try
> to make
> >>>>>>>> building things from source as simple as possible and IMHO they
> are quite
> >>>>>>>> straightforward for wxPython already (and definitely are for
> wxGTK itself).
> >>>>>>>> If you have any problems with building from source, please post
> here.
> >>>>>>>> Unfortunately I can't promise to help with anything else.
> >>>>>>>>
> >>>>>>>> Regards,
> >>>>>>>> VZ
> >>>>>>>>
> >>>>>>>> --
> >>>>>>>> TT-Solutions: wxWidgets consultancy and technical support
> >>>>>>>> http://www.tt-solutions.com/
> >>>>>>>
> >>>>>>> --
> >>>>>>> Please read http://www.wxwidgets.org/support/mlhowto.htm before
> posting.
> >>>>>>>
> >>>>>>> To unsubscribe, send email to
> wx-users+***@googlegroups.com
> >>>>>>> or visit http://groups.google.com/group/wx-users
> >>>>>>
> >>>>>> --
> >>>>>> Please read http://www.wxwidgets.org/support/mlhowto.htm before
> posting.
> >>>>>>
> >>>>>> To unsubscribe, send email to wx-users+***@googlegroups.com
> >>>>>> or visit http://groups.google.com/group/wx-users
> >>>>>
> >>>>> --
> >>>>> Please read http://www.wxwidgets.org/support/mlhowto.htm before
> posting.
> >>>>>
> >>>>> To unsubscribe, send email to wx-users+***@googlegroups.com
> >>>>> or visit http://groups.google.com/group/wx-users
> >>>>
> >>>> --
> >>>> Please read http://www.wxwidgets.org/support/mlhowto.htm before
> posting.
> >>>>
> >>>> To unsubscribe, send email to wx-users+***@googlegroups.com
> >>>> or visit http://groups.google.com/group/wx-users
> >>>
> >>> --
> >>> Please read http://www.wxwidgets.org/support/mlhowto.htm before
> posting.
> >>>
> >>> To unsubscribe, send email to wx-users+***@googlegroups.com
> >>> or visit http://groups.google.com/group/wx-users
> >>
> >> --
> >> Please read http://www.wxwidgets.org/support/mlhowto.htm before
> posting.
> >>
> >> To unsubscribe, send email to wx-users+***@googlegroups.com
> >> or visit http://groups.google.com/group/wx-users
> >
> > --
> > Please read http://www.wxwidgets.org/support/mlhowto.htm before posting.
> >
> > To unsubscribe, send email to wx-users+***@googlegroups.com
> > or visit http://groups.google.com/group/wx-users
>
> --
> Please read http://www.wxwidgets.org/support/mlhowto.htm before posting.
>
> To unsubscribe, send email to wx-users+***@googlegroups.com
> or visit http://groups.google.com/group/wx-users
>
--
Please read http://www.wxwidgets.org/support/mlhowto.htm before posting.
To unsubscribe, send email to wx-users+***@googlegroups.com
or visit http://groups.google.com/group/wx-users