View previous topic :: View next topic |
Author |
Message |
Mardok45 n00b
Joined: 21 Jun 2008 Posts: 69 Location: Right behind you
|
Posted: Thu Jun 06, 2013 1:26 am Post subject: [Solved] Creating a proper make.profile without Portage s... |
|
|
I'm setting up an embedded environment with crossdev, and am creating a custom make.profile. The default profile selected when creating a i686-pc-linux-uclibc cross-compile environment is /usr/portage/profiles/embedded by making a symlink to /usr/i686-pc-linux-uclibc/etc/make.profile, but for some reason, portage comes up with this error.
Code: |
!!! /usr/i686-pc-linux-uclibc/etc/make.profile is not a symlink and will probably prevent most merges.
!!! It should point into a profile within /usr/portage/profiles/
!!! (You can safely ignore this message when syncing. It's harmless.)
|
But, nothing seems to be affected and I can still merge packages. However, I want my own custom profile. I created a make.profile directory under /usr/i686-pc-linux-uclibc/etc/portage/ and am currently editing my own settings. Everything is going as expected, but Portage is still complaining with the same error as above.
How do I get Portage to stop complaining?
Last edited by Mardok45 on Fri Jun 14, 2013 11:48 pm; edited 1 time in total |
|
Back to top |
|
|
steveL Watchman
Joined: 13 Sep 2006 Posts: 5153 Location: The Peanut Gallery
|
Posted: Thu Jun 06, 2013 12:33 pm Post subject: |
|
|
Not sure if it's relevant, but are you using PORTAGE_CONFIGROOT? Many people are unaware of it, including a few Gentoo devs i've come across. |
|
Back to top |
|
|
Mardok45 n00b
Joined: 21 Jun 2008 Posts: 69 Location: Right behind you
|
Posted: Thu Jun 06, 2013 9:59 pm Post subject: |
|
|
Setting PORTAGE_CONFIGROOT didn't work. The default profile pointed to the embedded profile, but that didn't show up when running 'eselect profile list'. When setting the profile that does exist, like uclibc/x86, the error goes away. |
|
Back to top |
|
|
steveL Watchman
Joined: 13 Sep 2006 Posts: 5153 Location: The Peanut Gallery
|
Posted: Mon Jun 10, 2013 12:56 pm Post subject: |
|
|
Mardok45 wrote: | Setting PORTAGE_CONFIGROOT didn't work. The default profile pointed to the embedded profile, but that didn't show up when running 'eselect profile list'. When setting the profile that does exist, like uclibc/x86, the error goes away. |
Is it exported in the environment you're running eselect?
Also, have you set the parent in your custom profile?
I'd ask in #gentoo-dev-help on IRC: chat.freenode.net.
One thing: you said you "created a make.profile directory under /usr/i686-pc-linux-uclibc/etc/portage/" but the error is that /usr/i686-pc-linux-uclibc/etc/make.profile is not a symlink. I'd have expected that last to be: /usr/i686-pc-linux-uclibc/etc/portage/make.profile so it sounds like you still have an old make.profile in the parent directory.
On my machine I have /etc/portage/make.profile, not /etc/make.profile any more, and that simply has an eapi file and the usual parent file. |
|
Back to top |
|
|
TomWij Retired Dev
Joined: 04 Jul 2012 Posts: 1553
|
Posted: Mon Jun 10, 2013 3:24 pm Post subject: |
|
|
Maybe you want to point to /usr/i686-pc-linux-uclibc/usr/portage/profiles/embedded instead? |
|
Back to top |
|
|
Mardok45 n00b
Joined: 21 Jun 2008 Posts: 69 Location: Right behind you
|
Posted: Fri Jun 14, 2013 11:48 pm Post subject: |
|
|
It seems Portage expects some certain variables to exist in your make.defaults and other files. I removed the /usr/i686-pc-linux-uclibc/etc/make.profile symlink and copied the embedded profile into /usr/i686-pc-linux-uclibc/etc/portage/make.profile and then started editing the profile settings.
Portage stopped complaining after that. |
|
Back to top |
|
|
steveL Watchman
Joined: 13 Sep 2006 Posts: 5153 Location: The Peanut Gallery
|
Posted: Tue Jul 02, 2013 8:41 am Post subject: |
|
|
Cool.
If it were me though, I'd be using a parent file:
Code: | $ cat make.profile/parent
..
../../../../../../targets/desktop/kde |
..as that's how you inherit the variables and settings portage is expecting. (The paths can be absolute, Gentoo installs just use relative paths to keep the ability to untar to a random directory.) That would be from a symlink target usually.
There's nothing wrong in creating your own profile as such, but you have to keep it in sync with upstream Gentoo, or at least review all changes to upstream, so it's more of a maintenance burden. That may be what you want, ofc. (You said you want a custom profile, but you might just want to override a few things, when it comes down to it.)
Though I haven't done anything like this personally, so there's gaps in my knowledge (can you tell? ;)
Interesting, though. |
|
Back to top |
|
|
|