gcc 4.5 installation problem under ubuntu - c++

I tried to install gcc 4.5 on ubuntu 10.04 but failed.
Here is a compile error that I don't know how to solve. Is there anyone successfully install the latest gcc on ubuntu?
Following is my steps and the error message, I'd like to know where is the problem....
Step1: download these files:
gcc-core-4.5.0.tar.gz
gcc-g++-4.5.0.tar.gz
gmp-4.3.2.tar.bz2
mpc-0.8.1.tar.gz
mpfr-2.4.2.tar.gz
Step2: Unzip above files
Step3: move gmp, mpc, mpfr to the gcc-4.5.0/ directory.
mv gmp-4.3.2 gcc-4.5.0/gmp
mv mpc-0.8.1 gcc-4.5.0/mpc
mv mpfr-2.4.2 gcc-4.5.0/mpfr
Step4: go to gcc-4.5.0 directory and do configuration:
sudo ./configure
Step5: compile and install
sudo make
sudo make install
The first 4 steps is OK, I can configure it successfully. However, when I try to compile it, following error message comes out, I cannot figure out what the problem is. Should I change the name from "gcc 4.5" to "gcc"?? It's a little strange that we need to do this by ourself. Is there anything I missed during the installation?
xxx#xxx-laptop:/media/Data/Tool/linux/gcc 4.5/gcc-4.5.0$ sudo make
[sudo] password for xxx:
[ -f stage_final ] || echo stage3 > stage_final
/bin/bash: line 2: test: /media/Data/Tool/linux/gcc: binary operator expected
/bin/bash: /media/Data/Tool/linux/gcc: No such file or directory
make[1]: Entering directory `/media/Data/Tool/linux/gcc 4.5/gcc-4.5.0'
make[2]: Entering directory `/media/Data/Tool/linux/gcc 4.5/gcc-4.5.0'
make[3]: Entering directory `/media/Data/Tool/linux/gcc 4.5/gcc-4.5.0'
rm -f stage_current
make[3]: Leaving directory `/media/Data/Tool/linux/gcc 4.5/gcc-4.5.0'
make[2]: Leaving directory `/media/Data/Tool/linux/gcc 4.5/gcc-4.5.0'
make[2]: Entering directory `/media/Data/Tool/linux/gcc 4.5/gcc-4.5.0'
Configuring stage 1 in host-x86_64-unknown-linux-gnu/intl
/bin/bash: /media/Data/Tool/linux/gcc: No such file or directory
make[2]: *** [configure-stage1-intl] Error 127
make[2]: Leaving directory `/media/Data/Tool/linux/gcc 4.5/gcc-4.5.0'
make[1]: *** [stage1-bubble] Error 2
make[1]: Leaving directory `/media/Data/Tool/linux/gcc 4.5/gcc-4.5.0'
make: *** [all] Error 2

It might not be a good idea to have a space in your path - it's kind of rare and can easily mess up shell scripts that aren't specially designed to deal with it (which is a bad combination!)
Another potential problem is that you're running configure inside the gcc source directory - this isn't recommended (and didn't work at all for me on at least one version of gcc 4). Instead make an empty build directory, parallel to the source directory, so you have something like:
gcc 4.5 <- but might want to avoid the space
gcc-4.5.0
...
build
Then cd into build and run
../gcc-4.5.0/configure
You may also need to start from a freshly unzipped source directory, as the previous failed build may have broken it.

Related

How to install memcached from binaries and include in c file

I am trying to install memcached on ubuntu 16.04. I need to install it manually as I want to modify the files. I also don't want to install it locally as my changes might not be what other people want from their memcached.
I have tried following the instructions from the github https://github.com/memcached/memcached/wiki/Install (changing the prefix and libevent path to be in my home directory).
Libevent installation:
./configure --prefix=/path/to/home/local_include
make
make install
This seemed to work as the memcached config did not complain.
memcached installation:
wget https://memcached.org/latest
tar -zxf memcached-1.5.13.tar.gz
./configure --prefix=/path/to/home/local_include --with-libevent=/path/to/home/local_include
make
make test
make install
Doing this I saw no errors. This is the result when I finished make install:
make install-recursive
make[1]: Entering directory `/path/to/home/memcached-1.5.13'
Making install in doc
make[2]: Entering directory `/path/to/home/memcached-1.5.13/doc'
make install-am
make[3]: Entering directory `/path/to/home/memcached-1.5.13/doc'
make[4]: Entering directory `/path/to/home/memcached-1.5.13/doc'
make[4]: Nothing to be done for `install-exec-am'.
/usr/bin/mkdir -p '/path/to/home/local_includes/share/man/man1'
/usr/bin/install -c -m 644 memcached.1 '/path/to/home/local_includes/share/man/man1'
make[4]: Leaving directory `/path/to/home/memcached-1.5.13/doc'
make[3]: Leaving directory `/path/to/home/memcached-1.5.13/doc'
make[2]: Leaving directory `/path/to/home/memcached-1.5.13/doc'
make[2]: Entering directory `/path/to/home/memcached-1.5.13'
make[3]: Entering directory `/path/to/home/memcached-1.5.13'
/usr/bin/mkdir -p '/path/to/home/local_includes/bin'
/usr/bin/install -c memcached '/path/to/home/local_includes/bin'
/usr/bin/mkdir -p '/path/to/home/local_includes/include/memcached'
/usr/bin/install -c -m 644 protocol_binary.h '/path/to/home/local_includes/include/memcached'
make[3]: Leaving directory `/path/to/home/memcached-1.5.13'
make[2]: Leaving directory `/path/to/home/memcached-1.5.13'
make[1]: Leaving directory `/path/to/home/memcached-1.5.13'
when I run ps ax | grep memcached however no trace of the program being installed is apparent.
I also tried reinstalling and change the make install instruction to:
make install --prefix=PREFIX
and
make install --prefix=/path/to/home/local_lib
though neither of them were registered as acceptable arguments (though the INSTALL instructions seemed to indicate they would be).
If anyone has any ideas I would appreciate them. Thanks.
You built the binary but have not started it.
Try starting it via:
sudo service memcached restart
If that doesn't work, then run this:
sudo /etc/init.d/memcached restart

Error while building LLVM/clang

I was trying to build LLVM/clang in HOME directory without sudo access following this link (http://clang.llvm.org/get_started.html)
But when I type 'make' this happens
Error running link command: No such file or directory
make[2]: *** [lib/libLLVMSupport.a] Error 2
make[2]: Leaving directory `/home/skataka/porple_tools/build'
make[1]: *** [lib/Support/CMakeFiles/LLVMSupport.dir/all] Error 2
make[1]: Leaving directory `/home/skataka/porple_tools/build'
make: *** [all] Error 2
$ Write failed: Broken pipe
I have used make VERBOSE=1 and it says CMAKE-AR NOT FOUND
Edit:
Changed CMakeCXXCompiler.cmake file - SET(CMAKE_AR "path to llvm-ar")
Now I am getting "Error running link command: Permission denied"
Help me with this !
Looks like your build directory generated by cmake is broken it seems to not be able to find the linker. I'd clobber the build directory and regenerate it with cmake paying attention to if it spits out any errors while configuring.

What is the best way to build the GNU Scientific Library for use on MinGW?

I'm trying to get GSL version 1.16 built using MinGW but I'm running into some problems. I followed these instructions which involve invoking these commands from within sh.exe.
tar zxvf <the name of your gsl source package>
cd gsl-<the version number of your gsl source package>
./configure --enable-static=yes --enable-shared=yes --prefix=/c/GSL-<version number of gsl source package>
make
make install
I obtained these messages before make gave up.
/usr/bin/sed: can't read <my last name>/gsl-1.16/cblas/libgslcblas.la: No such file or directory
libtool: link: `<my last name>/gsl-1.16/cblas/libgslcblas.la' is not a valid libtool archive
make[2]: *** [libgsl.la] Error 1
make[2]: Leaving directory `/usr/home/<my full name>/gsl-1.16'
make[1]: *** [all-recursive] Error 1
make[1]: Leaving directory `/usr/home/<my full name>/gsl-1.16'
make: *** [all] Error 2
Can anyone explain this? Could it be something to do with one of the file paths involving a space between my first last names? Alternatively, does anyone know of me another way to install the GSL which has definitely worked for them?

Makefile install target sometimes working, sometimes not

I'm currently working on a project that should also provide a source package to be packaged into linux systems. Since I'm using monodevelop, I used
mdtool generate-makefiles AudioCuesheetEditor.sln --simple-makefiles
to generate makefiles,etc. But there is a little problem. On some system everything works fine when running the last step
make install
but sometimes not. The output then says
[root#VMFedora17 Downloads]# make install
make[1]: Entering directory `/home/sven/Downloads'
make[1]: Leaving directory `/home/sven/Downloads'
make[1]: Entering directory `/home/sven/Downloads'
make pre-install-local-hook prefix=/usr/local
make[2]: Entering directory `/home/sven/Downloads'
make[2]: Leaving directory `/home/sven/Downloads'
make install-satellite-assemblies prefix=/usr/local
make[2]: Entering directory `/home/sven/Downloads'
mkdir -p '/usr/local/lib'
cp bin/Release /usr/local/lib/AudioCuesheetEditor
cp: omitting directory `bin/Release'
make[2]: *** [/usr/local/lib/AudioCuesheetEditor] Error 1
make[2]: Leaving directory `/home/sven/Downloads'
make[1]: *** [install-local] Error 2
make[1]: Leaving directory `/home/sven/Downloads'
make: *** [install-recursive] Error 1
This was run on a Fedora 17 Linux with KDE installed. On another Fedora 17 KDE everything went perfect.
Could somebody help me, where the error is?
Makefile can be found here: http://sourceforge.net/p/audiocuesheet/code/140/tree/trunk/Quellcode/AudioCuesheetEditor.make
Thanks for your help!
From your output and the link you provided, I found the error in the following snippet:
install-local: $(ASSEMBLY) $(ASSEMBLY_MDB)
make pre-install-local-hook prefix=$(prefix)
make install-satellite-assemblies prefix=$(prefix)
mkdir -p '$(DESTDIR)$(libdir)/$(PACKAGE)'
$(call cp,$(ASSEMBLY),$(DESTDIR)$(libdir)/$(PACKAGE))
I guess $(ASSEMBLY) was a directory, but I am not sure. And the command cp without the parameter -r will not copy the directory recursively. You can try to modify
$(call cp,$(ASSEMBLY),$(DESTDIR)$(libdir)/$(PACKAGE))
to
$(call cp,-r,$(ASSEMBLY),$(DESTDIR)$(libdir)/$(PACKAGE))
or
cp -r $(ASSEMBLY) $(DESTDIR)$(libdir)/$(PACKAGE)
Additionally, if you want to find out why the original works on one machine but not on the another, you can add a command:
echo $(ASSEMBLY)
before the above command to see if the output of them are different on different machines.

Cannot build LLVM and Clang

I have tried to compile clang and llvm using the clang getting started manual. However, at step 5, when I do make, I get the following error. Any idea what is going on here, and how to fix it? Note that I am using Ubuntu 10.04 on a 64 bit x86 system.
cp: cannot stat `/home/MetallicPriest/Desktop/build/tools/clang/runtime/compiler-rt/clang_linux/full-x86_64/libcompiler_rt.a': No such file or directory
make[4]: *** [/home/MetallicPriest/Desktop/build/Debug+Asserts/lib/clang/3.1/lib/linux/libclang_rt.full-x86_64.a] Error 1
rm /home/MetallicPriest/Desktop/build/Debug+Asserts/lib/clang/3.1/lib/linux/.dir
make[4]: Leaving directory `/home/MetallicPriest/Desktop/build/tools/clang/runtime/compiler-rt'
make[3]: *** [compiler-rt/.makeall] Error 2
make[3]: Leaving directory `/home/MetallicPriest/Desktop/build/tools/clang/runtime'
make[2]: *** [all] Error 1
make[2]: Leaving directory `/home/MetallicPriest/Desktop/build/tools/clang'
make[1]: *** [clang/.makeall] Error 2
make[1]: Leaving directory `/home/MetallicPriest/Desktop/build/tools'
make: *** [all] Error 1
## Heading ##
The instruction given on this site work!
I had the same problem. As Eli suggested, I got the 3.0 release. It doesn't come with a 'getting started' but you can follow the INSTALL file from clang's root top.
You should be able to copy/paste the following (as root of course for the /usr/local/ part)
export NUMCPU=4 # or however many cores you want to paralell build with
export ORIGDIR=$PWD
wget http://llvm.org/releases/3.0/llvm-3.0.tar.gz
tar -zxf llvm-3.0.tar.gz
cd llvm-3.0.src/tools
wget http://llvm.org/releases/3.0/clang-3.0.tar.gz
tar -zxf clang-3.0.tar.gz
mv clang-3.0.src clang
cd $ORIGDIR
mkdir build
cd build
../llvm-3.0.src/configure --prefix=/usr/local
make -j$NUMCPU
cd tools/clang
make install
--
update, I should also note that following the 'getting started guide' with latest subversion (2012 09 10) actually does work , and i copy/pasted the lines exactly from the 'getting started' page http://clang.llvm.org/get_started.html (including 'optional' stuff) on a Fedora machine on ppc64.