Compile Odyssey for ABI_V0

ch1ll · 24923

deadwood

  • AROS Developer
  • Legendary Member
  • *****
    • Posts: 1524
    • Karma: +118/-0
Reply #15 on: October 30, 2018, 01:24:04 PM
@ch1ll

AFAIR bsdsocket.library is a special case. It does not physically exist (it is created at runtime) and it does not have a link library that can resolve the missing functions. Instead you need to make sure that its protos are included in every .c file that uses socket functions. These protos will redefine the function calls (like recv) into jumps relative to base so there won't be any unresolved symbols. What the error log suggest is that ffmpeg is incorrectly compiled (no protos included where needed).



nikos

  • Senior Member
  • ****
    • Posts: 374
    • Karma: +71/-3
    • aspireos
Reply #16 on: October 30, 2018, 05:45:27 PM
Deadwood  :D

Nice to see you again.


ch1ll

  • Newbie
  • *
    • Posts: 31
    • Karma: +0/-0
Reply #17 on: October 31, 2018, 01:40:16 AM
Hi all,

I was able to compile Odyssey with openssl 1.1  :) . I compiled it with ffmpeg 3.0.1, the one already available in ABI_V0 using the --disable-network flag.
I'll make some tests and share everything.

Nicola



nikos

  • Senior Member
  • ****
    • Posts: 374
    • Karma: +71/-3
    • aspireos
Reply #18 on: October 31, 2018, 02:29:15 AM
Nicola: That is amazing news  :) thanks a lot for your work on this. Looking forward to try it out.


paolone

  • Legendary Member
  • *****
    • Posts: 568
    • Karma: +90/-0
Reply #19 on: October 31, 2018, 05:11:19 AM
@Deadwood
Thank you for following this and giving hints. :-)It's always a pleasure to hear you.
@Ch1ll
Keep up the good work! We absolutely need a OWB refresh, since its useability in the current web is getting worse over time. I will obviously include your updates in Icaros Desktop as soon as you'll make them available.
Kind regards



sabbate

  • Guest
Reply #20 on: October 31, 2018, 11:15:34 AM
thank you nicola

salvatore



wawa

  • Senior Member
  • ****
    • Posts: 265
    • Karma: +55/-0
Reply #21 on: October 31, 2018, 03:35:01 PM
@nikos
deadwood is the guy who ported odyssey to aros and whose sources i have forked in order to get them compile foe abi v1, big endian and m68k amiga prticularly. if there is anyone to expect an informed advice from, its him.



ch1ll

  • Newbie
  • *
    • Posts: 31
    • Karma: +0/-0
Reply #22 on: October 31, 2018, 04:19:14 PM
Hi everybody,

Thanks for the support. I was not able to test anything, but I uploaded odyssey in case someone want to test it. I also uploaded the certificates to be uncompressed in Development/etc/SSL

https://drive.google.com/folderview?id=1INiXOKKY7KypDaLabvPo9KTN06W8--nS
@deadwood: you did an amazing job
@wava: Thanks for your help

Please let me know any feedback



nikos

  • Senior Member
  • ****
    • Posts: 374
    • Karma: +71/-3
    • aspireos
Reply #23 on: October 31, 2018, 05:39:55 PM
Thanks for the link.

Tried it and program starts. Problem is with most pages I get this error.

Error 1: unsupported protocol



deadwood

  • AROS Developer
  • Legendary Member
  • *****
    • Posts: 1524
    • Karma: +118/-0
Reply #24 on: November 01, 2018, 01:45:19 AM
@ch1ll

Thanks, but I was just the last guy in the chain of people who brought WebKit to Amiga-like OSes. AROS version is building on top of their contributions.

BTW: If you want to merge your changes into the main line, I can give you write access to GitHub repository (https://github.com/deadwood-pl/OdysseyWebBrowser)
« Last Edit: November 01, 2018, 01:47:41 AM by deadwood »



paolone

  • Legendary Member
  • *****
    • Posts: 568
    • Karma: +90/-0
Reply #25 on: November 01, 2018, 06:01:10 AM
@Nicola

Thanks for the link.

Tried it and program starts. Problem is with most pages I get this error.

Error 1: unsupported protocol
To be more precise, all sites that default to an https page don't work, and give the unsupported protocol error.
pages that can actually be reached with the http (not 's') protocolo, instead, correctly work.
I have placed the ssl contents in development:etc/ssl, and replaced all original OWB directory with the one in the bigger archive.
Probably we're just missing some little step you've performed.


paolone

  • Legendary Member
  • *****
    • Posts: 568
    • Karma: +90/-0
Reply #26 on: November 01, 2018, 06:11:28 AM
@Nicola
I done this with sashimi and snoopy to get a error log: 1. open owb, 2. open libero.it, 3. have the error appear, 4. close owb.



nikos

  • Senior Member
  • ****
    • Posts: 374
    • Karma: +71/-3
    • aspireos
Reply #27 on: November 01, 2018, 08:48:00 AM
On the web, you will see two different types of URLs or links – one which starts with HTTP and the other which starts with HTTPS. The HTTPS links use SSL certificates to make the connection secure or private.

I tought SSL where part of Odyssey exe. Even if it would  be prefered if it was not.  I don't think Odyssey is looking for SSL in the Development path?
« Last Edit: November 01, 2018, 09:00:46 AM by nikos »



wawa

  • Senior Member
  • ****
    • Posts: 265
    • Karma: +55/-0
Reply #28 on: November 01, 2018, 02:08:29 PM
off the top of my head ssl should be linked statically right now.

edit: yes, there is pretty huge libssl.a in developer/lib
im certain there is material there to prepare interface for a shared one, but im not experienced at it. needs a .config file to define function interface and linrary init/exit stuff afair.
« Last Edit: November 01, 2018, 02:13:43 PM by wawa »



wawa

  • Senior Member
  • ****
    • Posts: 265
    • Karma: +55/-0
Reply #29 on: November 01, 2018, 02:31:21 PM

BTW: If you want to merge your changes into the main line, I can give you write access to GitHub repository (https://github.com/deadwood-pl/OdysseyWebBrowser)

might be worth to merge up some of my changes even if not necessarily 1:1 if we want to keep abi v0 compatibility. i have omitted a few workarounds you have introduced for instance due to lacking stdc headers, kalamatee implemented while i was working on odyssey compilation within aros build system. im not sure if it works with abi v0. dependant on this portions of the code could be removed or ifdeffed detecting abi v0.

there are some further things, i have updated to the latest ffmpeg version, however acinerella doesnt compile with it as it is. the solution is either to degrade to the latest ffmpeg (the diff is still in aros sources) or update acinerella adopting its interface. the current interface doesnt provide one private function any more odyssey side is dependent on. i have noticed that piru has joined in developing acinerella, but morphos team is not keen to share their patches as of current.