Skip to main content
Topic: Otter Browser for Windows 10 on ARM32 (porting/building) (Read 4236 times)

Otter Browser for Windows 10 on ARM32 (porting/building)

Hi Otter Browser community, I took my time reading and researching before posting this and we would like some help if possible.

A bunch of us (a community) would love to have Otter Browser for Windows 10 on ARM32, could you provide some help with this?

Years ago Microsoft released the Surface RT laptop running Windows RT (ARM32) but they blocked access to win32 libraries and so, Firefox and Chrome couldn't port their browsers, leaving the platform with Internet Explorer as the only browser. Some years later Windows 10 for ARM appeared (32 bits) and it's a reality for many of us who now have it on our Surface laptops (I have it and works pretty well). But it's limited to both Internet Explorer and Microsoft Edge.

Several of us have been searching ways and testing how to port apps where the source code is available, and there's been some success, but Web Browsers are tricky as they aren't built 100% on just one language and need libraries including graphical interfaces. Besides, despite many of us having diff backgrounds creating software (myself included) not everyone has full c++ experience in this realm porting web browsers and the exploration has been energy and time consuming and a bit frustrating.

One member of the community managed to build Otter Browser for Window on ARM32, that's great and runs pretty well and even supports HTTPS, but there are some challenges:

- No JIT
- Doesn't work with touch screen (touching the screen selects text)
- Some big sites crash
- Youtube or any website including video crashes

I would like to know from you guys who have the experience:

- What would be the best environment to work and build Otter Browser from the source code?
- Destination being Windows 10 on ARM 32 bits?
- Some specifics will be greatly appreciated as diff libraries need specific sources in order to work
- Does anyone already has such environment and could build it?

I'm not being lazy, what I mean here is it wouuld be great to add Otter Browser binaries for Windows on ARM32 from already official contributors who know how to do it, as we have the interest yes, but it's taking us a lot of efforts. If somehow someone from the comunity (Windows 10) manages to come with a better build, then great too and perhaps it could be added to your binaries. But so far only one person managed to build it, but facing those issues. At present time many apps have been successfuly ported, but mostly because they are written entirely on C++ or rely on Microsoft Visual Studio and .Net framework, that sure makes things easier, but web browsers are a diff universe.

Any help will be appreciated. Thanks in advance.

Re: Otter Browser for Windows 10 on ARM32 (porting/building)

Reply #1
I don't think any of the instructions should change for a different architecture, in short see https://github.com/OtterBrowser/otter-browser/blob/b1192d5696c9a07d98bf69dff6cb1c4dcb803f61/INSTALL.md

- No JIT
- Doesn't work with touch screen (touching the screen selects text)
- Some big sites crash
- Youtube or any website including video crashes
Could you check if you're running old or new QtWebKit? That's in About Otter, web backend.

Re: Otter Browser for Windows 10 on ARM32 (porting/building)

Reply #2
I don't think any of the instructions should change for a different architecture, in short see https://github.com/OtterBrowser/otter-browser/blob/b1192d5696c9a07d98bf69dff6cb1c4dcb803f61/INSTALL.md
[...]
Could you check if you're running old or new QtWebKit? That's in About Otter, web backend.
Thanks Frenzie, I have coding background but not in this realm. I'm confused and with some questions but before asking I will read over and over what you suggested and do some testing. Thanks again.

Re: Otter Browser for Windows 10 on ARM32 (porting/building)

Reply #3
Hi Frenzie, my apologies for not answering directly the question you left on the last post. Below is the answer and some additional information.
I don't think any of the instructions should change for a different architecture, in short see https://github.com/OtterBrowser/otter-browser/blob/b1192d5696c9a07d98bf69dff6cb1c4dcb803f61/INSTALL.md
I read the documentation, tried myself but got stuck. I'm not familiar with the many lose ends needed to create the right developing environment for this. Explored CMake but honestly I got lost. On the other hand, one member of the group attempting this does know how to do it, but he is facing some technical difficulties, the latest build behaves the same (no video, crashing, etc).

Could you check if you're running old or new QtWebKit? That's in About Otter, web backend.
Yes. Here it is.




And here attacked is some more information from the "Report" section.

If possible, could you please enlighten me on how Otter handles video?
- based on a library part of Otter?
- or it's forwarded to the host Operative System expecting to be handled by installed codecs?

I guess worst case scenario most of us would adapt to not having video or audio available, but crashing while visiting Facebook would be great to avoid.

Re: Otter Browser for Windows 10 on ARM32 (porting/building)

Reply #4
Added: the port for Windows 10 for ARM32 was built using LLVM-MinGW, I don't know if this helps or if it means some limitations.

Re: Otter Browser for Windows 10 on ARM32 (porting/building)

Reply #5
Yes. Here it is.
602.1 is new QtWebKit if I'm not mistaken.

If possible, could you please enlighten me on how Otter handles video?
- based on a library part of Otter?
- or it's forwarded to the host Operative System expecting to be handled by installed codecs?
I don't think those are mutually exclusive. But to be clear, I'm mainly a user/supporter/advisor. I imagine that all depends on GStreamer.

Re: Otter Browser for Windows 10 on ARM32 (porting/building)

Reply #6

I don't think those are mutually exclusive. But to be clear, I'm mainly a user/supporter/advisor. I imagine that all depends on GStreamer.
thank you Frenzie, will continue exploring

Re: Otter Browser for Windows 10 on ARM32 (porting/building)

Reply #7
I know the forum is not as active as in the past, but I would really appreciate some help on what flags are being used for building Otter Browser.

So far, this is being used to build Otter for Windows 10 for ARM32, but still no video or audio, and experiencing memory leaks, websites work as long as javascript is not complex, if so, it crashes, Facebook crashes, Youtube doesn't load, it crashes. Multimedia doesn't work as mentioned before.

armv7-w64-mingw32-cmake -DENABLE_GEOLOCATION=NO -DENABLE_WEBKIT2=NO -DENABLE_OPENGL=NO -DUSE_QT_MULTIMEDIA=NO -DUSE_GSTREAMER=ON -G "Ninja" -DENABLE_JIT=NO -DENABLE_API_TESTS=OFF ..

At this point, multimedia (audio or video) is on the waiting list, the priority is trying to solve the memory leaks, I mean: expecting to get Otter Browser to work on Facebook websites, or any website with a bit of more complex Javascript. Multimedia can wait.

Using 602.1 at the moment.