Island Http.ExecuteRequestSynchronous

Hi,

With the following on Raspberry Island

namespace HttpConsoleApplication;

type
  Program = class
  public

    class method Main(args: array of String): Int32;
    begin
      var response := Http.ExecuteRequestSynchronous(new HttpRequest(Url.UrlWithString('http://api.isailed.com/'),HttpRequestMode.Get));
    end;

  end;

end.

I get a Fatal exception of type SIGSEGV on thread 7BBB

It works fine on Cocoa

Cheers,
John

Thanks, logged as bugs://84522

That’s Linux/arm64, I assume? or Linux/armv6?

Linux/armv6

1 Like

Does the unbreak now status mean it has top priority ?

Yes, “Unbreak Now” is the highest level of priority. It doesn’t mean it’s the only issue at that priority, so its not necessarily at the very top of the list, but its as high up as its gonna get. :wink:

I wanted to debug this myself. If you look at the screen shot, only the first item in the stack has a line number and when I click on the line in Nullable the locals isnt populated. It is possible to provide more context, because I cant tell from that what might be the issue

It looks like the other lines don’t have debug symbols, because they are on system libraries?

As for the locals, do those fail everywhere in Island/Linux/arm, or just in this particulate stack frame on this project? This sounds like a potential debugger bug/limitation; I can log to have that looked at next week. Unfortunately I don’t have any Linux/arm hardware to rest with myself, so someone else form the team will need to have a look.

As a side Q: does the same code work (bot as for the SIGENV and/or for debugging) on Linux/x86_64? IOW is this issue arm-specific or Linux-specific?

Do you still get this with last fridays’ build @JohnMoshakis?
If so, can you tell me more about your RPI? Additionally, do you have libcurl.so installed?

If not, can you install libcurl.so?

Fwiw it now gives a proper error instead of AV:

Remote debugging from host 127.0.0.1
~> Process ConsoleApplication131 started
~> Downloading symbols; see build log for details and progress...
!> Fatal exception of type RemObjects.Elements.System.Exception on thread 1E2B
!> Message: libcurl.so is missing

#> (edb) 

bugs://84522 got closed with status fixed.

I get that exception now.

Do you know how I would install it ?

What os do you have Debian(apt) or rpm?

Raspbian, i think thats debian based… apt I believe ?

I found this thread

This bit here

apt-get update
apt-cache search ^libcurl
apt-get install <whatever_apt-cache_listed>

I tried to install libcurl3 and it looks like its already installed

Reading package lists... Done
Building dependency tree       
Reading state information... Done
The following additional packages will be installed:
  curl
The following packages will be upgraded:
  curl libcurl3
2 upgraded, 0 newly installed, 0 to remove and 346 not upgraded.
Need to get 482 kB of archives.
After this operation, 0 B of additional disk space will be used.
Do you want to continue? [Y/n]

Maybe a missing search path entry, then? Not sure how this works exactly on Linux…

I dont know :frowning:

I think these are the files installed using apt-get

libcurl3: /usr/lib/arm-linux-gnueabihf/libcurl.so.3
libcurl3: /usr/lib/arm-linux-gnueabihf/libcurl.so.4
libcurl3: /usr/lib/arm-linux-gnueabihf/libcurl.so.4.4.0
libcurl3: /usr/share/doc/libcurl3/NEWS.Debian.gz
libcurl3: /usr/share/doc/libcurl3/changelog.Debian.gz
libcurl3: /usr/share/doc/libcurl3/changelog.gz
libcurl3: /usr/share/doc/libcurl3/copyright
libcurl3: /usr/share/lintian/overrides/libcurl3

I created a symbolic link

sudo ln -s libcurl.so.3 libcurl.so

and that fixed it.

Very odd. That should have just worked. Maybe we should try .4 and .3