Opened 12 years ago

Closed 4 years ago

#9638 closed bug (no change required)

Beatware Be Basics - Writer wordprocessor - error "Symbol not found" — at Version 16

Reported by: un_spacyar Owned by: nobody
Priority: normal Milestone: R1
Component: - General Version: R1/alpha4.1
Keywords: Cc:
Blocked By: Blocking: #9639
Platform: All

Description (last modified by pulkomandy)

When try to start Writer application, I get the following error:

/boot/apps/Be Basics> Writer runtime_loader: /boot/apps/Be Basics/Writer: Could not resolve symbol '_free' resolve symbol "_free" returned: -2147478780 runtime_loader: /boot/apps/Be Basics/Writer: Troubles relocating: Symbol not found /boot/apps/Be Basics>

Tested in Haiku alpha 4.1

Change History (22)

comment:1 by anevilyak, 12 years ago

Blocking: 9639 added

(In #9639) Duplicate of #9638.

comment:2 by vidrep, 9 years ago

Testing on hrev49552 x86_gcc2 Error same as in ticket description. Attached screenshot showing syslog and terminal output.

by vidrep, 9 years ago

Attachment: screenshot1.png added

comment:3 by pulkomandy, 9 years ago

Do you have a download link for the application?

by diver, 9 years ago

Attachment: BeatWare_BeBasics.zip added

a patched version of BeBasic by 3dEyes

comment:4 by vidrep, 9 years ago

I installed BeatWare BeBasics, then overwrote them with the patched files that Diver attached. Write now works, but there are a couple of issues. First, is that Write wants to store its configuration files to /home/config/add-ons (attached screenshot1), which is a read only directory. Second, which is minor, is that symlinks must be manually pointed to the Deskbar applications list. Could a .hpkg be created from the patched files, with correct directories and symlinks?

Last edited 9 years ago by vidrep (previous) (diff)

comment:5 by diver, 9 years ago

Sure, that should work. You can create a repack and submit it to one of the repos. For instance Guest One's. That being said, BeBasics provides only a historical interest as you can't do much with it anyway :)

in reply to:  4 comment:6 by michel, 9 years ago

Replying to vidrep:

I installed BeatWare BeBasics, then overwrote them with the patched files that Diver attached. Write now works, but there are a couple of issues. First, is that Write wants to store its configuration files to /home/config/add-ons (attached screenshot1), which is a read only directory. Second, which is minor, is that symlinks must be manually pointed to the Deskbar applications list. Could a .hpkg be created from the patched files, with correct directories and symlinks?

Sure. I've handled a few cases like that. You move the config file to a more reasonable place, like ~/config/settings, then create a symlink from that to where the app wants the file to be. Finally you create a post-install script to create 0-byte files in the appropriate places on installation (use touch, that way the config does not get messed up on a reinstall). this creates a wormhole :-) through the write-only directories to your config file. Yes, it's a kludge. But it does work. Contact me off-list (clasqm@…) if you get stuck.

comment:7 by vidrep, 9 years ago

PulkoMandy,

Attached is the output of the strings and the readelf we discussed on IRC.

by vidrep, 9 years ago

Attachment: strings added

by vidrep, 9 years ago

Attachment: readelf added

comment:8 by vidrep, 9 years ago

I have attached a screenshot of BeatWare Writer partially working on hrev50116 x86_gcc2. The only problem remaining is that the application cannot find the various filters which normally would reside in the /boot/home/config/add-ons/BeatWare/Writer directory. see attached screenshot2

Last edited 9 years ago by vidrep (previous) (diff)

by vidrep, 9 years ago

Attachment: screenshot2.png added

comment:9 by pulkomandy, 9 years ago

Ok, from this output we can see that the app is properly using find_directory (in two places) and there is no hardcoded path (strings shows nothing that look like "add-ons").

This means we can act at the find_directory level to adjust the paths and the app would work again.

Two solutions:

  • Patch Haiku to detect BeOS executables, and use non-packaged directories in find_directory in that case
  • Patch Wrier to change the constant sent to find_directory so that it uses non-packaged add-ons, or possibly settings if that's more appropriate?

comment:10 by diver, 9 years ago

Can't we just package it so that its add-ons would appear in the /boot/home/config/add-ons/BeatWare/Writer ?

comment:11 by pulkomandy, 9 years ago

It seems to try to write settings there? Which would be a problem. For the actual add-ons, yes, putting them in an hpkg file would probably make them work.

comment:12 by vidrep, 9 years ago

I already tried making a hpkg for Writer. It installs, but I still needed to create symlinks to the/boot/home/config/settings/BeatWare/Writer directory afterwards. If the same could be done for the add-ons, it would work. I have attached the package attributes for the hpkg I created.

by vidrep, 9 years ago

Attachment: Writer_hpkg added

comment:13 by pulkomandy, 9 years ago

You have files in config/add-ons and config/settings in your package. I think it should be just add-ons and settings (because the package "root" is home/config when installed in home).

comment:14 by vidrep, 9 years ago

I tried your suggestion and about a dozen other combinations to no avail. If some of our "home" directories weren't read only, it would be easy to get it working.

comment:15 by un_spacyar, 8 years ago

Since there are a working HPKG avaible at Clasqm, I guess this ticket could be closed.

comment:16 by pulkomandy, 4 years ago

Description: modified (diff)
Resolution: no change required
Status: newclosed

Yes, the patched version above works fine in the non-packaged case and the package completes that.

Note: See TracTickets for help on using tickets.