Skip to content
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

Javet build using Docker #449

Open
rafsunsheikh opened this issue Jan 23, 2025 · 14 comments
Open

Javet build using Docker #449

rafsunsheikh opened this issue Jan 23, 2025 · 14 comments

Comments

@rafsunsheikh
Copy link

Hi,

I am trying to build Javet for linux x86_64 and linux arm64 architectures.
I am following your build instructions.

I tried building with docker build -f docker/linux-x86_64/build_artifact.Dockerfile . first, but it failed in my Ubuntu x86_64 machine. Then I started with full build and completed building the first one, base_jvm.Dockerfile.

But I was wondering where these build files are stored? and how can I use the build files in a project in another machine.

If you kindly explain the process to me in details, that would be a kind help for me.

thanks a lot.

@caoccao
Copy link
Owner

caoccao commented Jan 23, 2025

Those docker files have gradually been out of maintenance because the V8 team keeps breaking some common practices in the docker environment. You are welcome fixing them via PRs to the dev branch.

@caoccao
Copy link
Owner

caoccao commented Jan 23, 2025

Also, I used to live in a city where accessing GitHub, dockerhub requires paid VPN. It's quite expensive per GB. I literally couldn't afford doing experiments for fixing those docker files. Imagine one docker build command costs a decent meal in a luxury restaurant.

@rafsunsheikh
Copy link
Author

Also, I used to live in a city where accessing GitHub, dockerhub requires paid VPN. It's quite expensive per GB. I literally couldn't afford doing experiments for fixing those docker files. Imagine one docker build command costs a decent meal in a luxury restaurant.

I am really sorry to hear that brother. Hope I could help.

@rafsunsheikh
Copy link
Author

Those docker files have gradually been out of maintenance because the V8 team keeps breaking some common practices in the docker environment. You are welcome fixing them via PRs to the dev branch.

Is there any other way to build Javet from scratch except using Docker? I would ask for a easy and details docs.

@caoccao
Copy link
Owner

caoccao commented Jan 24, 2025

Please check the GitHub workflow out. It covers the all-in-one build process for all OSs.

@rafsunsheikh
Copy link
Author

can you please share the link?

@caoccao
Copy link
Owner

caoccao commented Jan 25, 2025

Just clone this project. They are under .github/workflows.

@rafsunsheikh
Copy link
Author

I cloned the repo and tried building using the GitHub Actions.
While trying to build the linux x86_64 jar files, I got the same error as yours https://github.com/caoccao/Javet/actions/runs/12197676263

Do you know any way to solve this issue? Building the Linux version is important, so I would really appreciate your help.

Currently, I am running the MacOS arm64, MacOs x86_64 and windows x86_64 versions.

They are not done yet, can let you know the results after the build is complete.

@rafsunsheikh
Copy link
Author

For you info,
I could successfully build the MacOs arm64, x86_64 and windows x86_64 versions.

Need help with the Linux x86_64 one.

@caoccao
Copy link
Owner

caoccao commented Jan 27, 2025

Please try previous versions. The latest one is broken. I have a manual fix in my dev environment. It's nasty, so I didn't put it in the repo because it will be automatically fixed in the next version.

That is one of the challenges this project naturally has. Every release is an adventure that requires me to spend hours troubleshooting. Best way I guess is: Buy a me cup of coffee via the donation link.

@rafsunsheikh
Copy link
Author

Thanks a lot. I started building javet 4.1.0 for linux x86_64. Hopefully, it will succeed. After, I can build all the versions, how can I use them, like where to keep them so that when I call Javet functions, the build files could be accessed?

@caoccao
Copy link
Owner

caoccao commented Jan 27, 2025

Just download the binaries from the successful actions.

@rafsunsheikh
Copy link
Author

After I download them, where to put them?

@caoccao
Copy link
Owner

caoccao commented Jan 28, 2025

Please google how to load local jar files.

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

No branches or pull requests

2 participants