I have to relativstem a misunderstanding of my tränenreichere: I am not giving out to beta testers!! Without testing in our test department!! Because I need to test before building releases. For this I am building up a logging System for the tester editions cause we have to test on several platforms like raspberry pi, our own arm platform, windows, Linux and six. Therefore I brought up a strict cross platform programming system. All libraries used are to collect for each is. Worst case would be that it crashes at start. Normal is: no platform depending errors. Software itself we are debugging with the development. I don’t think that citizen developers have this kind of infrastructure at all. But giving out software to betatesters would never be my business.
I dont think, its a good idea to develop, test, deploy SW, where you dont have the real Hardware and OS.
Today a lot of things are possible via virtualisation, but that is still not the same as having the target HW and OS:
If you dont want to buy new hardware, why not trying used or refurbished one.
Thats why I hsve a test department in my company. Exactly that’s why I haven’t been haapy cause of the leak of Mac compiling. We aren’t citizen developers we are developing in this wise c,c++,Ruby,Delphi,Java,Python and not xojo because you can not compile it from the build platform. Has nothing to do with release, has to do with build!!! And how doing it on pi and later pi 64 bit??? Not possible at all. There is the need of and that’s promised and that’s it. I am paying lots of money for and so I want to have what I paid. Not hard to understand
Money: to earn a lot of money, you have to spent much more money…
Btw: crossplatform : what ever it will be… its not only about coding, its also about usability.
Im now 30 years in this bus, and Im still dreaming about having a one box fits for all.
But: in times of connected living and driving: does it make sense to do everything with one tool ?
Some years ago I did big things with J2EE. So my 1st idea was to do the same for my infrastructure. Everything has to be Web.
The funny side of it: as we are in a huge company network I do it on a fat client base, and the data is pushed via cronjob as static pages.
It took me a long time, to do it simple and bulletproof…
And crossplatform : if you are hungry you can have simple food or take the time to have a real meal which makes also your soul happy…
See also Write once compile many
The issue is that we rely upon LLVM’s linker and they are not yet done updating it to build for Mac from Windows. We are working on it now ourselves but like so many things we have to prioritize. But one way or the other, we will get there.
That is the point: that something is going forward. We - as your users and customers - know nothing about the priorizing, we see only what is not working. And there was never a discussion about that. But we all have to be open for it. Thanks for the answer, makes me to see that something is changing in future.
We also update the roadmap about once a month. We don’t list building Mac apps from Windows because we view that as a bug, not a feature.
We do schedule bugs for specific releases but we don’t publish that information as we can’t be sure a particular bug will be fixed in a particular release.
First of all, there are at least two buyers that gave their disappointment a voice over the same topic very recently.
Secondly, the influenced platform is not “just one” – Mac is ok. It are the Windows and Linux users – two of the three supported development platforms – that can run into limitations that would be easy to communicate on the web site.
Thirdly, this is not a temporary limitation. It exists since 64 Bit/LLVM was introduced. The possible fix date is uncertain.
And lastly, every company I know that is somewhat influenced by the “pandemic” measurements has changed their website to inform about supposedly temporary changes. And you really feel you should not add one single sentence to avoid troubles of this kind?
My current project is in php and accesses a MariaDB. I am thinking about redoing the front-end in either .Net or Xojo. I have played with Xojo since it was RealBasic and now i am looking at it again. Lets say i write my Xojo app on my Windows. Can i take that same exact source code and copy it to my Mac, buy another Xojo license and then compile my project natively from my Mac without changing any code?
I suppose you are working on a Desktop application that you want to build for Windows and Mac, right? or this will be a Web application?
If you are thinking of creating Mac/Windows and you have a Desktop license, you don’t need to buy a new license. Your code for Windows will work on Mac and you can compile there. Depending on the code you will not need to change anything but in some cases, you need to fine-tune for differences between Mac and Windows.
Ideally i would like to write it once, and have a windows/mac/linux version. I would buy whatever license is needed. So i can buy 1 license and use it on mac and windows?
Desktop license can be installed on 2 computers, Pro license can be installed on 3 computers. Licenses are per developer.
Look at the license comparison chart linked at the bottom of the Buy page on Xojo:
If you only have a Lite license, you have to select a single OS and can only compile for that OS. If you have a Desktop license, you can compile for macOS, Windows, Linux, and Pi. And the license can be activated on 2 machines instead of 1 like Lite. With the Pro you get access to more targets (iOS, Web, console, etc) and can license on 3 machines at once.
So with the $299 Desktop, yes, my understanding is you can do both Windows and macOS.
That said, while it is true a Windows machine could produce 32-bit macOS programs, the same is not yet true for 64-bit macOS programs. However, the license allows it so when that gets resolved (no ETA date yet) you may be able to again on a Windows machine. But even without that, you can run a Desktop license on a second machine like a cheap used mac mini, or on a cloud based mac you rent for a very short period.
In other words, yes, a Desktop license should let you do it. But currently, Windows is not able to produce 64-bit macOS executables.
OTOH, if your single machine is macOS, it can produce executables for all platforms. However, it is generally recommended you still test on each actual platform, at least if you are distributing beyond a small known user base.
YMMV. I’m just a user too; not an official Xojo spokesperson.
To answer your question:
Yes, you can. But it is affordable that you work it out in a cross platform wise. Folders you can USA with specialfolders. The rest isn’t that difficult. You can install for debugging as long as you want an every platform. To build you’ll need a license. That means: write your sourcecode, do not forget about using special folders instead of native path cause xojo is abstracting this for you and do debugging on each platform. After, build it. From Mac you can build for Mac, windows and Linux, from pc and Linux for the own platform with 64 bit, for the other platform 32 Bit and for ma c you can only build on Mac.
Only if it gets fixed while your license is still active.
Point taken. Though even when that is true, I’m not 100% you can code-sign without macOS. Never had to research it since I do use macOS and App Wrapper.
Thanks for all that info, it sounds like it will do what i need. I have a windows box because at my day job i program in windows all day (and work from home alot). I have real macs and virtualized macs as well. When i am programming at home as a hobby, i use linux so it sounds like Xojo gives me a lot of options. Very good and straight forward information. Thanks!
All of the above are non-official answers, but based on our collective knowledge as users. For official answers, it is based [meant best] to email Xojo directly ( e.g. firstname.lastname@example.org ) but I don’t think they guarantee a response on a weekend.
One more point: last I knew, the reason upgrade pricing is not listed as their website is it is calculated for you when you ask for a quote. I believe it works like this:
- Expiration date remains the same as your existing license
- Number of days until that day is computed
- Difference between what you paid for current license and desired license is determined
- Difference is pro-rated based on the remaining days to expiration
Again, that is not official but true AFAIK and may help you plan. So if / when you ever want to move to a higher license, you are not penalized for not doing it at the time of the initial license.
Edit: Corrected based to best