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

Binary executable in the repository #21

Closed
pawosm-arm opened this issue Feb 4, 2020 · 6 comments
Closed

Binary executable in the repository #21

pawosm-arm opened this issue Feb 4, 2020 · 6 comments
Labels
enhancement New feature or request

Comments

@pawosm-arm
Copy link

The Tek4010 contains binary blob on it's master branch. There's an executable binary file called tek4010 which needs to be removed, otherwise the make command won't build binary for a specific system. Having rebuilt/usable binary causes git to print error message whenever I want to pull from upstream.

Note that you already export 6 releases for this project and that's the right place for executable binary files.

@rricharz
Copy link
Owner

rricharz commented Feb 4, 2020

Sorry for the inconvenience. This is a very good point, and I have been thinking about how to best handle this since a while.

Initially, this project was just for the Raspberry Pi, and it is most convenient for Raspberry Pi users that a simple "pull" will give them the latest version. No libraries to install, nothing to build.

Now as the project is spreading and more people are using it on other Linux and Unix systems, I will have to package the project in a way which is also convenient for users of other systems. I will do that in a while. In the mean time, probably the easiest is to do the following:
git checkout tek4010
git pull
rm tek4010
make

@rricharz rricharz added the enhancement New feature or request label Feb 4, 2020
@tvrusso
Copy link
Contributor

tvrusso commented Feb 4, 2020

I think it is best if binaries (executables and object files) were not present. I, too, am mostly building this on systems other than the Pi, and the presence of pi-specific binaries is in the way.

Removing the file and rebuilding after a pull is fine, but the presence of the newly rebuilt binary can interfere with future pulls as well. Better if they weren't there.

BTW, I have some other modifications that make it easier to build on non-pi, non-linux systems (mostly changing Makefiles to not hard-code gcc, and scripts to not hard-code /bin/bash). If you ever move to make this repo less tied to the pi by removing binaries, I'll submit a PR.

@udo-munk
Copy link

udo-munk commented Feb 5, 2020

You could add a clean target to the makefile, so that 'make clean' will remove the binary. Another option would be be different targets for systems like tek4010-pi, tek4010-linux. Then users can use the prebuild binary appropriate for the system. A 'make all' would build all targets then.

@larsbrinkhoff
Copy link
Contributor

I agree this is a bit of a nuisance. I have this automatically built as a submodule of the ITS repository, so I had to add a workaround to first remove the binary.

@LegalizeAdulthood
Copy link

Why not use the "releases" feature of github? Then you can make a single executable available or a ZIP file or whatever.

@rricharz
Copy link
Owner

rricharz commented Mar 1, 2024

Binaries removed in latest version

@rricharz rricharz closed this as completed Mar 1, 2024
tvrusso added a commit to tvrusso/Tek4010 that referenced this issue Mar 1, 2024
apltest was provided as a Raspberry Pi binary, but other binaries were
removed in rricharzGH-21.

Should close rricharzGH-34
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
enhancement New feature or request
Projects
None yet
Development

No branches or pull requests

6 participants