Gentoo Forums
Gentoo Forums
Gentoo Forums
Quick Search: in
Portage suddenly switching to ~amd64
View unanswered posts
View posts from last 24 hours

 
Reply to topic    Gentoo Forums Forum Index Portage & Programming
View previous topic :: View next topic  
Author Message
FastTurtle
Guru
Guru


Joined: 03 Sep 2002
Posts: 477
Location: Flakey Shake & Bake Caliornia, USA

PostPosted: Tue Mar 26, 2013 3:12 pm    Post subject: Portage suddenly switching to ~amd64 Reply with quote

I'm using the amd64/13.0/no-multilib and in running an emerge -pv virtualbox it suddenly wants to pull in Vbox 4.2.1 w/o it being unmasked in package.keywords nor do I have any flags set for vbox in package.use
My make.conf settings
Code:
CFLAGS=" -O0 -pipe"
CXXFLAGS="${CFLAGS}"
# WARNING: Changing your CHOST is not something that should be done lightly.
# Please consult http://www.gentoo.org/doc/en/change-chost.xml before changi$
CHOST="x86_64-pc-linux-gnu"
# These are the USE flags that were used in addition to what is provided by $
# profile used for building.

## The following are used once the base system is installed
USE="-gnome acpi alsa aspell consolekit dbus ipv6 memlimit mmx pam policykit$


Here's the emerge output I'm wondering about

Code:
aaron@hydra ~ $ emerge -pv virtualbox

These are the packages that would be merged, in order:

Calculating dependencies... done!
[ebuild  N    ~] app-emulation/virtualbox-additions-4.2.10  56,058 kB
[ebuild  N     ] sys-power/iasl-20090123  USE="{-test}" 906 kB
[ebuild  N     ] sys-libs/libcap-2.22  USE="pam" 0 kB
[ebuild  N    ~] app-emulation/virtualbox-modules-4.2.10  USE="-pax_kernel" 481 kB
[ebuild  NS    ] sys-devel/automake-1.9.6-r3:1.9 [1.10.3:1.10, 1.11.6:1.11] 748 kB
[ebuild  N    ~] dev-util/kbuild-0.1.9998_pre20120806  1,627 kB
[ebuild  N     ] media-libs/freeglut-2.8.0-r1  USE="-debug -static-libs" 0 kB
[ebuild  N    #] app-emulation/virtualbox-4.2.10  USE="additions alsa opengl pam qt4 sdk -doc -extensions -headless -java -pulseaudio -python -vboxwebsrv -vnc" 74,609 kB




Anyone have an idea what 's going on?

Well reading the emerge output, it looks like it maybe a no-multilib issue (Pure 64bit) that's pulling in the 4.2.10 build and that of course needs an accept license change

Code:
The following keyword changes are necessary to proceed:
 (see "package.accept_keywords" in the portage(5) man page for more details)
# required by app-emulation/virtualbox-4.2.10[additions]
# required by virtualbox (argument)
=app-emulation/virtualbox-additions-4.2.10 ~amd64
# required by app-emulation/virtualbox-4.2.10
# required by virtualbox (argument)
=dev-util/kbuild-0.1.9998_pre20120806 ~amd64
# required by app-emulation/virtualbox-4.2.10
# required by virtualbox (argument)
=app-emulation/virtualbox-modules-4.2.10 ~amd64
# required by virtualbox (argument)
=app-emulation/virtualbox-4.2.10 ~amd64

The following mask changes are necessary to proceed:
 (see "package.unmask" in the portage(5) man page for more details)
# required by virtualbox (argument)
# /usr/portage/profiles/features/64bit-native/package.mask:
# AMD64 Team <amd64@gentoo.org>
# Mask packages that rely on amd64 multilib
=app-emulation/virtualbox-4.2.10

The following license changes are necessary to proceed:
 (see "package.license" in the portage(5) man page for more details)
# required by app-emulation/virtualbox-4.2.10[additions]
# required by virtualbox (argument)
>=app-emulation/virtualbox-additions-4.2.10 PUEL


I've never seen portage throw this at me though I have seen notes on the package.keywords when I've wanted specific packages - Audacity 2.0.3 is a good example
Back to top
View user's profile Send private message
John R. Graham
Administrator
Administrator


Joined: 08 Mar 2005
Posts: 10589
Location: Somewhere over Atlanta, Georgia

PostPosted: Tue Mar 26, 2013 3:41 pm    Post subject: Reply with quote

Side comment: your CFLAGS are borked two ways. First, "-o0" is incorrect to select optimization: that should be a capital O. Second, unless you're building for debugging—and the absence of other CFLAGS (principally "-ggdb") convinces me you're not—"-O0" is a bad idea. At least use "-Os"; in most cases -O2 is recommended. What are you trying to accomplish?

- John
_________________
I can confirm that I have received between 0 and 499 National Security Letters.
Back to top
View user's profile Send private message
FastTurtle
Guru
Guru


Joined: 03 Sep 2002
Posts: 477
Location: Flakey Shake & Bake Caliornia, USA

PostPosted: Tue Mar 26, 2013 4:20 pm    Post subject: Reply with quote

I posted the entire make.conf section to show I was not on the ~arch setting. Thus the reason I was questioning my conclusion on what portage was showing, which you didn't answer with your side-comment about the unimportant Optimization flag - if it's wrong, it's ignored due to the defaults set by each package. Isn't that the correct behaviour of portage? Ignore incorrect settings and use the defaults specified in the package or profile?

If my thinking is correct, then we have a portage bug that needs to be addressed as it should have shown the stable version 4.1.24 and the keyword/profile changes needed to support it then any changes to show what would be needed for the ~arch version. To my thinking, Portage should never default to the ~arch w/o showing what the Stable version requires unless the system is on the testing/unstable branch to begin with - Thus the bug report that is going to be filed in regards to improper behaviour as I can no longer trust that portage wont upgrade me to the ~amd64 branch w/o warning and voiding all of my make.conf effort and if that happens, Gentoo will be no better then MS for deciding it knows better then I Do What I WANT FROM MY COMPUTER


Last edited by FastTurtle on Tue Mar 26, 2013 4:49 pm; edited 1 time in total
Back to top
View user's profile Send private message
TomWij
Retired Dev
Retired Dev


Joined: 04 Jul 2012
Posts: 1553

PostPosted: Tue Mar 26, 2013 4:41 pm    Post subject: Re: Portage suddenly switching to ~amd64 Reply with quote

/usr/portage/profiles/features/64bit-native/package.mask masks the entire virtualbox; therefore to get it it will try to satisfy it by trying to change your configuration, that way it suggests the unstable keyworded virtualbox. Since it mentions "# Mask packages that rely on amd64 multilib" in that file I don't think that merging this would work at all...
Back to top
View user's profile Send private message
FastTurtle
Guru
Guru


Joined: 03 Sep 2002
Posts: 477
Location: Flakey Shake & Bake Caliornia, USA

PostPosted: Tue Mar 26, 2013 4:56 pm    Post subject: Reply with quote

and I consider that improper behaviour as portage isn't stating why it's wanting the ~arch as it should.

As I said in reply to John: Portage should have shown a Masked Package for the 4.1.24 and why it was masked before showing the ~amd64 version. In other words, bad behaviour that needs to be fixed.

Yes I've seen where a stable package couldn't satisfy the needs and have gotten an explanation why. Right now, I can't trust portage not to suddenly upgrade me to the ~arch branch w/o warning/explaination and that makes gentoo unusable.

Thankfully, I always check what portage is going to do with the -pv flag in case of blockers and circular dependencies. Much safer then blindly trusting the installer/package manager as Window Users are forced to.
Back to top
View user's profile Send private message
Ant P.
Watchman
Watchman


Joined: 18 Apr 2009
Posts: 6920

PostPosted: Tue Mar 26, 2013 5:12 pm    Post subject: Reply with quote

FastTurtle wrote:
Right now, I can't trust portage not to suddenly upgrade me to the ~arch branch w/o warning/explaination and that makes gentoo unusable.


Yes you can. RTFM.

Quote:
--autounmask [ y | n ]
Automatically unmask packages and generate package.use settings as necessary to satisfy dependen‐
cies. This option is enabled by default. If any configuration changes are required, then they will
be displayed after the merge list and emerge will immediately abort.


And less of the green ink about Microsoft, please.
Back to top
View user's profile Send private message
John R. Graham
Administrator
Administrator


Joined: 08 Mar 2005
Posts: 10589
Location: Somewhere over Atlanta, Georgia

PostPosted: Tue Mar 26, 2013 5:25 pm    Post subject: Reply with quote

FastTurtle wrote:
... if it's wrong, it's ignored due to the defaults set by each package. Isn't that the correct behaviour of portage? Ignore incorrect settings and use the defaults specified in the package or profile?
Well, not exactly. Since it wasn't just an unusual optimization level choice, but an incorrect option, depending on the package build environment (which, as you know, Portage just uses), it has the potential to break the build.

Do you know what "-o" does? It specifies the compiled object file name for the compiler to output. Now, many (probably most) makefiles specify their own "-o" parameter which, because it occurs later on the command line, will override the incorrect value from your CFLAGS, but this isn't Portage protecting you: it's just dumb luck. You should at least fix the lower case "o". :wink:

- John
_________________
I can confirm that I have received between 0 and 499 National Security Letters.
Back to top
View user's profile Send private message
FastTurtle
Guru
Guru


Joined: 03 Sep 2002
Posts: 477
Location: Flakey Shake & Bake Caliornia, USA

PostPosted: Tue Mar 26, 2013 6:32 pm    Post subject: Reply with quote

Ant P.

As I stated, Portage did not pass the proper "Package Masked" information and immediately showed the ~amd64 packages. This makes it completelyimproper behaviour as Portage Should Never Never simply tell you that you need the ~arch branch of a package w/o showing a "Packaged Masked" message and yes I've had this happen several times while installaling. Even if there's no explanation as to why a package is masked, it at least warns you that something is wrong.

In this case, no warning. Meaning I can not trust portage to function correctly as I do not have ~arch set in make.conf. Will portage suddenly switch me to the ~* branch and unmask all of the hard masked packages? That's the damn reason when this happens that it's considered a BUG.

John:

In the case of an incorrectly formated command, portage ignores it - that would be the case if it was actually the "o0 that you saw - cut-n-paste issue probably.

in the case of a Wrong Build Option, should portage have already filtered bad ones out if it'll break the build?

Have you ever dived into the GCC Optimization Docs as I have? What the different levels actually mean? Unroll-Loops and such are just some of them. The Zero flag tells the toolchain to do just that, No Optimizations at all. If a package wont build with no optimizations then it shouldn't be in portage as it's incomplete. It's that simple. Before you state that I haven't a clue, check the comparison page on the GCC website for what each Optimization flag does because if portage isn't following GCC's process, then Gentoo is no longer of use to anyone since it's not following any recognized standard.

As I stated in the earlier post, the only thing I changed in regards to the Optimizatio flag is the 2 became a 0 (zero) so what you're seeing is a cut-n-paste error as I just completed a -e world rebuild w/o problem overnight (had some new flags that --newuse wasn't seeing and yes I may have typo'd the command). As in my original post, the damn o/O issue was and still is immaterial to my original question so why did you bother to post/point it out uselessly?

TimWij:

I just filed the bug report for the unexpected behavour - and yes it's a bug to my thinking as Portage Should never just suggest ~arch apps unless the user is using ~arch in make.conf. Throw me a Masked Package message with the reason before suggesting the ~arch solution.
Back to top
View user's profile Send private message
John R. Graham
Administrator
Administrator


Joined: 08 Mar 2005
Posts: 10589
Location: Somewhere over Atlanta, Georgia

PostPosted: Tue Mar 26, 2013 8:03 pm    Post subject: Reply with quote

Let me just apologize for wasting your time and leave it at that, then. :wink:

- John
_________________
I can confirm that I have received between 0 and 499 National Security Letters.
Back to top
View user's profile Send private message
Hu
Moderator
Moderator


Joined: 06 Mar 2007
Posts: 21635

PostPosted: Tue Mar 26, 2013 9:14 pm    Post subject: Reply with quote

Portage cannot protect you from every possible mistake you may try to make. You can argue that a package ought to build with -O0 if you like. I would argue that every package ought to cross-compile readily and according to a standard procedure. Some Gentoo developers agree with that, but that does not mean that the entire tree actually is able to do so.
Back to top
View user's profile Send private message
FastTurtle
Guru
Guru


Joined: 03 Sep 2002
Posts: 477
Location: Flakey Shake & Bake Caliornia, USA

PostPosted: Tue Mar 26, 2013 10:14 pm    Post subject: Reply with quote

True nor should it but as I stated twice to John: His post never addressed my question as to whether portage goofed or was the response I'd seen expected.

The response from TomWij actually did address and clairify things enough for me to file a bug report as portage should never ever suggest ~arch packages w/o telling me that the package I want is masked. In fact, as far as I'm concerned, portage should never suggest ~arch packages unless the system is on the ~arch.

As to seeing a masked package message, I've seen a couple in regards to specific packages since I'm running a pure 64bit system - Package Masked by profile messages happen and give me enough information to figure out why but in the case of Virtualbox, portage didn't and if portage continues this practice, then the trust factor is completely destroyed.

In the handbook and and portage guides, users shouldn't edit any of the package mask/unmask files in the portage directory. We are to use the /etc/portage location as those wont be replaced/borked during the next portage sync as their protected. This is by design and I actually agree it's a good design choice.

John: The problem with your response is that you never answered the original question about suddenly seeing the ~virtualbox being expected behaviour. Instead you went off on a SIDE NOTE (your post) about the optimization flag. According to the guides, if the entry isn't in the right format (which a lower case "o" is) then portage and the toolchain would simply ignore it and the default for the profile/pacakge would come into play. The system is designed this way to provide a tested/stable build even when the user screws up with a typo. It is not supposed to help when a user goes out of their way to use -O38 to rice the system and is unsupported.

[qoute]Anyone have an idea what 's going on?

Well reading the emerge output, it looks like it maybe a no-multilib issue (Pure 64bit) that's pulling in the 4.2.10 build and that of course needs an accept license change
[/quote]

That's the question you never answered. Sure I may have figured it out but I wasn't sure and that's why I got a bit short with you. Thankfully TomWij came to the rescue and confirmed that I was correct, which forced the bug report as that is completely unacceptable behaviour. I'll say it again, portage should never ever suggest the ~arch branch w/o the system being on the ~arch branch and if there is a package mask in place, it absolutely needs to tell us "Package Masked by" what ever reason on the system. That's critical to retain the sys-admin/users trust in portage.

If and when I screw up, I know who to blame and it aint Gentoo or the Devs at that time. It falls squarely on my shoulders and yes I've screwed up royally at times and completely borked a system to the point it was faster to reinstall then trying to fix what I broke.
Back to top
View user's profile Send private message
John R. Graham
Administrator
Administrator


Joined: 08 Mar 2005
Posts: 10589
Location: Somewhere over Atlanta, Georgia

PostPosted: Tue Mar 26, 2013 10:41 pm    Post subject: Reply with quote

FastTurtle wrote:
...
According to the guides, if the entry isn't in the right format (which a lower case "o" is) then portage and the toolchain would simply ignore it and the default for the profile/pacakge would come into play. The system is designed this way to provide a tested/stable build even when the user screws up with a typo.
...
That turns out not to be the case, on several levels. For instance,
Code:
# echo "CFLAGS=\"\${CFLAGS} -o0\"" >>/etc/make.conf
# emerge -1v bc

These are the packages that would be merged, in order:

Calculating dependencies... done!
[ebuild   R    ] sys-devel/bc-1.06.95  USE="-libedit readline -static" 0 kB

Total: 1 package (1 reinstall), Size of downloads: 0 kB


>>> Verifying ebuild manifests

>>> Emerging (1 of 1) sys-devel/bc-1.06.95
 * bc-1.06.95.tar.bz2 RMD160 SHA1 SHA256 size ;-) ...                                                                 [ ok ]
>>> Unpacking source...
>>> Unpacking bc-1.06.95.tar.bz2 to /var/tmp/portage/sys-devel/bc-1.06.95/work
>>> Source unpacked in /var/tmp/portage/sys-devel/bc-1.06.95/work
>>> Compiling source in /var/tmp/portage/sys-devel/bc-1.06.95/work/bc-1.06.95 ...
./configure --prefix=/usr --build=i686-pc-linux-gnu --host=i686-pc-linux-gnu --mandir=/usr/share/man --infodir=/usr/share/info --datadir=/usr/share --sysconfdir=/etc --localstatedir=/var/lib --with-readline --without-libedit
checking for a BSD-compatible install... /usr/bin/install -c
checking whether build environment is sane... yes
checking for gawk... gawk
checking whether make sets $(MAKE)... yes
checking for i686-pc-linux-gnu-gcc... i686-pc-linux-gnu-gcc
checking for C compiler default output file name... b.out
checking whether the C compiler works... configure: error: cannot run C compiled programs.
If you meant to cross compile, use `--host'.
See `config.log' for more details.
...
However, too much soup has been made from this oyster already. Cheers. ;)

- John
_________________
I can confirm that I have received between 0 and 499 National Security Letters.
Back to top
View user's profile Send private message
Display posts from previous:   
Reply to topic    Gentoo Forums Forum Index Portage & Programming All times are GMT
Page 1 of 1

 
Jump to:  
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