Subject: [alpine-user] issues with compiler & crt

From: Riccardo Mottola <[email-masked]>
Date: Fri, 22 Feb 2019 02:39:10 +0100

Hi,

I am trying to compile ArcticFox on Alpine (a PaleMoon / FireFox port 
which has proven quite portable)
It is best compiled with gcc 4.8 to 6.5, so I installed gcc6

configure fails for me with:

  0:34.35 configure:3177: checking for gcc
  0:34.36 configure:3290: checking whether the C compiler (gcc-6  ) works
  0:34.36 configure:3306: gcc-6 -o conftest    conftest.c  1>&5
  0:34.37 Warning: -Wimplicit-int in configure: return type defaults to 
'int'
  0:34.38 configure:3303:1: warning: return type defaults to 'int' 
[-Wimplicit-int]
  0:34.38 
/usr/lib/gcc/i586-alpine-linux-musl/6.4.0/../../../../i586-alpine-linux-musl/bin/ld: 
cannot find Scrt1.o: No such file or directory
  0:34.38 
/usr/lib/gcc/i586-alpine-linux-musl/6.4.0/../../../../i586-alpine-linux-musl/bin/ld: 
cannot find crti.o: No such file or directory
  0:34.38 
/usr/lib/gcc/i586-alpine-linux-musl/6.4.0/../../../../i586-alpine-linux-musl/bin/ld: 
cannot find -lssp_nonshared
  0:34.38 collect2: error: ld returned 1 exit status
  0:34.38 configure: failed program was:
  0:34.38
  0:34.38 #line 3301 "configure"
  0:34.39 #include "confdefs.h"
  0:34.39
  0:34.39 main(){return(0);}
  0:34.39 configure: error: installation or configuration problem: C 
compiler cannot create executables.

Suggestions?

Riccardo

---
Unsubscribe:  [email-masked]
Help:         [email-masked]
---

---

From: PICCORO McKAY Lenz <[email-masked]>
Date: Thu, 21 Feb 2019 22:00:34 -0400

as i know palemoon does not compile with gcc 5+  so i guess you should use
a gcc 4.9 or less

in debian we can handle many compilers that are linked to a unique stdlib++

Lenz McKAY Gerardo (PICCORO)
http://qgqlochekone.blogspot.com

---

From: Riccardo Mottola <[email-masked]>
Date: Fri, 22 Feb 2019 10:00:47 +0100

Hello,

PICCORO McKAY Lenz wrote:
> as i know palemoon does not compile with gcc 5+  so i guess you should 
> use a gcc 4.9 or less
>

"wrong" guess :) Palemoon 27 indeed needed gcc 4.x series, however this 
fork has updated code and compiles up to gcc 6.5, this has been tested 
on Linux /Devuan, Debian, Ubuntu and Gentoo). as well as NetBSD.

> in debian we can handle many compilers that are linked to a unique 

IN any case, here it is not an issue with the code, but with the 
compiler tests failing due to linker symbols. I guess this is soemthing 
Alpine specific.

Riccardo

---

---

From: PICCORO McKAY Lenz <[email-masked]>
Date: Fri, 22 Feb 2019 08:29:42 -0400

> on Linux /Devuan, Debian, Ubuntu and Gentoo). as well as NetBSD.
i checked that browser ArticFox, seems like a modern up to date version of
palemoon with some features from others browsers..

the browser seems very new, seems works as a modern alternative to current
ones, commits are very new, currently firefox x86 on alpine does not works
and hangs any machines that not are minimal with 2GHz with two cores! so
for olders options i guess are not an option and palemoon are the only one
on those cases!..

> compiler tests failing due to linker symbols. I guess this is soemthing
ummm no idea, do you reported agains
https://github.com/wicknix/Arctic-Fox/issues ?

---

From: Riccardo Mottola <[email-masked]>
Date: Fri, 22 Feb 2019 16:33:38 +0100

Hi!

PICCORO McKAY Lenz wrote:
> El vie., 22 de feb. de 2019 a la(s) 05:00, Riccardo Mottola 
> ([email-masked] <mailto:[email-masked]>) escribió:
>
> i checked that browser ArticFox, seems like a modern up to date 
> version of palemoon with some features from others browsers..
>
> the browser seems very new, seems works as a modern alternative to 
> current ones, commits are very new, currently firefox x86 on alpine 
> does not works and hangs any machines that not are minimal with 2GHz 
> with two cores! so for olders options i guess are not an option and 
> palemoon are the only one on those cases!..

I know that, 99% of the commits there are from me, I am working on that 
fork :)

> https://github.com/wicknix/Arctic-Fox/issues ?

no, I ddin't, since it would mean solving the issue myself. That's just 
Matt's repo from which I fork to code on :)

This is an Alpine specific issue. I'd like to offer the browser I am 
working on also on Alpine Linux since it might be of good, but I'd need 
some help.

Thank you,

Riccardo

---

---

From: PICCORO McKAY Lenz <[email-masked]>
Date: Fri, 22 Feb 2019 11:36:58 -0400

Sounds good!  i try the same and got same results! i really want too test
in alpine due firefox are a crap!

please some that helps in that problems! i'm very impacient! too!

---

From: Finn O'Leary <[email-masked]>
Date: Sat, 23 Feb 2019 23:11:00 +0000

On Fri, 2019-02-22 at 02:39 +0100, Riccardo Mottola wrote:
> [...]
> [...]
> [...]

Hi there.
Are you sure /usr/lib/ contains (crti.o|Scrt1.o|libssp_nonshared.a)?
They are contained in the package `musl-dev`, ensure you have this 
package
before building. If not that, then it is likely that your build process 
is
checking /usr/lib32 and /usr/lib64 but not /usr/lib

Hope this helps

- Finn
PGP fingerprint: 739B 6C5C 3DE1 33FA
"Too enough is always not much!"

---

---

From: Riccardo Mottola <[email-masked]>
Date: Mon, 25 Feb 2019 23:46:23 +0100

Hi Finn!

Finn O'Leary wrote:
> They are contained in the package `musl-dev`, ensure you have this package
> before building. If not that, then it is likely that your build process is

yes, It helps! but not enough.
I have a conflict with gcc8 and gcc6, that is "gcc" (which is acutally 
gcc8) and the gcc6 I do need to compile this.

I would have expected to be able to intall two compilers.
gcc6 itself goes, but not g++6, since apparently the two libstdcc+8 and 
libstdc++-6 cannot exist together? The former is needed for icu, shich 
is important, so, apparently one cannot have two different g++ versions

I tried removing them, just as a test,  but still cannot, it seems g++6 
itself depends on libstdc++ 8, but so I entr some sort of loop.

Can two versions of the compiler exist? Can gc6 be used alone, at least 
(even if having gcc8 is preferrable, since good for other packages)

Riccardo

---

---

From: PICCORO McKAY Lenz <[email-masked]>
Date: Mon, 25 Feb 2019 20:44:41 -0400

> I would have expected to be able to intall two compilers.
that was i pointed before in the second email ...

> libstdc++-6 cannot exist together? The former is needed for icu, shich
that are possible but bit difficult, as i can see in the debian rules, you
can do that (as i far guess):
compiler by default are gccX with "x" mayor of 6 ...
now the second compiler you have to build with static i guess,
and then due the system libstdc++6 and other libs installed will be used
to link the compiled older gcc (due the newer lib have support for the
older basically),
some other thing are but more complicated but are in fact possible
due i see gcc 4.X and 8 in same system in debian..

ii try to point some "how" in this mail but the rules are very very large,
divided into
many subrules.. sorry but at least i point that can be do it!

well that are in teory, due some support beetween versions are removed as i
see
in the changelog html lib in the gnu gcc page..

---

From: Riccardo Mottola <[email-masked]>
Date: Wed, 27 Feb 2019 22:24:13 +0100

Hi,

PICCORO McKAY Lenz wrote:
> ii try to point some "how" in this mail but the rules are very very 
> large, divided into
> well that are in teory, due some support beetween versions are removed 
> as i see

sorry, but I don't fully understand your explanation. There are many 
ways to have different compilers live in the same distribution, thanks 
to the different prefix, for example, or even by installing in different 
subdirectories.

Currently, my issue is this:

~# apk add g++6
ERROR: unsatisfiable constraints:
   libstdc++-8.3.0-r0:
     breaks: g++6-6.4.0-r9[libstdc++=6.4.0-r9]
     satisfies: gcc-8.3.0-r0[so:libstdc++.so.6]
   gcc-8.3.0-r0:
     breaks: g++6-6.4.0-r9[gcc=6.4.0-r9]

I wonder if this is an error my side and it can be solved? or 
essentially the gcc6 package provided is broken.

Riccardo

---

---

From: PICCORO McKAY Lenz <[email-masked]>
Date: Wed, 27 Feb 2019 23:03:10 -0400

seems you dont read and pay attention of my prevously mail.. gcc in alpines
seems support that other olders gcc can be linked with the default
libstdc++ but you try to use older version that need a hard fixed dependency
so you must compile by yourselft then!

>      breaks: g++6-6.4.0-r9[gcc=6.4.0-r9]
its not an issue, its a  "limitation of the behaviour" in the distro due
alpine assumes that always will be only one compiler

when i try to provide some "made by me" package noted that will need more
time and i not have it so that's why i used debian to those complicated
thins like compile a binary and redistribute! until alpine can support many
things like that (seems not?)