Skip to content

Add missing wx dependencies #9708

New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Open
wants to merge 1 commit into
base: master
Choose a base branch
from

Conversation

joaohf
Copy link
Contributor

@joaohf joaohf commented Apr 9, 2025

The following applications:

  • et
  • observer
  • debugger
  • reltool

And also the wx/examples/[simple,demo,sudoku] depends on wx application in order to build properly.

When cross compiling Erlang/OTP [1], there are cases where the initial bootstrap system (which in most of the cases is just the same Erlang/OTP version but built for host) may not have Erlang wx application enabled. Thus when cross compiling the above applications will not able to found wx.hrl and wx behaviour files.

That is because the target build should look into ERL_TOP in order to see the missing dependencies.

Without the proper ERL_COMPILE_FLAGS the build will try to use from the host system, which in my case does not have wx enabled.

1: https://github.com/erlang/otp/blob/master/HOWTO/INSTALL-CROSS.md

The following applications:

 - et
 - observer
 - debugger
 - reltool

And also the wx/examples/[simple,demo,sudoku] depends on wx application
in order to build properly.

When cross compiling Erlang/OTP [1], there are cases where the initial
bootstrap system (which in most of the cases is just the same Erlang/OTP
version but built for host) may not have Erlang wx application enabled.
Thus when cross compiling the above applications will not able to found
wx.hrl and wx behaviour files.

That is because the target build should look into ERL_TOP in order to
see the missing dependencies.

Without the proper ERL_COMPILE_FLAGS the build will try to use from the
host system, which in my case does not have wx enabled.

1: https://github.com/erlang/otp/blob/master/HOWTO/INSTALL-CROSS.md
Copy link
Contributor

github-actions bot commented Apr 9, 2025

CT Test Results

  6 files   54 suites   12m 49s ⏱️
567 tests 531 ✅ 36 💤 0 ❌
607 runs  571 ✅ 36 💤 0 ❌

Results for commit cf0fc1d.

♻️ This comment has been updated with latest results.

To speed up review, make sure that you have read Contributing to Erlang/OTP and that all checks pass.

See the TESTING and DEVELOPMENT HowTo guides for details about how to run test locally.

Artifacts

// Erlang/OTP Github Action Bot

@joaohf
Copy link
Contributor Author

joaohf commented Apr 9, 2025

Hi,

I know that cross compiling wx is not officially supported. But, I think there are some missing dependencies when trying to wx, observer, et, on host erlang and enabling wx when cross compiling erlang. Without this patch, the build could not find wx.hrl for instance.

I believed (based on my tests) when building a bootstrap like here https://github.com/erlang/otp/blob/master/.github/dockerfiles/Dockerfile.cross-compile#L39 and we pass --without-wx --without-observer --without-et --without-debugger --without-reltool, then when building the cross system with for instance --with-wx --with-observer, the build system will not found the wx.hrl and wx beam files.

@IngelaAndin IngelaAndin added the team:PS Assigned to OTP team PS label Apr 9, 2025
@u3s u3s assigned dgud Apr 15, 2025
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
team:PS Assigned to OTP team PS
Projects
None yet
Development

Successfully merging this pull request may close these issues.

3 participants