Cross platform help

This forum is reserved for everything you want to talk about. It could be about programming, opinions, open source programs, development in general, or just cool stuff to share!
Post Reply
freeze
Earned a small fee
Earned a small fee
Posts: 17
Joined: Thu Dec 15, 2011 4:57 am

Cross platform help

Post by freeze »

I am a practicing anesthesiologist, not a programmer. However, I find programming fun, and wrote a little program as
a project to teach myself how to use wxWidgets.
It turns out to be useful: it provides information and calculations that are helpful in the anesthetic management of
obese patients (a growing problem). In order to gauge its usefulness and to improve it, I would like to make this app
available to the people I work with so they can try it out. The problem is that it is compiled for Windows, and many
people use the Mac. Even for those using Windows, dealing with dll files can be an issue.
Realistically, I will not ever have time to learn to compile for a Mac. So: is there anyone who is willing to compile this little
program for the Mac (and maybe for Windows without dll depndency)?
The build info is as follows:

wxWidgets 2.8.12-Windows-Unicode build
Code::Blocks 10.05 C++ project
GNU GCC compiler
wxSmith configuration

I have attached the source code.
Thank you
Attachments
CalcsSource2-0.zip
(1.46 MiB) Downloaded 189 times
User avatar
eranon
Can't get richer than this
Can't get richer than this
Posts: 867
Joined: Sun May 13, 2012 11:42 pm
Location: France
Contact:

Re: Cross platform help

Post by eranon »

To compile with WxWidgets as static lib, you just have to rebuilt wxWidgets indicating SHARED=0. If you used wxWidgets binaries until now, know that it's very easy to built-it by yourself : just donwload the sources, extract them in a directory (say c:\wxWidgets), then put something like this (below) in a batch file (say wxbuild.bat) and double-click on it :

Code: Select all

@echo off
cd /d c:\wxWidgets\build\msw
mingw32-make -f makefile.gcc MONOLITHIC=0 SHARED=0 UNICODE=1 BUILD=release
mingw32-make -f makefile.gcc MONOLITHIC=1 SHARED=0 UNICODE=1 BUILD=release
pause
All RELEASE versions of wxWidgets STATIC libs (the big monolithic one and the individual parts) will be built with default options (of course, you can add ones for compiler and change any wxWidgets ones directly in setup.h). After that, you'll have to fine tune the "Build Options" of your project (or create a new target) to build your own project against these new STATIC libs.

About Mac, I can't help you.

--
Edit : about compile options, here are my own, but it's personal :

Code: Select all

mingw32-make -f makefile.gcc MONOLITHIC=0 SHARED=0 UNICODE=1 BUILD=release CFLAGS="-O2 -Os -fno-keep-inline-dllexport" CXXFLAGS="-O2 -Os -fno-keep-inline-dllexport"
The " -fno-keep-inline-dllexport" is just to not keep the .o files on disk and the "-O2 -Os" are about optimization (here by size).
[Ind. dev. - wxWidgets 3.0/3.1 under "Win 7 64-bit, TDM64-GCC" + "OS X 10.9, LLVM Clang"]
freeze
Earned a small fee
Earned a small fee
Posts: 17
Joined: Thu Dec 15, 2011 4:57 am

Re: Cross platform help

Post by freeze »

Thanks for the reply and the help.

To be clear-
What I want: A compiled working program for the MAC, without my having to do it myself.
What you get: This is ideal for anyone who wants to practice cross-platform skills
using a small, functional program coded using wxWidgets as a Code::Blocks project.

It may also help patients who undergo anesthesia and surgery.

Any takers?
Auria
Site Admin
Site Admin
Posts: 6695
Joined: Thu Sep 28, 2006 12:23 am
Contact:

Re: Cross platform help

Post by Auria »

The problem is that anyone who says "yes I will do it" is essentially signing up, not only to build it, but also to support it and resolve platform-specific issues. I doubt you will find many takers, but let's see ;)
"Keyboard not detected. Press F1 to continue"
-- Windows
freeze
Earned a small fee
Earned a small fee
Posts: 17
Joined: Thu Dec 15, 2011 4:57 am

Re: Cross platform help

Post by freeze »

Thank you. I understand.

I promise never to expect any ongoing support.
(Eventually I will learn to compile for a MAC as well as Windows. In fact, this is one reason I have
been putting effort into using wxWindows and Code::Blocks.)
User avatar
eranon
Can't get richer than this
Can't get richer than this
Posts: 867
Joined: Sun May 13, 2012 11:42 pm
Location: France
Contact:

Re: Cross platform help

Post by eranon »

As Auria says, freeze, the problem is just about level of engagement, since we have all our projects (each being, potentially, important) and work/job. On my side, for example, I'm an independent developer : so, it means I live from software development and have the *obligation* to stay concentrated on my goals (nobody will pay me at the end of the month, but me)... This said, there's a certain latitude from this drastic point of view (I often engaged myself in no-profit projects : open-source, freeware and so on).

To be back on your specific project, unfortunately, on my side, I can't do anything about Mac : I'm going to cross-platform since some weeks (2-3 months, not full time, since I'm involved in projects outside C++ too) only and I'm not at the stage where I have to "worry" about it (it will come)... And under Windows, I've fully switched to wxWidgets 2.9.3 (so, I can't build against 2.8.x static w/o to re-install and rebuild : not a simple click help).

Hmmm, thinking about the way you came, I wonder (just my opinion) if a better approach shoudn't be to create a webpage around your project, then "officially" ask for person to join the team (even if the team is just you until now - I know this situation)... This because people don't like to help behind the stage. An help is something valuable and everyone need recognition from what they do. Say you'll credit the web designer, the translators, the cross-platform builders, the help writer, etc... And sure you'll obtain more replies ! From the point you ask help, you're not alone but enter in the spirit to build and federate a TEAM (everyone being necessary, even if the core developer is the main piece of the puzzle).

Good luck

Eric
[Ind. dev. - wxWidgets 3.0/3.1 under "Win 7 64-bit, TDM64-GCC" + "OS X 10.9, LLVM Clang"]
Post Reply