[haiku-development] Re: replacing runtime_loader

  • From: Tim Kelly <gtkelly@xxxxxxxxxxxxxxxxx>
  • To: haiku-development@xxxxxxxxxxxxx
  • Date: Wed, 16 Mar 2016 18:14:32 -0400

Ingo Weinhold wrote:

Interestingly, calling ~> /system/runtime_loader --version causes
runtime_loader to crash, invoking the debugger.

That's by design. Although it looks like one, runtime_loader is not a regular executable and cannot be executed.

Sure - but is a crash that invokes the debugger the best way to handle runtime_loader invoking itself?

~> ln -s /system/runtime_loader test
~> ./test
runtime_loader: /boot/system/runtime_loader: Could not find .comment section
runtime_loader: /boot/system/runtime_loader: Failed to get gcc version.

(debugger invoked)

Is there another test I can run to determine if my packaged
runtime_loader is being loaded and executed?

"listattr -l /system/runtime_loader" will tell you which package the file originates from.

I see some definite differences between the package the loaded and my package. I think I am missing some metadata:

~> listattr -l /system/runtime_loader
File: /system/runtime_loader
Type       Size  Name                                Contents
-------------------------------------------------------------------------------
Text        31  "SYS:PACKAGE"    haiku-r1~alpha4_pm_hrev49897-1
Text        45  "SYS:PACKAGE_FILE"
                   haiku-r1~alpha4_pm_hrev49897-1-x86_gcc2.hpkg
  'APPV'       680  "BEOS:APP_VERSION"
0000: 01 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00  ................
0010: 00 00 00 00 52 75 6e 74 69 6d 65 20 4c 6f 61 64  ....Runtime.Load
0020: 65 72 00 00 00 00 00 00 00 00 00 00 00 00 00 00  er..............
0030: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00  ................
0040: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00  ................
0050: 00 00 00 00 52 75 6e 74 69 6d 65 20 4c 6f 61 64  ....Runtime.Load
0060: 65 72 20 c2 a9 32 30 30 32 2d 32 30 30 37 20 48  er...2002-2007.H
0070: 61 69 6b 75 20 49 6e 63 2e 00 00 00 00 00 00 00  aiku.Inc........
0080: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00  ................
0090: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00  ................
00a0: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00  ................
00b0: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00  ................
00c0: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00  ................
00d0: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00  ................
00e0: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00  ................
00f0: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00  ................

MIME String 38 "BEOS:APP_SIG" application/x-vnd.Haiku-RuntimeLoader
MIME String 35 "BEOS:TYPE" application/x-vnd.Be-elfexecutable

829 bytes total in attributes.
~> listattr -l /system/packages/runtime_loader.hpkg
File: /system/packages/runtime_loader.hpkg
        Type       Size  Name                                Contents
-------------------------------------------------------------------------------
MIME String 32 "BEOS:TYPE" application/x-vnd.haiku-package

32 bytes total in attributes..

tim


--
Love is the only kind of gold that brings peace to everyone's soul
                -- Robert Palmer

Other related posts: