View previous topic :: View next topic |
Author |
Message |
FR3141 n00b
Joined: 13 Jan 2018 Posts: 39
|
Posted: Sat Jan 13, 2018 4:25 pm Post subject: Disable the Forced PIE with Profile 17 |
|
|
We need a thread on how to disable or workaround the forced PIE with profile 17.0. A minority of Gentoo users are dissasified with this change and the needs of this minority should be addressed.
Thanks to posters on other forum threads, I have found what seems to be the basic workaround:
Add the line "sys-devel/gcc -pie" to /etc/portage/profile/package.use.force
Add "-pie" to the USE variable in /etc/portage/make.conf
Add "-fno-pie" to the CFLAGS variable in /etc/portage/make.conf
Does this represent a complete and trouble-free solution?
Please do not comment on why PIE may be advisable. Some users just don't want it and the desires of these users should be respected. |
|
Back to top |
|
|
NeddySeagoon Administrator
Joined: 05 Jul 2003 Posts: 54096 Location: 56N 3W
|
Posted: Sat Jan 13, 2018 5:25 pm Post subject: |
|
|
FR3141,
Welcome to the forums.
If you want to revert to the /13.0/ profile behaviour, only set USE=-pie on gcc to start with, then rebuild gcc.
This will give you a gcc that by default builds code with -pie.
"-fno-pie" in CFLAGS is neither desireable nor required. With the above gcc rebuild, gcc does it anyway.
CFLAGS can be stripped in ebuilds, so the "-fno-pie" may not be respected.
Regardless of the above, your shared libraries will be built with -fpie (pie on) since they need to be able to load and run anywhere in RAM.
There are a small number of other packages that accept the USE=pie flag but -fpie or -fno-pie is mostly determined by how gcc is built.
You will probably want -pie in your global USE but see what the flag does on a case by case basis first. _________________ Regards,
NeddySeagoon
Computer users fall into two groups:-
those that do backups
those that have never had a hard drive fail. |
|
Back to top |
|
|
wrc1944 Advocate
Joined: 15 Aug 2002 Posts: 3432 Location: Gainesville, Florida
|
Posted: Sat Jan 13, 2018 7:14 pm Post subject: |
|
|
Neddy,
Just to clarify, on a profile 13 ~amd64 system, if we have: Code: |
amd64 /home/wrc # equery hasuse pie
* Searching for USE flag pie ...
[IP-] [ ] net-misc/openssh-7.6_p1-r1:0
[IP-] [ ] sys-devel/gcc-7.2.0-r1:7.2.0
[IP-] [ ] sys-libs/pam-1.3.0-r2:0 |
when moving to 17 should we still honor this by enabling pie for at least pam and openssh (which were built with pie using profile 13) in /etc/portage, or would it really matter?
What's a bit confusing is that whereas pam and openssh both show pie enabled, gcc-7.2.0 on profile 13 doesn't show pie enabled, but also shows -pie not enabled.
Code: | Calculating dependencies... done!
[ebuild R ] sys-devel/gcc-7.2.0-r1:7.2.0::gentoo USE="cxx fortran (multilib) nls nptl openmp pch sanitize ssp vtv (-altivec) (-awt) -cilk -debug -doc (-fixed-point) (-gcj) -go -graphite (-hardened) (-jit) (-libssp) -mpx -objc -objc++ -objc-gc -pgo (-pie) -regression-test -vanilla" 0 KiB
[ebuild R ] sys-libs/pam-1.3.0-r2::gentoo USE="berkdb cracklib filecaps nls pie -audit -debug -nis (-selinux) {-test} -vim-syntax" ABI_X86="32 (64) (-x32)" 0 KiB
[ebuild R ] net-misc/openssh-7.6_p1-r1::gentoo USE="X ldap pam pie ssl -X509 -audit -bindist -debug -hpn -kerberos -ldns -libedit -libressl -livecd -sctp (-selinux) -skey -static {-test}" 0 KiB |
If we change to profile 17 as first post says (and without "-fno-pie" in CFLAGS as per your advice), will "sys-devel/gcc -pie" in /etc/portage/profile/package.use.force override any /etc/portage/ pie settings for pam and openssh, and/or will equery hasuse pie then not list gcc as before?
Additionally, will emerge -pv gcc then report -pie enabled, even though I'm using profile 17? _________________ Main box- AsRock x370 Gaming K4
Ryzen 7 3700x, 3.6GHz, 16GB GSkill Flare DDR4 3200mhz
Samsung SATA 1000GB, Radeon HD R7 350 2GB DDR5
OpenRC Gentoo ~amd64 plasma, glibc-2.36-r7, gcc-13.2.1_p20230304
kernel-6.7.2 USE=experimental python3_11 |
|
Back to top |
|
|
FR3141 n00b
Joined: 13 Jan 2018 Posts: 39
|
Posted: Sat Jan 13, 2018 7:17 pm Post subject: |
|
|
NeddySeagoon wrote: |
If you want to revert to the /13.0/ profile behaviour, only set USE=-pie on gcc to start with, then rebuild gcc.
This will give you a gcc that by default builds code with -pie.
|
For some reason this will not workk on my system. Unless I add the "sys-devel/gcc -pie" line to the
/etc/portage/profile/package.use.force file emerge wants to build gcc with the "pie" flag regardless
of the USE=-pie :
# USE="-pie" emerge -pv gcc
[ebuild R ] sys-devel/gcc-7.2.0-r1:7.2.0::gentoo USE="... (pie*) ... " 60,862 KiB
I've also noticed that masking the "pie" USE flag in /etc/portage/profile/mask.use can also accomplish the same thing, but the USE setting alone does not seem to work.
But as long as something does the job I am satisfied.
Thanks for your response. I am a long-time Gentoo user and plan on using it a long time into the future. |
|
Back to top |
|
|
NeddySeagoon Administrator
Joined: 05 Jul 2003 Posts: 54096 Location: 56N 3W
|
Posted: Sat Jan 13, 2018 7:33 pm Post subject: |
|
|
FR3141,
The (flag) or (-flag) meas that the setting is forced by your profile and that lower level attempts to change in will be ignored.
You fix that in /etc/portage/profile/package.use.mask, here is a small snippet of one of mine
Code: | # this file inverts profile settings. That a PITA for upstreaming
# enable Videocore 4 support
# this is only for Paspberry Pi
media-libs/mesa -video_cards_vc4
x11-libs/libdrm -video_cards_vc4 |
You would need an entry liketo remove the forcing.
Now you can set the pie flag normally. _________________ Regards,
NeddySeagoon
Computer users fall into two groups:-
those that do backups
those that have never had a hard drive fail. |
|
Back to top |
|
|
wrc1944 Advocate
Joined: 15 Aug 2002 Posts: 3432 Location: Gainesville, Florida
|
Posted: Sat Jan 13, 2018 8:48 pm Post subject: |
|
|
Neddy,
Your last post confused me ("You fix that in /etc/portage/profile/package.use.mask," and, this file inverts profile settings), and then: Code: | you would need an entry like
Code:
sys-devel/gcc -pie
to remove the forcing.
Now you can set the pie flag normally. |
Why would I want to remove the forcing of -pie? I thought what I needed to do was:
Quote: |
Add the line "sys-devel/gcc -pie" to /etc/portage/profile/package.use.force
Add "-pie" to the USE variable in /etc/portage/make.conf |
And then:
1.Change to profile 17
2.Rebuild gcc
3. emerge -epv1 @world (and since my system is already built with -pie by profile 13, expect essentially no rebuilds will be needed)
4. Possibly (not sure) enable pie for pam and openssh in /etc/portage/package.use.
Now I'm not sure I really understand correctly what needs to be done. What am I missing here? _________________ Main box- AsRock x370 Gaming K4
Ryzen 7 3700x, 3.6GHz, 16GB GSkill Flare DDR4 3200mhz
Samsung SATA 1000GB, Radeon HD R7 350 2GB DDR5
OpenRC Gentoo ~amd64 plasma, glibc-2.36-r7, gcc-13.2.1_p20230304
kernel-6.7.2 USE=experimental python3_11
Last edited by wrc1944 on Sat Jan 13, 2018 9:29 pm; edited 1 time in total |
|
Back to top |
|
|
NeddySeagoon Administrator
Joined: 05 Jul 2003 Posts: 54096 Location: 56N 3W
|
Posted: Sat Jan 13, 2018 9:04 pm Post subject: |
|
|
wrc1944,
In the stacking profiles, you invert whatever you inherit.
The /17.0/ profile has forced pie, denoted by (pie) on consumers.
Setting -pie is therefore a two stage thing.
Step 1, remove the forcing
Step 2, set pie the way you like it.
/etc/portage/profile/package.use.mask: | sys-devel/gcc -pie | removes the forcing.
It does not change the flag. The parentheses will disappear.
I've just tested your wrc1944 wrote: | Add the line "sys-devel/gcc -pie" to /etc/portage/profile/package.use.force
Add "-pie" to the USE variable in /etc/portage/make.conf |
That works too. _________________ Regards,
NeddySeagoon
Computer users fall into two groups:-
those that do backups
those that have never had a hard drive fail. |
|
Back to top |
|
|
wrc1944 Advocate
Joined: 15 Aug 2002 Posts: 3432 Location: Gainesville, Florida
|
Posted: Sat Jan 13, 2018 9:24 pm Post subject: |
|
|
Neddy,
Thanks very much for the clarification. Much appreciated! _________________ Main box- AsRock x370 Gaming K4
Ryzen 7 3700x, 3.6GHz, 16GB GSkill Flare DDR4 3200mhz
Samsung SATA 1000GB, Radeon HD R7 350 2GB DDR5
OpenRC Gentoo ~amd64 plasma, glibc-2.36-r7, gcc-13.2.1_p20230304
kernel-6.7.2 USE=experimental python3_11 |
|
Back to top |
|
|
wrc1944 Advocate
Joined: 15 Aug 2002 Posts: 3432 Location: Gainesville, Florida
|
Posted: Mon Jan 15, 2018 5:23 pm Post subject: |
|
|
Neddy,
Sorry to keep beating a dead horse, but just to be crystal-clear on these points, does adding the line "sys-devel/gcc -pie" to /etc/portage/profile/package.use.force do the same thing as adding "sys-devel/gcc -pie" to etc/portage/profile/package.use.mask. Correct?
In other words, if I do: Code: | Add the line "sys-devel/gcc -pie" to /etc/portage/profile/package.use.force
Add "-pie" to the USE variable in /etc/portage/make.conf |
that would eliminate the need to do your Step 1, remove the forcing of pie in Profiles 17.0?
NeddySeagoon wrote: Quote: | etc/portage/profile/package.use.mask:
sys-devel/gcc -pie
removes the forcing. |
So to summarize, to move from profile 13 to 17 and maintain @world built with -pie (except for pam & openssh which profile 13 built WITH pie by default), this procedure is functional:
1. eselect profile set default/linux/amd64/17.0/desktop/plasma
2. Add the line "sys-devel/gcc -pie" to /etc/portage/profile/package.use.force
3. Add "-pie" to the USE variable in /etc/portage/make.conf
4. Set pie for pam & openssh in /etc/portage/package.use
5.Rebuild gcc (which will build gcc in profile 17 with -pie)
6. emerge -e1 @world
One last question I'm not clear on:
Since gcc will now be built with -pie, will the pie setting for pam & openssh in /etc/portage/package.use be overridden? _________________ Main box- AsRock x370 Gaming K4
Ryzen 7 3700x, 3.6GHz, 16GB GSkill Flare DDR4 3200mhz
Samsung SATA 1000GB, Radeon HD R7 350 2GB DDR5
OpenRC Gentoo ~amd64 plasma, glibc-2.36-r7, gcc-13.2.1_p20230304
kernel-6.7.2 USE=experimental python3_11 |
|
Back to top |
|
|
wrc1944 Advocate
Joined: 15 Aug 2002 Posts: 3432 Location: Gainesville, Florida
|
Posted: Mon Jan 15, 2018 7:17 pm Post subject: |
|
|
OK- I set profile 17 and added the new file entries (steps 1,2,3,&4 I posted above). Emerge --info reports profile 17, and no pie USE flag.
emerge -epv1 @world reports: Total: 1231 packages (5 upgrades, 1226 reinstalls, and no new "pie" USE flags enabled, and pie is still set for pam & openssh in /etc/portage/package.use) Size of downloads: 27,243 KiB (thought I was fully current, but apparently not- )
Just to check gcc, I did:
emerge gcc -pv1 (without package.use.force)
Calculating dependencies... done!
[ebuild R ] sys-devel/gcc-7.2.0-r1:7.2.0::gentoo USE="cxx fortran (multilib) nls nptl openmp pch (pie*) sanitize ssp vtv (-altivec) (-awt) -cilk -debug -doc (-fixed-point) (-gcj) -go -graphite (-hardened) (-jit) (-libssp) -mpx -objc -objc++ -objc-gc -pgo -regression-test -vanilla" 0 KiB (shows pie, which was expected)
emerge gcc -pv1 (with package.use.force)
Calculating dependencies... done!
[ebuild R ] sys-devel/gcc-7.2.0-r1:7.2.0::gentoo USE="cxx fortran (multilib) nls nptl openmp pch sanitize ssp vtv (-altivec) (-awt) -cilk -debug -doc (-fixed-point) (-gcj) -go -graphite (-hardened) (-jit) (-libssp) -mpx -objc -objc++ -objc-gc -pgo -pie -regression-test -vanilla" 0 KiB (shows no pie enabled, so guess the settings for profile 17 with -pie are working correctly)
amd64 /home/wrc # emerge -upvDN1 @world, and got the following. I seem to recall reading something about possible problems with icu updates and profile 17 (pie), so I'm wondering if this output has anything to do with the profile change, or is just a normal icu update, and a coincidence. Before doing anything else, I guess perhaps rebuilding gcc is in order, or NOT, since it already is built with profile 13's -pie?
Code: | These are the packages that would be merged, in order:
Calculating dependencies... done!
[ebuild U ] dev-libs/libatomic_ops-7.6.2::gentoo [7.6.0::gentoo] ABI_X86="32 (64) (-x32)" 486 KiB
[ebuild U ] dev-libs/mpc-1.1.0-r1:0/3::gentoo [1.1.0:0/3::gentoo] USE="-static-libs" ABI_X86="32 (64) (-x32)" 0 KiB
[ebuild U ] dev-db/unixODBC-2.3.5::gentoo [2.3.4-r1::gentoo] USE="minimal unicode -odbcmanual -static-libs" ABI_X86="32 (64) (-x32)" 1,596 KiB
[ebuild r U ] dev-libs/icu-60.2:0/60.2::gentoo [58.2-r1:0/58.2::gentoo] USE="-debug -doc -examples -static-libs" ABI_X86="32 (64) (-x32)" 22,772 KiB
[ebuild U ] dev-libs/boehm-gc-7.6.2:0/2.1::gentoo [7.6.0:0/0::gentoo] USE="cxx threads -static-libs" ABI_X86="32 (64) (-x32)" 1,094 KiB
[ebuild rR ] dev-db/sqlite-3.21.0:3::gentoo USE="icu readline -debug -doc -secure-delete -static-libs -tcl {-test} -tools" ABI_X86="32 (64) (-x32)" 0 KiB
[ebuild rR ] dev-libs/boost-1.65.0:0/1.65.0::gentoo USE="icu nls threads -context -debug -doc -mpi -python -static-libs -tools" ABI_X86="32 (64) (-x32)" PYTHON_TARGETS="python2_7 python3_5 -python3_4 -python3_6" 0 KiB
[ebuild rR ] dev-libs/re2-0.2017.03.01:0/gentoo-2017-03-01::gentoo USE="icu" ABI_X86="32 (64) (-x32)" 0 KiB
[ebuild rR ] media-libs/libfreehand-0.1.2::gentoo USE="-doc -static-libs {-test}" 0 KiB
[ebuild rR ] media-libs/libzmf-0.0.2::gentoo USE="-debug -doc {-test} -tools" 0 KiB
[ebuild rR ] media-libs/libcdr-0.1.4::gentoo USE="-doc -static-libs {-test}" 0 KiB
[ebuild rR ] app-text/libmspub-0.1.3::gentoo USE="-doc -static-libs" 0 KiB
[ebuild rR ] dev-libs/libxml2-2.9.7:2::gentoo USE="icu python readline -debug -examples -ipv6 -lzma -static-libs {-test}" ABI_X86="32 (64) (-x32)" PYTHON_TARGETS="python2_7 python3_5 -python3_4 -python3_6" 0 KiB
[ebuild rR ] media-libs/libvisio-0.1.6::gentoo USE="-doc -static-libs {-test} -tools" 0 KiB
[ebuild rR ] media-libs/raptor-2.0.15:2::gentoo USE="curl unicode -debug -json -static-libs" 0 KiB
[ebuild rR ] app-text/libebook-0.1.3::gentoo USE="-doc {-test} -tools" 0 KiB
[ebuild rR ] dev-libs/libical-2.0.0-r3:0/2::gentoo USE="-doc -examples -static-libs" 0 KiB
[ebuild rR ] dev-qt/qtcore-5.9.3:5/5.9::gentoo USE="icu -debug -systemd {-test}" 0 KiB
[ebuild rR ] media-libs/harfbuzz-1.7.4:0/0.9.18::gentoo USE="cairo glib graphite icu introspection truetype -debug -fontconfig -static-libs {-test}" ABI_X86="32 (64) (-x32)" 0 KiB
[ebuild rR ] dev-qt/qtwebkit-5.9.1:5/5.9::gentoo USE="jit opengl qml -debug -geolocation (-gles2) -gstreamer -multimedia -orientation -printsupport {-test} -webchannel -webp" 0 KiB
[ebuild rR ] dev-qt/qtwebengine-5.9.3:5/5.9::gentoo USE="alsa system-ffmpeg system-icu widgets -bindist -debug -geolocation -pax_kernel -pulseaudio {-test}" 0 KiB
[ebuild rR ] app-office/libreoffice-5.4.4.2::gentoo USE="bluetooth branding cups dbus gtk -coinmp -collada -debug -eds -firebird -gltf -googledrive -gstreamer -gtk3 -java -jemalloc -kde -libressl -mysql -odk -pdfimport -postgres -quickstarter {-test} -vlc" LIBREOFFICE_EXTENSIONS="-nlpsolver -scripting-beanshell -scripting-javascript -wiki-publisher" PYTHON_SINGLE_TARGET="python3_5 -python2_7 -python3_4 -python3_6" PYTHON_TARGETS="python2_7 python3_5 -python3_4 -python3_6" 0 KiB
Total: 22 packages (5 upgrades, 17 reinstalls), Size of downloads: 25,946 KiB
The following packages are causing rebuilds:
(dev-libs/icu-60.2:0/60.2::gentoo, ebuild scheduled for merge) causes rebuilds for:
(dev-libs/re2-0.2017.03.01:0/gentoo-2017-03-01::gentoo, ebuild scheduled for merge)
(media-libs/libvisio-0.1.6:0/0::gentoo, ebuild scheduled for merge)
(dev-qt/qtwebkit-5.9.1:5/5.9::gentoo, ebuild scheduled for merge)
(dev-qt/qtwebengine-5.9.3:5/5.9::gentoo, ebuild scheduled for merge)
(media-libs/libcdr-0.1.4:0/0::gentoo, ebuild scheduled for merge)
(media-libs/libzmf-0.0.2:0/0::gentoo, ebuild scheduled for merge)
(dev-db/sqlite-3.21.0:3/3::gentoo, ebuild scheduled for merge)
(dev-qt/qtcore-5.9.3:5/5.9::gentoo, ebuild scheduled for merge)
(dev-libs/libical-2.0.0-r3:0/2::gentoo, ebuild scheduled for merge)
(dev-libs/libxml2-2.9.7:2/2::gentoo, ebuild scheduled for merge)
(media-libs/raptor-2.0.15:2/2::gentoo, ebuild scheduled for merge)
(media-libs/harfbuzz-1.7.4:0/0.9.18::gentoo, ebuild scheduled for merge)
(dev-libs/boost-1.65.0:0/1.65.0::gentoo, ebuild scheduled for merge)
(app-text/libebook-0.1.3:0/0::gentoo, ebuild scheduled for merge)
(app-text/libmspub-0.1.3:0/0::gentoo, ebuild scheduled for merge)
(media-libs/libfreehand-0.1.2:0/0::gentoo, ebuild scheduled for merge)
(app-office/libreoffice-5.4.4.2:0/0::gentoo, ebuild scheduled for merge) |
_________________ Main box- AsRock x370 Gaming K4
Ryzen 7 3700x, 3.6GHz, 16GB GSkill Flare DDR4 3200mhz
Samsung SATA 1000GB, Radeon HD R7 350 2GB DDR5
OpenRC Gentoo ~amd64 plasma, glibc-2.36-r7, gcc-13.2.1_p20230304
kernel-6.7.2 USE=experimental python3_11 |
|
Back to top |
|
|
Naib Watchman
Joined: 21 May 2004 Posts: 6051 Location: Removed by Neddy
|
Posted: Mon Jan 15, 2018 8:42 pm Post subject: Re: Disable the Forced PIE with Profile 17 |
|
|
FR3141 wrote: | We need a thread on how to disable or workaround the forced PIE with profile 17.0. A minority of Gentoo users are dissasified with this change and the needs of this minority should be addressed.
Thanks to posters on other forum threads, I have found what seems to be the basic workaround:
Add the line "sys-devel/gcc -pie" to /etc/portage/profile/package.use.force
Add "-pie" to the USE variable in /etc/portage/make.conf
Add "-fno-pie" to the CFLAGS variable in /etc/portage/make.conf
Does this represent a complete and trouble-free solution?
Please do not comment on why PIE may be advisable. Some users just don't want it and the desires of these users should be respected. |
fyi a while back the desire of a few users was to have PIE and they used it. As things have progressed and the buildability of code showed PIE as a default was viable, it was set as a default.
This isn't some sort of community where a vocal minority demands to be listened & catered for, this is gentoo where you can do whatever you like with your system.
If you want -PIE you can do it, if you want LTO you can do it. A better way to confront this would have been "how can I disable this" rather than demand your position is catered for (when it is) by others. _________________
Quote: | Removed by Chiitoo |
|
|
Back to top |
|
|
wrc1944 Advocate
Joined: 15 Aug 2002 Posts: 3432 Location: Gainesville, Florida
|
Posted: Mon Jan 15, 2018 11:21 pm Post subject: |
|
|
After updating to icu-6.0.2, and a few other packages which seemed to go fine, on the emerge @preserved-rebuild I'm having a problem.
Code: | * used by /usr/lib64/libmspub-0.1.so.1.0.3 (app-text/libmspub-0.1.3)
* used by /usr/lib64/libraptor2.so.0.0.0 (media-libs/raptor-2.0.15)
* used by 2 other files
* - /usr/lib64/libicui18n.so.58
* - /usr/lib64/libicui18n.so.58.2
* used by /usr/lib64/libQt5WebEngineCore.so.5.9.3 (dev-qt/qtwebengine-5.9.3)
* used by /usr/lib64/libcdr-0.1.so.1.0.4 (media-libs/libcdr-0.1.4)
* used by /usr/lib64/libmspub-0.1.so.1.0.3 (app-text/libmspub-0.1.3)
* used by 3 other files
Use emerge @preserved-rebuild to rebuild packages using these libraries
* IMPORTANT: 26 news items need reading for repository 'gentoo'.
* Use eselect news read to view new items.
amd64 /home/wrc # emerge @preserved-rebuild -pv
These are the packages that would be merged, in order:
Calculating dependencies... done!
[ebuild R ] media-libs/libzmf-0.0.2::gentoo USE="-debug -doc {-test} -tools" 0 KiB
[ebuild R ] net-wireless/bluez-5.47-r1:0/3::gentoo USE="alsa cups mesh obex readline udev -debug -deprecated -doc -experimental -extra-tools (-selinux) -systemd {-test} -test-programs -user-session" ABI_X86="32 (64) (-x32)" PYTHON_TARGETS="python2_7" 0 KiB
[ebuild R ] app-text/libmspub-0.1.3::gentoo USE="-doc -static-libs" 0 KiB
[ebuild R ] media-libs/libcdr-0.1.4::gentoo USE="-doc -static-libs {-test}" 0 KiB
[ebuild R ] dev-qt/qtwebengine-5.9.3:5/5.9::gentoo USE="alsa system-ffmpeg system-icu widgets -bindist -debug -geolocation -pax_kernel -pulseaudio {-test}" 0 KiB
[ebuild R ] media-libs/raptor-2.0.15:2::gentoo USE="curl unicode -debug -json -static-libs" 0 KiB
[ebuild R ] media-libs/libvisio-0.1.6::gentoo USE="-doc -static-libs {-test} -tools" 0 KiB
Total: 7 packages (7 reinstalls), Size of downloads: 0 KiB
* IMPORTANT: 26 news items need reading for repository 'gentoo'.
* Use eselect news read to view new items.
amd64 /home/wrc #
|
OK, looked reasonable, but it immediately bails with: Code: | * --------------------------------------------------------------------------------
* The ebuild phase 'unpack' has exited unexpectedly. This type of behavior
* is known to be triggered by things such as failed variable assignments
* (bug #190128) or bad substitution errors (bug #200313). Normally, before
* exiting, bash should have displayed an error message above. If bash did
* not produce an error message above, it's possible that the ebuild has
* called `exit` when it should have called `die` instead. This behavior
* may also be triggered by a corrupt bash binary or a hardware problem
* such as memory or cpu malfunction. If the problem is not reproducible or
* it appears to occur randomly, then it is likely to be triggered by a
* hardware problem. If you suspect a hardware problem then you should try
* some basic hardware diagnostics such as memtest. Please do not report
* this as a bug unless it is consistently reproducible and you are sure
* that your bash binary and hardware are functioning properly.
>>> Failed to emerge media-libs/libcdr-0.1.4, Log file:
>>> '/var/tmp/portage/media-libs/libcdr-0.1.4/temp/build.log'
|
Code: | emerge bash gives similar results: * --------------------------------------------------------------------------------
* The ebuild phase 'unpack' has exited unexpectedly. This type of behavior
* is known to be triggered by things such as failed variable assignments
* (bug #190128) or bad substitution errors (bug #200313). Normally, before
* exiting, bash should have displayed an error message above. If bash did
* not produce an error message above, it's possible that the ebuild has
* called `exit` when it should have called `die` instead. This behavior
* may also be triggered by a corrupt bash binary or a hardware problem
* such as memory or cpu malfunction. If the problem is not reproducible or
* it appears to occur randomly, then it is likely to be triggered by a
* hardware problem. If you suspect a hardware problem then you should try
* some basic hardware diagnostics such as memtest. Please do not report
* this as a bug unless it is consistently reproducible and you are sure
* that your bash binary and hardware are functioning properly.
>>> Failed to emerge app-shells/bash-4.4_p12, Log file:
>>> '/var/tmp/portage/app-shells/bash-4.4_p12/temp/build.log' | Maybe rebuild toolchain would help? I thought since my entire system was built with profile 13 -pie except pam and openssh, and the other few updates along with icu-6.0.2 went OK, I was OK, but now I'm thinking this might become a big mess. Any advice?
UPDATE: Well, it's a mystery to me. but somehow in /etc/portage/profile/ I had wound up with both package.use.force, AND package.use.mask. duh
I removed package.use.mask, and then opened a new instance of konsole, and emerged bash, no problem. Then I tried the failed emerge @preserved-rebuild again, and it's currently on 6 of 7, which is the fairly long compile of dev-qt/qtwebengine-5.9.3 (even with a ryzen 1600 and 16GB RAM). Obviously, problem was between user and keyboard, but could anyone clue me in as to how having both package.use.force, AND package.use.mask would cause such results, where portage strongly suggested a hardware problem?
BTW, emerge @preserved-rebuild completed, and emerge -epDNv1 @world now reports: Total: 1191 packages (1191 reinstalls), Size of downloads: 1,298 KiB, no pie USE flags, except for what profile 13 set for pam and openssh.
Revdep-rebuild says: "Your system is consistent" I conclude that the move to Profile 17 with -pie apparently has been succesful. _________________ Main box- AsRock x370 Gaming K4
Ryzen 7 3700x, 3.6GHz, 16GB GSkill Flare DDR4 3200mhz
Samsung SATA 1000GB, Radeon HD R7 350 2GB DDR5
OpenRC Gentoo ~amd64 plasma, glibc-2.36-r7, gcc-13.2.1_p20230304
kernel-6.7.2 USE=experimental python3_11 |
|
Back to top |
|
|
assemblerhead n00b
Joined: 23 Jan 2016 Posts: 24 Location: TX,US
|
Posted: Tue Jan 16, 2018 2:14 pm Post subject: Thanks to NeddySeagoon |
|
|
@ NeddySeagoon
Just read a posting about dev-lisp/clisp on gentoo-users mailing list.
The Profile 17 forced PIE forced an old bug to resurface.
Quote: | # Bug 618170. If anyone has a better idea...
append-flags -fno-pie
|
clisp-2.49-r9
The package does NOT have a "pie" USE flag.
I hope this is the answer.
The "package.env" method of removing PIE didn't work.
Will try to build it with the "/etc/portage/profile/package.use.mask" setting changed. |
|
Back to top |
|
|
FR3141 n00b
Joined: 13 Jan 2018 Posts: 39
|
Posted: Tue Jan 16, 2018 4:46 pm Post subject: |
|
|
wrc1944 wrote: | I conclude that the move to Profile 17 with -pie apparently has been succesful. |
For me the transition was straightforward and very smooth. There were no problems of any kind.
First I just switched to profile 17 with eselect.
Then, I modified the files as described in my original post.
Then I rebuilt gcc-7.2 which compiled as follows:
# gcc -v
Configured with: ... --disable-default-pie ...
Then I did " emerge --sync && emerge -pvDu world"
Because it had been 3-4 days since my last sync only a few files needed updating and these were just a normal part of the rolling update process.
It could not have been easier. |
|
Back to top |
|
|
|
|
You cannot post new topics in this forum You cannot reply to topics in this forum You cannot edit your posts in this forum You cannot delete your posts in this forum You cannot vote in polls in this forum
|
|