Gr1N / EasyPaint

Yet another painting software
MIT License
88 stars 42 forks source link

Provide Executable Binary for Microsoft Windows in Qt-Apps.org #129

Open RyanBram opened 11 years ago

RyanBram commented 11 years ago

Hi.

I like EasyPaint application. It is simple and stable. Unfortunately, my times for Linux is much lesser than my times for Microsoft Windows. And I have no idea how to compile the source code by myself. By providing binary executable for Windows, I just think it will be easier to gain more attention from user as most user are using Windows.

Regards.

bruceoutdoors commented 11 years ago

I personally wouldn't recommend EasyPaint for Windows, since there are better alternatives(like paint.NET) and since the author design it to work with linux. HOWEVER, I've got it running happily on windows 7 32bit, and it's really stable(at least there's no difference that I am aware of):

http://www.mediafire.com/download/bhmvf3li2af2u2m/EasyPaint(Qt_4)_0.1.zip http://www.mediafire.com/download/2x2kq06dez76959/EasyPaint(Qt_5)_0.1.zip

no installer sry(cause I didn't went to learn how to do it). Just pull the files out and create a shortcut urself (:

RyanBram commented 11 years ago

Thanks for providing an executable for Windows user even though you personally didn't agree about Windows executable binary idea.

IMHO, the advantage of choosing Qt as framework is to make an application portable. Yeah, maybe currently paint.NET is better than EasyPaint, but who knows if sometimes EasyPaint will evolved to full featured raster image creator as many developers and user want to join the project and share nice ideas. v-{^_^}

Regards.

bruceoutdoors commented 11 years ago

Another reason is that The author hasn't really been actively developing EasyPaint anymore. If you look at the commit history the hype ended last year November, and I'm not sure if he opened up to others to take over the project for him.

Having said that its still great work. (:

RyanBram commented 11 years ago

I downloaded your Windows binary and try it to my computer. It seems your binary have DirectX (Direct3D) dependencies. Even though I can just install DirectX it makes EasyPaint not portable enough in Windows. (Because I intend to provide it in PortableApps.org

Is the dependency optional or necessary? Because AFAIK Qt dependency on DirectX is optional.

http://qt-project.org/forums/viewthread/23210/#108104

bruceoutdoors commented 11 years ago

uh... I didn't create EasyPaint... I just ported it from Qt 4 to Qt 5. However on getting it to work in windows itself, there were basically zero modifications to the code to make it build. I didn't went to figure out why it need all those dependencies...

bruceoutdoors commented 11 years ago

Hey! Could you test the Qt 4 version of the windows binary? It shocks me how much fewer dependencies it needs. It's 3 times smaller!

http://www.mediafire.com/download/bhmvf3li2af2u2m/EasyPaint(Qt_4)_0.1.zip

Gr1N commented 11 years ago

Hi to all!

Thank for your activity. At this weekend I merge all change for Qt5 to master, create version 0.1.1 and build new binaries (for WIn systems to =) ).

bruceoutdoors commented 11 years ago

Wow! That's good news! :dancer:

RyanBram commented 11 years ago

Hi, Lee. I tested your Qt4 version of EasyPaint and it worked seamlessly. Your Qt5 version didn't work even after installed DirectX. (Something about runtime error message appear).

Because of that I only created an installer based on your Qt4 version using this software . Hope this work {-_^}

Download: EasyPaint-0.1.0.win32-qt4.exe

Hi Niki, Nice to hear that you are still active in this project.

Regards.

bruceoutdoors commented 11 years ago

Wow. You just packaged it nicely for everyone (:

Maybe minus the "-qt4" part?... If it doesn't make a difference it's not worth showing, otherwise ppl might get confused. Personal opinion. Aside that it looks really cool!! I'd likely use BIM myself in the future. Thanks for the intro!

And it would seem to me this issue is closed! :+1:

Gr1N commented 11 years ago

Guys, I'm haven't any development env on my win system, can you help me with win binaries based on new tag 0.1.1 https://github.com/Gr1N/EasyPaint/tags? And I publish its on qt-apps.org.

RyanBram commented 11 years ago

Okay Lee, It seems currently is your job now. v{-_^}. You can use my module as template for BIM if you want, so you only should modify the change.

Times for trying new software. :+1:

Gr1N commented 11 years ago

Nice template for BIM, I think you should send me pull request with this file to repo/distr/windows =)

bruceoutdoors commented 11 years ago

Ryan, you should definitely send the template. Would mark you as a contributor of this project! :+1:

Anyhow good morning everyone, and here is EasyPaint 0.1.1 for windows. Built in windows 7 32bit, Qt 4 MinGW:

http://www.mediafire.com/download/u90t77pdmtzzw5l/EasyPaint-0.1.1-win32.zip

And given the effort Ryan has taken to figure out how to create the installer(and given that I'm currently lazy to figure it out myself)... the honor is rightfully goes...

update: corrected about dialog

bruceoutdoors commented 11 years ago

...that's odd. The "about EasyPaint" dialog still says it's 0.1, and that it's done in 2012

update: nvm... I just opened up the code and update it. Link updated.

bruceoutdoors commented 11 years ago

Just in case you're reading from email, I changed the about dialog to the proper version and year before uploading the compiled binary again...

RyanBram commented 11 years ago

Hi Bruce, Could you tell me what step that you do for building application for Windows? Which software or dependencies that I need to install? Which script that I need to execute

Because github doesn't allow me to commit binary files. Eventhough I successful creating an installer, but I still cannot commit the script to Github. Or if I still want to commit the script, the script will become useless as it cannot find the binary files that it needed.

If BIM too complicated for you, please try InnoSetup. It has wizard that will make you easier for creating an installer.

I figure out how to build binary, you figure out how to make installer (distribution). I wonder who will finish the task first. :)

Download EasyPaint-0.1.1-win32.exe

Thanks.

RyanBram commented 11 years ago

Hi Lee, After some searching from the internet, I found this topic which talking about Qt5 dependencies problem that I found. Hope EasyPaint developers could figure it out.

bruceoutdoors commented 11 years ago

Ryan, well... github is not a place you upload binary files. It's a place for source code?... the author just wants the installer module... thing... or script... which you already provided the link.

I don't know what you're trying to do...? Why are you building EasyPaint when I already built it, and that you already created the installer for it?

And I don't know which part of the forum link you provided solved the dependencies problem. If you're referring to a static build, my guess is the executable will be really BIG, and that you need to buy a commercial license from Digia.

RyanBram commented 11 years ago

Sorry Lee, I doesn't mean to take offer your job. If you want to look at debian distribution of EasyPaint, it contains _makedeb.sh which will do automation process: from compiling source code into Linux binary, until packaging the binary to .deb packages. All of the job can be done just executing one script that can be done by everyone.

I just want to do something similar like this for Windows. Instead of making two people handling such a small task, one for compiling the executable and the other for packaging it, it will be far more efficient if we can do it automatically. One of the reason for me in changing installer packager from BIM to InnoSetup is because InnoSetup module support for command line processing, while BIM should be launched from the GUI.

About link that I mentioned, I didn't mean about statically linking. I just want to say that Qt5 seems complicated enough to be developed in Windows environment than Qt4 by default. It can be as simple as Qt4, but it require some manual handling.

After all it just my point of view as user. I have no capability in programming. Just have some little knowledge about scripting and about how computer software works that come from my interest in it.

Regards :+1:

bruceoutdoors commented 11 years ago

Lol. I hope I didn't sound offended in my previous post. Frankly i couldnt care less who's doing what as long as it gets done. I was trying to figure out what you're trying to do. You don't need freaky programming skills to contribute to a project. In fact my knowledge of programming at this point doesn't even qualify for a job yet.

Anyhow I get what you mean. You want to hit 2 birds with one stone. You wanna have it build and package at the same time, you wanna create like some *.bat file in windows that does that.

Good luck with that then (:

if you're keen on getting it to work properly with Qt5 I give you my full support :D I have Qt 5 in my environment paths so I dont concern myself with dependencies. The 110Kb binary file just runs seemingly on its own.

RyanBram commented 11 years ago

That's exactly what I want. {^_^}

The purpose for binary distribution is for providing an end user an easiest method for getting his software work on his own computer. This is what I want to figure out about Qt 5, because an end user shouldn't need to installing the whole Qt 5 Framework only to make small application such as EasyPaint running on their computer.

This is something that I want to ask to someone which have more experience about how to make EasyPaint running happily in Windows environment without needing for dependencies that itself doesn't use. Your Qt 4 version of EasyPaint is working very well in my computer, but not the Qt 5 version. I won't bother for creating a long list of script with a bunch of dependencies as long as I know which part of the libraries that EasyPaint needed and which part that didn't.

I am curious, how you could compile the source code. By processing easypaint.pro with Qt Creator GUI? Or with command line interface? Can you show me the way for doing it without opening Qt Creator GUI. I tried to visting several website or forum for gaining information and tried some command such as qmake... bla, bla, bla and then mingw32-make... bla, bla, bla, but still cannot make it to work. By using Qt Creator, I just push the build button, taking a cup of coffee, then everything will be done. But it's not the way that I want. I want to compiling and packaging automatically with just executing one script.

bruceoutdoors commented 11 years ago

For Qt 5 thing: what you ask of can be done by

  1. A static build, which requires a commercial Qt license
  2. Having expect every user that uses your program to install Qt 5 and set environments path to the DLL directory.
  3. Or asking Digia to create smth like JRE(java runtime environment) but maybe call it QRE that installs just the DLLs and set environment paths directly

Well, why then isn't this a problem in Linux? Because the Qt libraries is automatically installed to a folder where all programs can have universal access to. Running EasyPaint on Linux simple requires Qt to be installed, and a single executable run on its own. Don't expect that this will happen in windows.

I just compiled with QtCreator. I'm not in interested to write scripts to do that when I just open and build. And you don't have to type qmake bla bla bla because qmake is likely already ran when the author post the code. You would navigate to the project directory and go mingw32-make.

Now, the terminal will say such a command does not exist if you do not have MinGW installed and set as your environment path.

bruceoutdoors commented 11 years ago

My bad. You have to run qmake(I tend to forget when QtC does it for me :D), after making sure Qt is in your paths if course.

bruceoutdoors commented 11 years ago

Just qmake. No bla bla bla.