can not get singularity to compile, failed to get package version - ubuntu-20.04

Ubuntu 20.04, downloaded singularity 3.7.3.tar.gz, sha256 matches, unzipped it and followed instructions but keep getting
Failed to get package version. Abort.
Any quick suggestions what I'm missing. I installed GO using a snap, and when I check the version I get
$ go version go version go1.16.3 linux/amd64
What am I missing. Thx, J.

I found a bug / problem!
In the file
/singularity/mconfig
is some code to check the version?
# if test -z "${package_version}" ; then
# echo "Failed to get package version. Abort."
# exit 1
# fi
I can't tell why this doesn't work because the file it is looking for is present.
If I comment out this code, the config, compile and install work seamlessly and do produce the correct version information! The syslabs.io people make it incredibly difficult to contact them to suggest a bug.
V2, got it to work, this is new to me but the quirk was I was downloading the .tar.gz into a directory that was already within a git repo. This affects where mconfig looks for the "VERSION" file and causes an error. Created a new directory outside any git repo's, dowloaded, untarred and mconfig,make, and make install all worked fine. Strange thae where it looks for VERSION file is changed?

Related

Issues installing a go program

Im new to go and I have been unable to find any thing online for my issue.
I have downloaded this code https://github.com/hashicorp/http-echo and I would like to set it up so I can run this command.
$ http-echo -listen=:8080 -text="hello world"
I have been getting quite a few different path issues.
Currently I have the code sitting in this directory.
/Users/jon/go/src/github.com/hashicorp
When I try and install it I get this error
$ go install http-echo
can't load package: /usr/local/go/src/http-echo/handlers.go:9:2: non-standard import "github.com/hashicorp/http-echo/version" in standard package "http-echo"
Where should I keep go projects on an OSX computer, and how do I get this to install or compile?
The code currently seems to be in /usr/local/go/src/http-echo. Packages should always reside in the directory $GOPATH/src/package-name, e.g.: $GOPATH/src/github.com/hashicorp/http-echo. (unless you're using go modules).
It should work if you move the source to the correct path (/Users/jon/go/src/github.com/hashicorp/http-echo). Then execute:
go install github.com/hashicorp/http-echo
Even easier would be to use go get to download the package in the first place. Simply run the following command from any directory:
go get github.com/hashicorp/http-echo
And http-echo is automagically installed.
If you still get an error after this, make sure $GOPATH/bin is in your $PATH.

How to build Courguette in Debian

Right now I am trying to compile Courguette in order to generate a diff patch. The source and some documentation can be found in the following link:
Courguette
I downloaded it but I don't find the way of compiling it.
I have Googled and found some references even to this forum, such as:
StackOverflow link
And other references:
Chromium Linux build instructions
After reading things about ninja and gpy I decided to install them, but there are not references to a .ninja file. I find a courguette.gyp file but using gpy I neither get it compiled...
I am following the guide they provide:
Installed the depot_tools and added to the path.
gclient runhooks
gclient sync
And when I execute gn gen out/Default it fails with the following message:
gn.py: Could not find gn executable at: ~/binary_diff_tools/courgette-master/courgette/buildtools/linux64/gn
Then I used git to pull from the repository the buildtools, but I get the same result.
Any help will be appreciated.
Best regards,
Iván
Ok... It seems that is needed to install all Chromium dependencies before being able to compile courgette so... it must be done as follows:
Install depot_tools git clone and you will have them installed.
After including the depot_tools in your patch (.profile or .bashsrc for example as indicate the depot_tools installation tutorial) execute fetch chromium ouside the depot_tools folder ( it always failed me when I executed it inside the same folder).
I want to build it in Debian so I have to do "gclient runhooks" instead of the .sh script for Ubuntu.
ninja -C out/Default courgette
You will find the executable in the folder out/Default, so ./courgette and it will indicate you the right parameters in order to generate your patch properly.
Best regards,
Iván.

go 1.5 : Is "go install" behaviour changed? Removing stale executables?

Till Go 1.4.2 when i run go install after running go build, i could find binary file in my current folder. Hence following Linux command was working
$ go build && go install && ./executable
But after installing go 1.5, when i run same command i get,
-bash: ./executable: No such file or directory
and when i checked, there is no executable to find. Did go install behavior changed in Go 1.5?
Yes, the behaviour has changed in Go 1.5:
If 'go install' (with no arguments, meaning the current directory) succeeds, remove the executable written by 'go build', if present. This avoids leaving a stale binary behind during a sequence like:
go build
<test, mostly works, make small change>
go install
Before this CL, the current directory still has the stale binary from 'go build'. If $PATH contains dot, running the name of the program will find this stale binary instead of the new, installed one.
I can't find anything mentioning that in the release notes though. Might be a documentation issue.
It seems like the solution is to use the binary that go install has produced.
EDIT: Here is the issue on the Go issue tracker if you want to follow on updates. Should be fixed by 1.5.1.

Error while building ruby trunk

I cloned the trunk branch from my fork of Ruby on GitHub and I am following the directions in the README to build ruby-trunk. Step #2 in the How to compile and install is
If ./configure does not exist or is older than configure.in, run
autoconf to (re)generate configure.
The configure file wasn't there in the repo so I ran autoconf. When I execute the generated configure file, I get an error
build git:(trunk) ../configure
config.guess already exists
config.sub already exists
configure: error: cannot run /bin/bash ../tool/config.sub
I use zsh so I thought that may have something to do with the problem. So I did a clean clone of the repo again and followed the same directions using bash but I still got the same error.
I did google this and all replies to this error said that I have to have ruby already installed to build ruby. But I already have several rubies installed on my system and I'm still getting this error each time. I use rbenv to manage the ruby versions.
Has anyone else faced this problem or does anyone else have any suggestions about what I can do to resolve this?

Failure installing Go dependency

I have installed Go on my server using the golang repo for CentOS 6.4. The paths are set correctly and I can run go version. When I try to download the package below I receive this error. Any help is appreciated
go get github.com/fiorix/freegeoip
# github.com/fiorix/freegeoip
cannot create <nil>/go.o: No such file or directory
googling that error I came across a thread that suggests that this is a bug with detecting a missing TMPDIR environment variable, for compiling the source during go get.
run export TMPDIR=/tmp and it should work.
See here:
https://groups.google.com/forum/#!topic/golang-dev/LnxmgwB0r3Q

Resources