Package Details: gcc45 4.5.4-3

Package Base: gcc45
Description: The GNU Compiler Collection (4.5.x)
Upstream URL: http://gcc.gnu.org
Category: devel
Licenses: GPL LGPL custom
Submitter: ytj
Maintainer: cbab
Last Packager: None
Votes: 13
First Submitted: 2011-05-11 04:43
Last Updated: 2014-02-26 03:33

Required by (0)

Sources

Latest Comments

Comment by cbab

2014-02-26 03:34

Added fix for staticlibs. Thanks to @lmunch for the suggestion.

Comment by lmunch

2014-01-28 20:09

Please add 'staticlibs' to options to fix: /usr/bin/ld: cannot find -lgcc

Also change provides=('gcc=4.5') to provides=('gcc-4.5') to fix installation when gcc is already installed.

Comment by cbab

2013-04-29 02:16

Updated with kristianlm2 suggestions. I had to disable documentation building. This regression is caused by a recent upgrade of texinfo.

Anonymous comment

2013-04-24 09:19

leoc, I got the same problem as you (when building gcc44) and found a temporary solution. See https://aur.archlinux.org/packages/gcc44/

Anonymous comment

2013-04-23 10:06

I get the following error. I tried the packages gcc45 and gcc44. Currently I have gcc-4.8-20130411 installed.

../../libiberty/fibheap.c: In function ‘fibheap_replace_key_data’:
../../libiberty/fibheap.c:38:24: error: ‘LONG_MIN’ undeclared (first use in this function)
#define FIBHEAPKEY_MIN LONG_MIN
^
../../libiberty/fibheap.c:220:30: note: in expansion of macro ‘FIBHEAPKEY_MIN’
if (okey == key && okey != FIBHEAPKEY_MIN)
^
../../libiberty/fibheap.c:38:24: note: each undeclared identifier is reported only once for each function it appears in
#define FIBHEAPKEY_MIN LONG_MIN
^
../../libiberty/fibheap.c:220:30: note: in expansion of macro ‘FIBHEAPKEY_MIN’
if (okey == key && okey != FIBHEAPKEY_MIN)
^
../../libiberty/fibheap.c: In function ‘fibheap_delete_node’:
../../libiberty/fibheap.c:38:24: error: ‘LONG_MIN’ undeclared (first use in this function)
#define FIBHEAPKEY_MIN LONG_MIN
^
../../libiberty/fibheap.c:261:36: note: in expansion of macro ‘FIBHEAPKEY_MIN’
fibheap_replace_key (heap, node, FIBHEAPKEY_MIN);
^
../../libiberty/fibheap.c:265:7: warning: implicit declaration of function ‘abort’ [-Wimplicit-function-declaration]
abort ();
^
../../libiberty/fibheap.c:265:7: warning: incompatible implicit declaration of built-in function ‘abort’ [enabled by default]
../../libiberty/fibheap.c: In function ‘fibheap_delete’:
../../libiberty/fibheap.c:277:5: warning: incompatible implicit declaration of built-in function ‘free’ [enabled by default]
free (fibheap_extr_min_node (heap));
^
../../libiberty/fibheap.c: In function ‘fibheap_consolidate’:
../../libiberty/fibheap.c:368:3: warning: implicit declaration of function ‘memset’ [-Wimplicit-function-declaration]
memset (a, 0, sizeof (fibnode_t) * D);
^
../../libiberty/fibheap.c:368:3: warning: incompatible implicit declaration of built-in function ‘memset’ [enabled by default]
make[3]: *** [fibheap.o] Error 1
make[3]: Leaving directory `/tmp/yaourt-tmp-arthur/aur-gcc45/src/gcc-4.5.4/build/libiberty'
make[2]: *** [all-stage1-libiberty] Error 2
make[2]: Leaving directory `/tmp/yaourt-tmp-arthur/aur-gcc45/src/gcc-4.5.4/build'
make[1]: *** [stage1-bubble] Error 2
make[1]: Leaving directory `/tmp/yaourt-tmp-arthur/aur-gcc45/src/gcc-4.5.4/build'
make: *** [all] Error 2

Comment by ytj

2012-07-13 01:31

@andrej84 It seems that you didn't download the patch, just PKGBUILD. You can use ``yaourt -G gcc45`` to download all files for build if you want to build from PKBBUILD.

Comment by andrej84

2012-07-12 16:14

Sorry my bad, it works from yaourt but trying to install it from the PKGBUILD

Comment by andrej84

2012-07-12 15:50

I get this error..
==> ERROR: gcc-hash-style-both.patch was not found in the build directory and is not a URL.

Anonymous comment

2012-07-09 14:41

Update to latest version (4.5.4).

Comment by mrbit

2011-08-27 14:12

config.status: creating Makefile
make[1]: Entering directory `/tmp/packerbuild-0/gcc45/gcc45/src/gcc-build'
/bin/sh /tmp/packerbuild-0/gcc45/gcc45/src/gcc-4.5.3/mkinstalldirs /tmp/packerbuild-0/gcc45/gcc45/pkg/usr /tmp/packerbuild-0/gcc45/gcc45/pkg/usr
mkdir -p -- /tmp/packerbuild-0/gcc45/gcc45/pkg/usr /tmp/packerbuild-0/gcc45/gcc45/pkg/usr
/bin/sh: line 3: cd: ./fixincludes: File o directory non esistente
make[1]: *** [install-fixincludes] Errore 1
make[1]: Leaving directory `/tmp/packerbuild-0/gcc45/gcc45/src/gcc-build'
make: *** [install] Errore 2
==> ERRORE: Si è verificato un errore in package().
L'operazione sta per essere interrotta...
The build failed.
Dependencies for `xbmc-pvr-git' are not met, not building...

Comment by rwarlord

2011-07-09 03:15

Not sure why, but I am getting the below error during configure:
> checking LIBRARY_PATH variable... contains current directory
> configure: error:
> *** LIBRARY_PATH shouldn't contain the current directory when
> *** building gcc. Please change the environment variable
> *** and run configure again.

I fixed by it adding:

unset LIBRARY_PATH

on the line before ${base_dir}/configure ...

Comment by cookiecaper

2011-05-21 09:09

Thanks for this PKGBUILD. FYI, people with older versions of gcc still installed may get errors. For instance, I got these errors on install:

gcc45: /usr/lib/gcc/x86_64-unknown-linux-gnu/lib/libgcc_s.so exists in filesystem
gcc45: /usr/lib/gcc/x86_64-unknown-linux-gnu/lib/libgcc_s.so.1 exists in filesystem

pkgfile informed me that they are from a local copy of gcc43, which I still had installed from back in the day. Perhaps conflicts with gcc43 and/or gcc44 will be useful, or placing those files in a non-conflicting path.

Thanks again. :)

Comment by ytj

2011-05-20 10:41

First, "make install" is different. It will not compile anything (Because we already did in build()), just copy files. In most common case, we set -j(n) because we have a multi-core processor and we can get benefit during the compiling. But -j1 is enough for copy files. I didn't see any reason to copy multi files at the same time. Even though you have a special file system like RAID or LVM.

Second, to be honest, I have to admit that I merely "guessed" GCC needs them. Technically, GCC must use flex to scan token and bison to generate AST. I think they are necessary. However, we needn't to put flex and bison in makedepends because they belong to base-devel. Arch wiki said 'Packages in the AUR assume "base-devel" is installed, and will not list members of this group as dependencies even if the package cannot be built without them.' Anyway it has no side effect, just takes a few seconds to check.

I used "namcap PKGBUILD" to check my package before posting it to AUR. It said nothing.

In fact, I know nothing about fortran. I am wondering if it works.

Comment by hseara

2011-05-20 09:30

Hi again,
is there any reason why you put implicitly -j1 in "make -j1 DESTDIR=${pkgdir} install"?
This option can be define locally in mapepkg.conf -> i.e. MAKEFLAGS="-j3"
So unless there is any known reason to force to use one single processor for compilation to everybody please remove -j1.

Additionally are you sure you need 'flex' 'bison' in makedepends? I don't see why at all?
Finally, it could be nice if you check what namcap says about the final package.

Comment by hseara

2011-05-19 05:59

Please include gfortran. Many of the applications I use contains parts of the code in this language and it is therefore a must for me. Thanks in advance