Skip to content

update fricas0-ecl and fricas0-data#5950

Merged
IsabelParedes merged 8 commits into
emscripten-forge:mainfrom
wangyenshu:fricas0-fix
Jul 20, 2026
Merged

update fricas0-ecl and fricas0-data#5950
IsabelParedes merged 8 commits into
emscripten-forge:mainfrom
wangyenshu:fricas0-fix

Conversation

@wangyenshu

@wangyenshu wangyenshu commented Jul 17, 2026

Copy link
Copy Markdown
Contributor

Template B: Checklist for updating a package

  • ⚠️ Bump build number if the version remains unchanged
  • Or reset build number to 0 if updating the package to a newer version

PR Formatting

  • PR title follows format: Add [package-name] or Update [package-name] to [version]
  • PR description includes:
    • Version being added/updated
    • Any special build considerations or patches applied

Package Details

  • Package Name: fricas0-ecl, fricas0-data
  • Version: various, see their recipe.yaml

Build Notes

This is a fix for fricas0-ecl and fricas0-data. The fricas0 compiled lisp code must match the architecture of wasm version of ecl. So the new recipe will build the 32bit host version of ecl and compile the lisp code. I have tested the local build.

@wangyenshu

Copy link
Copy Markdown
Contributor Author

==> Running build script
Creating directory `build'
Switching to directory `build' to continue configuration.
checking build system type... i686-pc-linux-gnu
checking host system type... i686-pc-linux-gnu
checking for gcc... gcc -m32
checking whether the C compiler works... no
configure: error: in '$SRC_DIR/build':
configure: error: C compiler cannot create executables
See 'config.log' for more details

I am confused. The build works nicely on my machine. I checked the workflow file. It uses 64bit ubuntu. I need to build 32bit ecl on host before building wasm version of ecl.

If this cannot be fixed. I had to use the raw lisp file.

build:
- ${{ compiler("c") }}
- make
- pkg-config

Copy link
Copy Markdown
Member

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Suggested change
- pkg-config
- gcc
- gxx

Copy link
Copy Markdown
Member

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

I am confused. The build works nicely on my machine.

On your machine it's likely using your system compilers.

From the config.log

cannot find libgcc_s.so.1: No such file or directory
cannot find -lgcc: No such file or directory

You probably need to point $LDFLAGS to the $BUILD_PREFIX

Copy link
Copy Markdown
Contributor Author

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Thanks. I updated $LDFLAGS. But it still says "checking whether the C compiler works... no". I tested again on my machine after block host gcc by alias. It works.

How do you get the config.log from github action? Maybe that will help.

Copy link
Copy Markdown
Member

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

An easy way is to add this to the failing command

<failed command> || cat config.log

You just need to check where the config log is if it's not in the current directory. But you could probably easily find it in your machine.

@wangyenshu
wangyenshu marked this pull request as draft July 17, 2026 16:44
@wangyenshu

Copy link
Copy Markdown
Contributor Author

I removed -m32 flag. It builds but it is 64bit ecl:

[81](https://github.com/emscripten-forge/recipes/actions/runs/29597319830/job/87940774604?pr=5950#step:7:1781)
Creating directory `build'
Switching to directory `build' to continue configuration.
checking build system type... x86_64-pc-linux-gnu
checking host system type... x86_64-pc-linux-gnu
checking for gcc... gcc
checking whether the C compiler works... yes
checking for C compiler default output file name... a.out
checking for suffix of executables... 
checking whether we are cross compiling... no
checking for suffix of object files... o
checking whether the compiler supports GNU C... yes
checking whether gcc accepts -g... yes
checking for gcc option to enable C11 features... none needed
checking whether the compiler supports GNU C++... yes
checking whether g++ accepts -g... yes
checking for g++ option to enable C++11 features... none needed
checking how to run the C preprocessor... gcc -E
checking for ranlib... ranlib
checking for a BSD-compatible install... /usr/bin/install -c
checking whether ln -s works... yes
checking whether make sets $(MAKE)... yes
checking for ranlib... (cached) ranlib
checking for ar... ar
checking for exctags... no
checking for ectags... no
checking for ctags... no
checking for etags... no
checking for emacs-etags... no
checking for ld flags when building shared libraries... -shared 
checking for required libraries... -ldl -lm
checking for architecture... X86_64
checking for software type... linux / 
checking whether to build the manual; finding install-info...... checking for install-info... /usr/bin/install-info
 install-info found.
checking for working makeinfo...... checking for makeinfo... /usr/bin/makeinfo
 Will build the manual.

@wangyenshu

Copy link
Copy Markdown
Contributor Author

My mistake. Ecl need not to be 32bit. The version number of ecl that compiles fricas should be the same as the ecl that execute it. I guess now it should work.

@wangyenshu
wangyenshu marked this pull request as ready for review July 18, 2026 01:37

@IsabelParedes IsabelParedes left a comment

Copy link
Copy Markdown
Member

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Looks good. Thank you!

@IsabelParedes
IsabelParedes merged commit c11416a into emscripten-forge:main Jul 20, 2026
2 checks passed
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

2 participants