Opened 7 years ago

Closed 7 years ago

#920 closed defect (fixed)

Missing math library -- Ubuntu 11.10

Reported by: dfindlay Owned by: rme
Priority: normal Milestone:
Component: Runtime (threads, GC) Version: 1.7
Keywords: Cc:

Description

I have a shiny new Linux box running Ubuntu 11.10.

On installing CCL, everything appears OK when I do the rebuild-ccl step. However, in the resulting Lisp image, all math functions (i.e. log and trig functions) are no longer available: all attempts to use such give a "Can't resolve foreign symbol" error.

I've discovered that a 'workaround' is to manually load libm using open-shared-library; the load is remembered through invocations of save-application. However, I'm pretty sure this shouldn't be necessary.

I've found that this behaviour occurs with the latest versions of both CCL 1.6 and 1.7.

Change History (2)

comment:1 Changed 7 years ago by rme

  • Owner set to rme
  • Status changed from new to assigned
  • Version changed from trunk to 1.7

Recent distributions have changed the linker defaults. https://wiki.ubuntu.com/OneiricOcelot/ReleaseNotes#GCC_4.6_Toolchain

r15137 contains a fix that's in the trunk, and will be in the upcoming 1.8 release.

As you can probably see from the diffs, the fix is to add "-Wl,-no-as-needed" when linking the lisp kernel.

I'm not sure how early "-no-as-needed" is available. If it's been there a long time we might want to add the "-no-as-needed" to the 1.7 Linux makefiles.

comment:2 Changed 7 years ago by gb

  • Resolution set to fixed
  • Status changed from assigned to closed

The --as-needed/--no-as-needed options have been supported for at least the last several years.

I checked the changes to Linux Makefiles into the 1.7 branch.

Note: See TracTickets for help on using tickets.