You are not logged in.

#1 2017-05-22 23:49:31

sum01
Member
Registered: 2017-05-22
Posts: 26
Website

[SOLVED] Error using older GCC in depends

Trying to make a PKGBUILD for software that requires GCC >= 4.8.0 and <= 5.3.0, so I add...

depends=('gcc>=4.8.0' 'gcc<=5.3.0')

but it throws this error...

error: target not found: gcc=5.3.0
==> ERROR: 'pacman' failed to install missing dependencies.

(technically I got that error with a depends('gcc=5.3.0') but whatever, same issue when tried with the proper depends).

I tried to get around the error by putting the tar.xz snapshot of v5.3.0 in my source=() and doing a

cd $srcdir/packages-f201309ce0fbd907e002ca839d661be58f2147ed/repos/core-x86_64
makepkg -c -s -i PKGBUILD

inside of the build(), but then it results in a different error because it seems that it tries to point to a dead link somewhere on the gnu servers. Is there a proper way to do this with depends, or at least a gross hacky way like my attempt at building it inside of the PKGBUILD?

Am I just stupid? sad

PS: I have submitted an issue to them, but as of now it's still not fixed so I'm forced to try to make this work.

EDIT: I found the dead link in repos/core-x86_64/PKGBUILD. It tries to get ftp://gcc.gnu.org/pub/gcc/snapshots/5-2 … 09.tar.bz2 but the oldest v5 snapshot they have is 5-20160705. Should I fix this, upload the custom GCC as an AUR pkgbuild, and use that as my depends? Or should I possibly try using the newest version 5.x instead of that old one? hmm

Last edited by sum01 (2017-06-10 06:14:48)

Offline

#2 2017-05-23 01:43:53

Trilby
Inspector Parrot
Registered: 2011-11-29
Posts: 29,523
Website

Re: [SOLVED] Error using older GCC in depends

Which gcc do you have installed (`pacman -Q gcc`)?  How do you expect pacman to install gcc<=5.3.0 as that is not in the repos?

EDIT: I may not understand your follow up questions.  I can only really address the parts you've specified what commands you used and what errors you are getting.


"UNIX is simple and coherent..." - Dennis Ritchie, "GNU's Not UNIX" -  Richard Stallman

Offline

#3 2017-05-23 02:23:27

sum01
Member
Registered: 2017-05-22
Posts: 26
Website

Re: [SOLVED] Error using older GCC in depends

I have gcc 6.3.1-2 at the moment.

The follow-up edit was just me trying to figure it out, although I see that there's already a gcc53-alternative-multilib in the AUR, which I'm now wondering if that'll work as a replacement for the official gcc (since it's broken).

Offline

#4 2017-05-23 02:33:50

Trilby
Inspector Parrot
Registered: 2011-11-29
Posts: 29,523
Website

Re: [SOLVED] Error using older GCC in depends

I don't think the official gcc is broken, but the official gcc clearly cannot satisfy the versioned dependency.  If you want to depend on gcc53 then change the dependency to that.


"UNIX is simple and coherent..." - Dennis Ritchie, "GNU's Not UNIX" -  Richard Stallman

Offline

#5 2017-05-23 02:58:10

sum01
Member
Registered: 2017-05-22
Posts: 26
Website

Re: [SOLVED] Error using older GCC in depends

Do I need to do something other than

depends=('gcc53-alternative-multilib')

to get this to install? I did a quick test and it seems to run into the same "target not found" error sad

Offline

#6 2017-05-23 07:11:39

mis
Member
Registered: 2016-03-16
Posts: 234

Re: [SOLVED] Error using older GCC in depends

You get the error because it's not in the official repos. You need to build and install it from AUR.

Offline

#7 2017-06-10 06:13:48

sum01
Member
Registered: 2017-05-22
Posts: 26
Website

Re: [SOLVED] Error using older GCC in depends

So it took me a while, and a tip from someone else, but I figured it out. Just posting here for anyone that needs the solution...

I used 'gcc5' as a dep, made a variable

_toolset="gcc-5"

and then anything that needed compiling was made to use the $_toolset variable instead of 'gcc'.
I also had to use 'sed' to modify a few Jamfile's and a project_config.jam with

sed -i "s/gcc/$_toolset/g" file.name

Offline

Board footer

Powered by FluxBB