Mac / Linux users wanted

pixet

Member
Licensed User
Longtime User
I use B4A, B4j, B4i and B4R with Parallel 15, on MAcBook Pro and Catalina, and on MacMini with Parallel 14 and Mojave. The solution I have chosen is still to install a version of Windows7 (on MacBookPro) and Win10 (on Macmini) with Parallel virtualization, in the virtual machine with Linux / Debian I have not installed B4X at the moment. In the current solutions I have no problems whatsoever, in each virtual machine I obviously installed the appropriate cross-compiler. In the case of B4i on Parallel, x-code is installed and operational in MAC OSX environment.
While for the Android and Java part obviously on Windows virtual machines, initially I had some hardware sharing problems but then with a careful evaluation of the configuration I came to a perfect solution. Parallel acquires the peripherals especially the USB in an exclusive way so as soon as you connect something on USB ports, it offers a choice for the exclusive use of the new peripheral just connected.
 

vecino

Well-Known Member
Licensed User
Longtime User
I use linux. To run B4X I do it with virtualbox.
I have no problem with that.
I would like to be able to run B4X without virtualbox, yes, but I don't think that's very easy.
 

LA3QMA

Member
Licensed User
Longtime User
I'm using Linux as a primary OS.
wine and mono are probably not a good solution.

Anyhow i have use Oracle VirtualBox for several years. Depending on how you install windows it's easy to use and maintain. You can use RDP/VNC or open a window or full screen OS and also share files between Linux/Windows. Also networking etc
For this i think you have to buy a windows lisence.

But you could also use https://www.vagrantup.com/

This is a quick "gateway" to use VirtualBox, HyperV, VMware etc and there are several ready to use windows development operating system versions from MS
You can start it just like VirtualBox as a window, full screen or use RDP/VNC

Using Vagrant you can distribute/maintain a small provisioning file setting up i.e B4X etc.

Maybe we should make a list of possible solutions and create a group of testers.
 

avalle

Active Member
Licensed User
Longtime User
I'm using a MacBook Pro with VMware Fusion and a Windows 10 VM. Both B4A and B4J work like charme.
 

LWGShane

Well-Known Member
Licensed User
Longtime User
A native implementation is not planned in the near future.

I'm sensing that the trouble with a cross-platform solution is the UI (as the CLI compilers can be run via Mono), and if that's the case then why not use something like AvalonStudio?
 

LA3QMA

Member
Licensed User
Longtime User
https://code.visualstudio.com/ if going for cross-platform is also a variant

If the compile tools etc is CLI sublime is easily adapted with build tools etc.

Seems like people are using VMware and VirtualBox with B4X.

So do i and this works but native IDE would be best but this requires more work and probably more maintenance for new versions etc.
I think a striped down windows version running as a VM is a good start.
 

fabian

Member
Licensed User
Longtime User
I have been using linux as the main operating system for 10 years and I program with b4x on a virtualized windows 7 with qemu / kvm and virtual manager. It was the best option of all the ones I tried: vmware, virtualbox) and everything works as if it were working in a non-virtualized windows.
 

drponciano

Member
Licensed User
Longtime User
I want to make it easier to use B4X with Macs and Linux, with the current Windows IDE.
I wasn't able to get good enough results with Crossover.
I'm testing it with Parallels and it looks promising. It is not cheap, especially as you also need to purchase a Windows license.

If you already use B4X with Parallel then please share your experience.
If you are interested in such solution then please post here as well.
I've been using B4X on my Macs with Parallels for many years now. I'v have had no problems with that. I have Windows 7, 10 and Linux in my macs and very happy with it without any real issues with network, database and graphics.
 

eps

Expert
Licensed User
Longtime User
I use VMWare Fusion and can run Win7 and Win10 (even XP and Windows Server if I want to) on my MacBook
 

chams

Member
Licensed User
Longtime User
I tried to install B4A on Ubuntu20.04 with wine (5.0.3) and winetricks.
Installation of .Net with winetricks was a little difficult.
After that, i had to copy the windows versions (WOW64) and x64 of robocopy.exe. (Now, they are parts of the Windows system, and the redistributable files are no more available.
At least, i have encountered problems with adb.exe environment variables
message : (Installation sur le dispositif. Error
adb.exe F 11-30 22:06:21 232 233 sysdeps_win32.cpp:2743] _wenviron is not set, did you link with -municode?). I have no time to fix that, and the editor interface sometime disappear, not refresh properly.
Capture d’écran de 2020-11-30 22-43-01.png



At this point, it's easier to use Virtualbox or Windows.
A new virtualization (not tested) : https://github.com/Fmstrat/winapps
If someone have feed-back on it ?
 

annitb

Member
Licensed User
Longtime User
the b4a version in Wine is old...it should be fairly easy to fix...it looks like an intentional run on B4A by Wine ( more importantly by the .NET framework ) so that it doesn't work....one in the know should find it easy. yes, to summarise, i think that simply getting .net to work should get B4A to work in Wine. that is a very elegant prospect...what is also important is that the adb link and pnp combo absolutely renders around 60% of all phones completely unable to do development with...that too for no reason that's important enough...it has to be a multilink access to the phone...adb wired, adb wireless, wifi direct, ssh, the whole shebang as a multilink access so that even if the usb and pnp are beep dancing, all development must go on seamlessly...also one would be well served pushing eatmydata for android to run all apps as that does not require the FSYNC patch for the linux to ensure that all syncs don't freeze the OS...swap is by no means a solved problem...including compressed swap...on both linux and android...my haveged works for both linux and android....https://github.com/Openand-I/haveged...NIX has a good update format that doesn't break...all SDCards should be BTRFS or JFS ( Case Sensitive )...Samsung is successful because of F2FS and entropy...Android doesn't yet have entropy although my alpha experimental app http://waut.ch showcases the problem...Android ext4 is problematic as it doesn't do an fsck...btrfs takes auto backups of files...modular kernel is the order of the day for android..check out Sunxi tablets...if the module list gets too big, devices should have a GUID folder hierarchy all linked so that they enter the folder using their product category GUID rather than each individual module...if ubuntu can run one binary on 150000 different laptops and desktops then it's environmentally unfriendly to run a binary for each ( yes, once the binary starts working on all 15000 models of Android Ones ) one can do a random relocation changes in the binary during build...moral of the story, one binary kernel for at least 5000 different Android One models of phones under $50/- is good for the environment...for all users trying to get started on linux GUI based development, the live USB bootable disk allows to boot and work off the USB drive and conduct activities like linux adb etc...and then simply reboot into windows...
 
Last edited:

Tadeu Botelho

Member
Licensed User
Longtime User
I use B4X in a Windows 7 in VirtualBox. It works very well.

Quanto ao emulador, uso
I use B4X in a Windows 7 in VirtualBox. It works very well.

As for the emulator, I use GenyMotion directly under Linux. It's a very good emulator.

diretamente no Linux. É um emulador muito bom.


I have been using linux for 14 years as my main operating system. Today I use native ubuntu for productivity increase reasons. My systems and emulators are all natively installed on ubuntu. I really like VirtualBox to run my various virtual machines, I've been using it for many years and I've already tested other solutions like VirtualPC, VMWare and Parallels. I honestly don't see the need to pay for Parallels or VMWare because VirtualBox offers more than I could use in terms of features. I'm installing the B4X environment today and I chose to use a windows virtual machine for that. My only doubt would be in relation to android emulators, currently I use emulators provided natively by AVD Manager provided by AndroidStudio, I use it to test android APK compiled in IONIC and it works very well like that.
Therefore, I would like to run the ANdroid APK compilation with B4X on the windows virtual machine communicating with the emulated android via AVD on my native linux(ubuntu).
I don't know if that would be possible, but it would be perfect due to the performance gain at the hardware level.
But since you said that you use GenyMotion from Linux, it gave me hope knowing that you've already managed to do what I intend to do :)
If I can't get it my way, I'll try GenyMotion the way you said you're doing.
 

Martin Larsen

Active Member
Licensed User
Longtime User
Therefore, I would like to run the ANdroid APK compilation with B4X on the windows virtual machine communicating with the emulated android via AVD on my native linux(ubuntu).
I don't know if that would be possible, but it would be perfect due to the performance gain at the hardware level.

It should work. Just use a bridged network so that the VM will get its own IP. Then you use that IP when debugging for B4A.

But since you said that you use GenyMotion from Linux, it gave me hope knowing that you've already managed to do what I intend to do

You should really give Genymotion a try. It's very fast and has built-in support for Google Play Services. That means that you can install apps from Google Play which is very convenient.
 

EnriqueGonzalez

Well-Known Member
Licensed User
Longtime User
I have been using linux for 14 years as my main operating system. Today I use native ubuntu for productivity increase reasons. My systems and emulators are all natively installed on ubuntu. I really like VirtualBox to run my various virtual machines, I've been using it for many years and I've already tested other solutions like VirtualPC, VMWare and Parallels. I honestly don't see the need to pay for Parallels or VMWare because VirtualBox offers more than I could use in terms of features. I'm installing the B4X environment today and I chose to use a windows virtual machine for that. My only doubt would be in relation to android emulators, currently I use emulators provided natively by AVD Manager provided by AndroidStudio, I use it to test android APK compiled in IONIC and it works very well like that.
Therefore, I would like to run the ANdroid APK compilation with B4X on the windows virtual machine communicating with the emulated android via AVD on my native linux(ubuntu).
I don't know if that would be possible, but it would be perfect due to the performance gain at the hardware level.
But since you said that you use GenyMotion from Linux, it gave me hope knowing that you've already managed to do what I intend to do :)
If I can't get it my way, I'll try GenyMotion the way you said you're doing.

hi! i am currently using b4a on linux natively without virtualbox, it allows me to connect to my device and debug via usb.
you can either follow this guide:
or use crossover linux (i am using this option), the only extra part i had to do was to change adb version on both linux and sdk tools to 1.0.40

i am pretty sure that if an emulator runs on linux you will be able to connect without any issue.
 

Hypnos

Active Member
Licensed User
Longtime User
Anyone try B4X in parallels or UTM with the new M1 iMac? What is the result and is it good enough now?
My PC was broken down and I want to purchase a new M1 iMac basic model instead of PC but I'm worry it will cause problem when I using B4X.

@Erel, do you have a good solution now for the mac user?

Thanks!
 

aeric

Expert
Licensed User
Longtime User
Anyone try B4X in parallels or UTM with the new M1 iMac? What is the result and is it good enough now?
My PC was broken down and I want to purchase a new M1 iMac basic model instead of PC but I'm worry it will cause problem when I using B4X.

@Erel, do you have a good solution now for the mac user?

Thanks!
 
Top