Opened 11 years ago

Closed 11 years ago

Last modified 9 years ago

#461 closed defect (fixed)

undefined symbol compiling genturfa'i after updating Chicken

Reported by: Alan Post Owned by:
Priority: major Milestone: 4.9.0
Component: compiler Version: 4.6.x
Keywords: Cc: alanpost@…
Estimated difficulty:

Description

I'm running Chicken from the experimental branch. After updating to 806bdb60d143712646a07ae891101a11a1511ab6, I try to install the genturfa'i egg and I get the following error:

/opt/chicken-master/bin/csi:/opt/chicken-master/lib/chicken/5/genturfahi.so: undefined symbol 'C_srfi_2d1_toplevel'
lazy binding failed!
Segmentation fault (core dumped)

This is the genturfah'i egg r22075.

Do I need to add or remove an srfi declaration? I'm not sure what behavior in Chicken changed and whether I'm seeing a bug introduced in Chicken or whether a fix in Chicken introduced a bug in my code.

Change History (6)

comment:1 Changed 11 years ago by Alan Post

Cc: alanpost@… added

comment:2 Changed 11 years ago by Alan Post

I'm also getting this error building the sandbox egg:

retrieving ...
checking platform for `sandbox' ...
checking dependencies for `sandbox' ...
install order:
("sandbox")
installing sandbox: ...
changing current directory to .
  /opt/chicken-master/bin/csi -bnq -setup-mode -e "(require-library setup-api)" -e "(import setup-api)" -e "(setup-error-handling)" -e "(extension-name-and-version '(\"sandbox\" \"\"))" -e "(sudo-install #t)" sandbox.setup
  /opt/chicken-master/bin/csc -feature compiling-extension -setup-mode    -s -O3 -d1 sandbox.scm -j sandbox
/opt/chicken-master/bin/chicken:/opt/chicken-master/lib/chicken/5/defstruct.import.so: undefined symbol 'C_srfi_2d1_toplevel'
lazy binding failed!
Segmentation fault (core dumped) 

Error: shell command terminated with non-zero exit status 35584: /opt/chicken-master/bin/chicken sandbox.scm -output-file sandbox.c -dynamic -feature chicken-compile-shared -feature compiling-extension -setup-mode -optimize-level 3 -debug-level 1 -emit-import-library sandbox

Error: shell command failed with nonzero exit status 256:

  /opt/chicken-master/bin/csc -feature compiling-extension -setup-mode    -s -O3 -d1 sandbox.scm -j sandbox


Error: shell command terminated with nonzero exit code
17920
"/opt/chicken-master/bin/csi -bnq -setup-mode -e \"(require-library setup-api)\"...

comment:3 Changed 11 years ago by Alan Post

I'd like to bump this, I have narrowed down the problem to the defstruct egg. Building and trying to run the tests for this egg (chicken-install -s -test) gives me:

retrieving ...
checking platform for `defstruct' ...
checking dependencies for `defstruct' ...
install order:
("defstruct")
installing defstruct: ...
changing current directory to .
  /opt/chicken-master/bin/csi -bnq -setup-mode -e "(require-library setup-api)" -e "(import setup-api)" -e "(setup-error-handling)" -e "(extension-name-and-version '(\"defstruct\" \"\"))" -e "(sudo-install #t)" defstruct.setup
  /opt/chicken-master/bin/csc -feature compiling-extension -setup-mode    -s -O2 defstruct.scm -j defstruct
  /opt/chicken-master/bin/csc -feature compiling-extension -setup-mode    -s -O2 defstruct.import.scm
  sudo cp -r defstruct.so /opt/chicken-master/lib/chicken/6/defstruct.so
  sudo chmod a+r /opt/chicken-master/lib/chicken/6/defstruct.so
  sudo cp -r defstruct.import.so /opt/chicken-master/lib/chicken/6/defstruct.import.so
  sudo chmod a+r /opt/chicken-master/lib/chicken/6/defstruct.import.so
  sudo mv /tmp/temp8d97.tmp /opt/chicken-master/lib/chicken/6/defstruct.setup-info
  sudo chmod a+r /opt/chicken-master/lib/chicken/6/defstruct.setup-info
  /opt/chicken-master/bin/csi -s run.scm defstruct 
/opt/chicken-master/bin/csi:/opt/chicken-master/lib/chicken/6/defstruct.import.so: undefined symbol 'C_srfi_2d1_toplevel'
lazy binding failed!
Segmentation fault (core dumped) 


Error: shell command terminated with nonzero exit code
35584
"/opt/chicken-master/bin/csi -s run.scm defstruct "

The error message only happens if I try to run the tests, or if I try to use defstruct from another egg.

I'm running OpenBSD 4.8 on i386, using the experimental branch 35e6429e4f4397c654cec39e0d2bc5cf42073a8d.

What is going on with the defstruct egg here?

comment:4 Changed 11 years ago by Alan Post

Resolution: fixed
Status: newclosed

Thanks to sjamaan on IRC, I have fixed this problem:

I build chicken experimental, then compiled chicken using the chicken-experimental branch, which corrected this problem.

comment:5 Changed 10 years ago by felix winkelmann

Milestone: 4.7.04.8.0

Milestone 4.7.0 deleted

comment:6 Changed 9 years ago by felix winkelmann

Milestone: 4.8.04.9.0

Milestone 4.8.0 deleted

Note: See TracTickets for help on using tickets.