I was trying to build binutils as I was building the mingw-w64 toolchain, when I run into this weird problem involving sed when configuring (configure output). sed --version returns version 4.5. Am I doing anything wrong?
So there is a mingw64 version of sed and it was conflicting with msys2 sed. I deleted that and now it works fine
Related
I'm trying to build an RPM for our program and running into some issues. I'm trying to run the sed and ln commands as a script in the postinstall/preremove and they don't seem to be making any changes. We are using the maven rpm plugin to build the RPM. I read somewhere that turning selinux off might help but it still doesn't work. We are using CentOS 7.
from the pom.xml:
<postinstallScriptlet>
<script>sed -i 's/foo/bar/g' /path/to/file</script>
</postinstallScriptlet>
<preremoveScriptlet>
<script>sed -i 's/bar/foo/g' /path/to/file</script>
</preremoveScriptlet>
This works when I run it by hand but not as part of the rpm
That should work with fresh install. However it will not work when you are upgrading packages. Because of the ordering. See https://fedoraproject.org/wiki/Packaging:Scriptlets#Scriptlet_Ordering
Rpm first call postinstallScriptlet of new package, install it, and then call preremoveScriptlet of old version of package and then remove the old version.
So you basically call sed -i 's/foo/bar/g' /path/to/file immediatelly followed by sed -i 's/bar/foo/g' /path/to/file.
You likely want something like:
<preremoveScriptlet>
<script>
if [ 0$1 -eq 0 ] ; then
sed -i 's/bar/foo/g' /path/to/file
fi
</script>
</preremoveScriptlet>
which will call the sed only if you are really uninstalling the package. And not during upgrades. Similary for post install scriptlet. See https://fedoraproject.org/wiki/Packaging:Scriptlets#Syntax
I upgraded to El Capitan on two laptops. For some reason on one I am having trouble installing any node versions with nvm (installed through homebrew). If I nvm install v0.12.7 this is what I get:
######################################################################## 100.0%
perl version 5.18.2 can't run /USR/BIN/shasum. Try the alternative(s):
/USR/BIN/shasum5.16 (uses perl 5.16)
/USR/BIN/shasum5.18 (uses perl 5.18)
Run "man perl" for more information about multiple version support in
Mac OS X.
Checksums do not match.
Binary download failed, trying source.
Downloading https://nodejs.org/dist/v0.12.7/node-v0.12.7.tar.gz...
######################################################################## 100.0%
perl version 5.18.2 can't run /USR/BIN/shasum. Try the alternative(s):
/USR/BIN/shasum5.16 (uses perl 5.16)
/USR/BIN/shasum5.18 (uses perl 5.18)
Run "man perl" for more information about multiple version support in
Mac OS X.
Checksums do not match.
I don't know what happened, but I've looked into the error message and various mentions of how to fix the Perl issue but have came up with nothing.
I had the same problem - for some reason, on my Mac I had at least 2 versions of Perl, if not 3 - 5.16, 5.18 and I think also 5.18.2.
This broke many of the Perl libraries and command line tools, some of them used by homebrew, such as shasum.
I believe this could have happened during an XCode upgrade, because this could have changed the Perl installation.
I fixed it by re-installing a new version of Perl manually. I chose the latest one and followed these instructions:
I had the same problem, no idea how it happened. I suspect it somehow happened during an XCode Update. I fixed this by re-installing Perl on my Mac manually. I used the latest version as described here:
curl -O http://www.cpan.org/src/perl-5.26.1.tar.gz
tar -xzf perl-5.26.1.tar.gz
cd perl-5.26.1
./Configure -des -Dprefix=/usr/local/
make
make test
sudo make install
See also http://search.cpan.org/~shay/perl/README.macosx
I have installed multiple versions of Scala (2.9 and 2.10) on my mac (OS X 10.7.5) using macports. I like this way because can switch easily between these two versions by the simple "port select" command.
But, the SCALA_HOME environment variable does not get set automatically with this command.
Is there a proper nice macport command to set correctly the SCALA_HOME variable?
If no, what directory should the SCALA_HOME point to in a macport installed scala?
Thanks
EDIT:
Until now the best way I found is with a shell script that looks what is the current scala command and adjust the SCALA_HOME variable accordingly. I run it always after switching the Scala version.
Here is the important command in the script. I'm not an expert shell programmer, therefore I'll be thankful for any suggestion:
export SCALA_HOME=$(ls -l `which scala` | gawk 'match($0, "(/opt/local/share/.*)/bin/scala", a) {print a[1]}')
I don't know of a way to have MacPorts do it for you, but Scala is installed at /opt/local/share/scala-2.10/ for me. So I added
export SCALA_HOME="/opt/local/share/scala-2.10/"
to my ~/.profile and everything seems to be working for me now (although you'd have to switch change your $SCALA_HOME every time you switch versions).
OK, until now the best solution I found is to run following command after changing scala version:
export SCALA_HOME=$(ls -l `which scala` | gawk 'match($0, "(/opt/local/share/.*)/bin/scala", a) {print a[1]}')
I have included that command also in my .bash_profile so my SCALA_HOME always points to the scala version I am using currently.
This command uses gawk 4.1.1 installed from MacPorts.
Currently when scala is installed via brew it's path set to
/usr/local/Cellar/scala/[version]
So SCALA_HOME could be defined as follows:
export SCALA_HOME=$(greadlink -f $(dirname "$(greadlink -f $(which scala))")/../../)
p.s: You need to install 'greadlink' for that since the regular readlink doesn't support the 'f' flag.
if you are installing the versions with home brew you can simply:
brew switch scala 2.10.3
My perl version is 5.16.2 on my Windows 7 64bit, I failed to install PAR:Packer. I tried active perl and strawberry perl , both got the same error. Can you please give me some suggestion. Below is my experience:
I tried ppm install PAR:Packer, version 1.013, But when I use pp, I got the error:
Perl lib version (5.16.2) doesn't match executable version (v5.16.0).
I also tried cpan install PAR:Packer, version 1.014. But I got the error during installation. The pop up window says: par.exe has stopped working. Then command prompt got the error:
C:\Perl64\bin\perl.exe -Mblib run_with_inc.pl par.exe -q -B -Oparldyn.exe
system(par.exe -I C:\Users\PAR-Packer-1.014\blib\arch -I C:\Users\PAR-Packer-1.014\blib\lib - IC:/Perl64/site/lib -IC:/Perl64/lib -I. -q -B -Oparldyn.exe) failed:
dmake.exe: Error code 255, while making 'parldyn.exe'
dmake.exe: Error code 255, while making 'subdirs'
I have googled extensively, but as of yet haven't been able to find a solution, any help is greatly appreciated, thanks a lot!
I simply changed the line 60 in .../perl64/Config.pm from
`$^V eq 5.16.3`
to
`$^V eq 5.16.3 or $^V eq 5.16.0`
and voila! My par-packer module 1.013 installed through ppm (ActiveState Perl 5.16.3) works ...
I'll start off with my own environment:
Windows 7 x64 en_US
Strawberry Perl v5.16.2 32bit
I just confirmed that I do have PAR::Packer working on my environment. I'm running PAR::Packer version 1.014.
There is a bug logged about PAR::Packer 1.013 failing to build on certain environments. The bug is logged on CPAN here: https://rt.cpan.org/Public/Bug/Display.html?id=77408
I recommend trying one of the following paths forward (based on your build version requirements):
Install PAR::Packer 1.0.14.
Install the patched version of PAR::Packer 1.013 that is available at http://strawberryperl.com/package/kmx/perl-modules-patched/PAR-Packer-1.013_patched.tar.gz
To build you will need any dependencies as well. Hopefully those work just fine through CPAN.
Download either the patched version listed above or the latest version from the CPAN site, then execute:
perl Makefile.pl
dmake
dmake test
dmake install
Keep in mind PAR::Packer requires a C/C++ compiler to build.
I ran into this exact same error scenario with Perl 5.16.3 on my Windows 7 64 bit machine. I started my Perl tinkering with ActiveState and later installed other related programs like Komodo Edit and finally installed StrawberryPerl. After reading quite a few of these online posts I tried the manual dmake methods and whatever other suggestions I could find. I then tried uninstalling ActiveState. That didn't help either. Finally, I went on an uninstall binge and found that after uninstalling all of the ActiveState and Komodo applications (along with a bunch of other stuff I wasn't using anymore) I was able to successfully install and use pp in two simple steps from the cpan prompt:
install CPAN
install pp
I was going to uninstall and re-install StrawberryPerl next but didn't have to. The install CPAN may not be necessary but it was suggested in the log output in one of my previously failed attempts so I figured I'd try that first. Hope this saves someone all the hassle I went to as a begginer.
I've followed the steps on the Cygwin wiki for updating my version of gcc. Now I have two installations of gcc in Cygwin: 3.4 in /bin and 4.7 in /usr/local/bin. Now, in Eclipse the only way to use it seems to be changing the invocation command from g++ to C:/cygwin/usr/local/bin/g++, and this has to be done for all projects. Is there any way to make Eclipse CDT use this by default? I have changed the Path environment variable, and typing g++ --version in a command line gives 4.7, but building a project in Eclipse with --version still gives 3.4