View previous topic :: View next topic |
Author |
Message |
hielvc Advocate
Joined: 19 Apr 2002 Posts: 2805 Location: Oceanside, Ca
|
Posted: Mon Oct 15, 2007 4:24 am Post subject: |
|
|
What is the output of Code: | gcc-config -V
gcc-config-1.4.0-r2 |
and my
Code: | ls /etc/env.d/gcc
config-i686-pc-linux-gnu i686-pc-linux-gnu-4.1.2 i686-pc-linux-gnu-4.2.0 |
_________________ An A-Z Index of the Linux BASH command line |
|
Back to top |
|
|
curmudgeon Veteran
Joined: 08 Aug 2003 Posts: 1744
|
Posted: Mon Oct 15, 2007 4:54 am Post subject: |
|
|
hielvc wrote: | What is the output of Code: | gcc-config -V
gcc-config-1.4.0-r2 |
|
Don't know who you meant to ask that, but I will answer. :)
Code: | $ gcc-config -V
gcc-config-1.3.16
$ gcc-config-1.4.0-r2
bash: gcc-config-1.4.0-r2: command not found
$ equery list gcc-config
[ Searching for package 'gcc-config' in all categories among: ]
* installed packages
[I--] [ ] sys-devel/gcc-config-1.3.16 (0)
$ grep KEY /usr/portage/sys-devel/gcc-config/gcc-config-1.3.16.ebuild /usr/portage/sys-devel/gcc-config/gcc-config-1.4.0-r4.ebuild
/usr/portage/sys-devel/gcc-config/gcc-config-1.3.16.ebuild:KEYWORDS="alpha amd64 arm hppa ia64 m68k mips ppc ppc64 s390 sh sparc ~sparc-fbsd x86 ~x86-fbsd"
/usr/portage/sys-devel/gcc-config/gcc-config-1.4.0-r4.ebuild:KEYWORDS="~alpha ~amd64 ~arm ~hppa ~ia64 ~m68k ~mips ~ppc ~ppc64 ~s390 ~sh ~sparc ~sparc-fbsd ~x86 ~x86-fbsd" |
I do have the lastest stable version of gcc-config, and while I realize that a lot of people run unstable systems (I have several unstable packages, as well, but none of them part of the core system), it obviously should work with all stable packages, as well. |
|
Back to top |
|
|
hielvc Advocate
Joined: 19 Apr 2002 Posts: 2805 Location: Oceanside, Ca
|
Posted: Tue Oct 16, 2007 3:28 am Post subject: |
|
|
curmudgeon I updated the gcc-conf.sh script on the prior page and the sample output with me as user running it. It should pickup and use /etc/env.d/gcc/config or /etc/env.d/gcc/config-"${CHOST}". You can either copy paste or download it from the link. If you would run it and post back whether it works or not.
EDIT you failed the mind reading test. _________________ An A-Z Index of the Linux BASH command line |
|
Back to top |
|
|
StifflerStealth Retired Dev
Joined: 03 Jul 2002 Posts: 968
|
Posted: Tue Oct 16, 2007 3:21 pm Post subject: |
|
|
hielvc wrote: | Whaoo curmudgeon your saying that changing " config-"${CHOST}" " to just "config" fixs your problem StifflerStealth your having the same prob? If so could you both post your " emerge --info " ? Thanks | No ${CHOST} works for me, but I was trying stuff to see if they would fix curmudgeon's issues. Thanks for all the info on how you got CHOST to work in your script. I found it very helpful. The new version that you posted right before I made that post is very stable and gcc-config actually works now. Before, I was using an older version where it didn't work.
The only thing I do is hack your script so it exits when a program fails to compile. I don't like skipping packages. Could I ask that you add something to your queue of things to do? I would like a switch that when enabled, the script would wait for user interaction on a failed program, like (R)etry, (S)kip, or (E)xit. You would have those three choices, so if a program fails, it can be taken care of right then and there. IF one is doing a very large update, skiping programs is hurtful because newer programs will be linked against the old program instead of the new one. If one is lucky then other programs that require the failed program are version dependent and will fail since the new version wasn't installed. However, if not, then one may need to run revdep-rebuild afterwards and that means double compiling. The default for asking those three choices would be off and one would need to add a commandline switch to emerge to be asked those choices.
Would this be doable?
Thanks for your hard work
PS. Thanks for not adding output like Update script has saying that I am l33t for running a ~x86 system. That got annoying. |
|
Back to top |
|
|
StifflerStealth Retired Dev
Joined: 03 Jul 2002 Posts: 968
|
Posted: Tue Oct 16, 2007 3:26 pm Post subject: |
|
|
Mine:
# ls /etc/env.d/gcc/
config-i686-pc-linux-gnu i686-pc-linux-gnu-4.2.2
Since he has a just "config" in that directory, the cause of the issue has been found. Glad I said that so he would list the directory contents. Very strange. Did older gcc's put config there instead of config-$CHOST? I wonder if any other user has just config there. :S |
|
Back to top |
|
|
hielvc Advocate
Joined: 19 Apr 2002 Posts: 2805 Location: Oceanside, Ca
|
Posted: Sat Oct 20, 2007 12:42 am Post subject: |
|
|
Posted emwrap.sh-r4 which should take care of curmudgeon probs. If you re not having probs with gcc-config you dont need it.
Code: | emwrap.sh -V
Version-4.0.8 with gcc-config-r4
A wrapper for emerge so you can break emerges into chunks, TC, system, world
or world minus system
Mon Oct 15 21:41:56 PDT 2007 |
_________________ An A-Z Index of the Linux BASH command line |
|
Back to top |
|
|
curmudgeon Veteran
Joined: 08 Aug 2003 Posts: 1744
|
Posted: Sat Oct 20, 2007 1:32 am Post subject: |
|
|
StifflerStealth wrote: | Did older gcc's put config there instead of config-$CHOST? I wonder if any other user has just config there. :S |
I think (wouldn't bet on it, though) that you have it backwards.
All of my machines (including some installs within the last month) have config. I did find one config-$CHOST on a very old install. The file had a modification time more than two years ago, and referenced an old version of gcc long removed from the system. |
|
Back to top |
|
|
hielvc Advocate
Joined: 19 Apr 2002 Posts: 2805 Location: Oceanside, Ca
|
Posted: Sat Oct 20, 2007 2:33 am Post subject: |
|
|
Well thats wierd because I have one new install. It's config-${CHOST} and so is my other box. They are are both ~x86 as I have had fewer frustrations with it than stable. I read gcc-config while trying figure this out. There was only one mention of plain config the rest were config-CHOST. Go figure. _________________ An A-Z Index of the Linux BASH command line |
|
Back to top |
|
|
Master One l33t
Joined: 25 Aug 2003 Posts: 754 Location: Austria
|
Posted: Sat Oct 20, 2007 2:37 pm Post subject: |
|
|
Where is the latest version of the script to be found?
In the first post of this thread it is still emwrap.sh-r3, and the download-link just leads to an empty dir. _________________ Las torturas mentales de la CIA |
|
Back to top |
|
|
hielvc Advocate
Joined: 19 Apr 2002 Posts: 2805 Location: Oceanside, Ca
|
Posted: Sat Oct 20, 2007 3:08 pm Post subject: |
|
|
I changed servers. Famous last words "it works for me ...." I didnt copy and paste to page 1 but I will in a minute. Could you try the down losd again
EDIT: Its on the front page now. Sat Oct 20 08:16:39 PDT 2007
EDIT Sat Oct 20 08:23:27 PDT 2007 . Just made another config change that should allow 90.231.9.* to get in. _________________ An A-Z Index of the Linux BASH command line |
|
Back to top |
|
|
hielvc Advocate
Joined: 19 Apr 2002 Posts: 2805 Location: Oceanside, Ca
|
|
Back to top |
|
|
Master One l33t
Joined: 25 Aug 2003 Posts: 754 Location: Austria
|
Posted: Sat Oct 20, 2007 5:35 pm Post subject: |
|
|
Works. _________________ Las torturas mentales de la CIA |
|
Back to top |
|
|
hielvc Advocate
Joined: 19 Apr 2002 Posts: 2805 Location: Oceanside, Ca
|
Posted: Sat Oct 20, 2007 6:01 pm Post subject: |
|
|
cat README
Quote: | emwrap.sh the wraper for emerge. Allows you to control when you update
your Tool Chain. Started adding the verson or r# to the end. EX:
emwrap.sh-r4 . When you select it to downloaad in your browser
and it gives you the option to "save as" remove the -r# and/or version
and hit ENTER.
oneliner_TCbuild.sh Builds the TC then the system files minus the TC files.
Use:run it and stand back. If you want to stop it start banging out CTRL+C.
cleanpkg.sh Cleans out your package files useing /var/db/pkg as a
current file listing. Removes anything not in it. Use: run it
with out args and gives simple instructions.
unmask.sh When you have alot of files to unmask,this automates puting them in to
/etc/portage/package.keywords. Usefull for KDE gnome xfce4.
Modified for other major unmasking projects like beagle.
Use: "unmask.sh kde p/-p" to see output. "unmask.sh kde' to do the
deed.
USE.sh a simple USE flag checker that will check 1 or more USE flags and if no
flags are passed reads your /etc/make.conf USE varible. This gives
way to much info EXCEPT that it prints on the last line dead USE flags. |
and to think, yesterday I cleaned out some really old garbage and updated the README
recv_var_pkg_db.sh or recv_var_db_pkg.sh are for trying to recover your /var/db/pkg. See deleted /var/db/pkg [solved] Actually thats probably optimistic but be that as it may, thanks to your question I re-found the thread and can now figure which is the script that works _________________ An A-Z Index of the Linux BASH command line |
|
Back to top |
|
|
curmudgeon Veteran
Joined: 08 Aug 2003 Posts: 1744
|
Posted: Mon Oct 22, 2007 8:12 am Post subject: A couple of documentation bugs |
|
|
While looking through the script recently, I noticed a couple of small errors.
First, I had to bail out once. When I wanted to resume, I saw:
Code: | You can now enter " r " to resume building. If you dont enter anything
then the old build file will be deleted.and emwrap.sh system -ep will
continue. |
Fine, except that I had asked for world not system. :)
That looks like a problem on line 424 (the -r4 version).
Then on line 102, I think you meant "quiet" and not "quite." |
|
Back to top |
|
|
dtoo Tux's lil' helper
Joined: 29 Mar 2004 Posts: 86
|
|
Back to top |
|
|
hielvc Advocate
Joined: 19 Apr 2002 Posts: 2805 Location: Oceanside, Ca
|
|
Back to top |
|
|
StifflerStealth Retired Dev
Joined: 03 Jul 2002 Posts: 968
|
Posted: Mon Oct 22, 2007 9:22 pm Post subject: |
|
|
by the way, hielvc, you haven't answered this question from me yet. *whistles*
StifflerStealth wrote: | The only thing I do is hack your script so it exits when a program fails to compile. I don't like skipping packages. Could I ask that you add something to your queue of things to do? I would like a switch that when enabled, the script would wait for user interaction on a failed program, like (R)etry, (S)kip, or (E)xit. You would have those three choices, so if a program fails, it can be taken care of right then and there. IF one is doing a very large update, skiping programs is hurtful because newer programs will be linked against the old program instead of the new one. If one is lucky then other programs that require the failed program are version dependent and will fail since the new version wasn't installed. However, if not, then one may need to run revdep-rebuild afterwards and that means double compiling. The default for asking those three choices would be off and one would need to add a commandline switch to emerge to be asked those choices.
Would this be doable? | good idea? Bad idea? |
|
Back to top |
|
|
hielvc Advocate
Joined: 19 Apr 2002 Posts: 2805 Location: Oceanside, Ca
|
Posted: Tue Oct 23, 2007 2:04 am Post subject: |
|
|
StifflerStealth its neither good nor bad. Its a preference. My experince with -uDN is to just restart, not resume. With world or system -e that could get boring. I again go by my experince. Having stop, wouldn't have helped with the expat mess.
If I was to do it I would overload emerge_faild. The "stop" would be easy > tc_faild, first " if [ "${stop}" == "yes" ];then tc_faild". This leads to the real question, are you going to try and rebuild the pkg that failed. If so, are you going to do it first for all, or for only one specific stop, or after you go thru the 3 stop conditions. Maybe put in a test to see if boinc is running, stop it and sleep 5 minutes, then re-emerge the pkg, if successful restart boinc and then continue emwrap.sh. Post your your patch. _________________ An A-Z Index of the Linux BASH command line |
|
Back to top |
|
|
curmudgeon Veteran
Joined: 08 Aug 2003 Posts: 1744
|
Posted: Wed Oct 24, 2007 2:25 pm Post subject: |
|
|
Since I know very little about how this all comes together, I have a question I hope you can answer.
If I have a big toolchain update (say glibc, so I want to recompile everything) AND a kernel update, which should I do first?
1.) Rebuild everything THEN compile the kernel (so the kernel gets compiled with the latest version of everything).
2.) Build the new kernel first, reboot, and then recompile the system (so that everything gets linked against the new kernel). |
|
Back to top |
|
|
mv Watchman
Joined: 20 Apr 2005 Posts: 6780
|
Posted: Wed Oct 24, 2007 2:43 pm Post subject: |
|
|
curmudgeon wrote: | 1.) Rebuild everything THEN compile the kernel (so the kernel gets compiled with the latest version of everything).
2.) Build the new kernel first, reboot, and then recompile the system (so that everything gets linked against the new kernel). |
If there are no bugs and no other toolchain upgrades, it doesn't matter: Since the kernel does not use glibc, the kernel binary will be the same, no matter whether built with old or new glibc. Since nothing gets linked against the kernel (except kernel modules), it plays no role at all whether or when you reboot.
If there are also other toolchain upgrades (gcc or binutils) simultaneously, you should compile the kernel not before upgrading these; and of course the kernel modules should be recompiled after the kernel upgrade (once more: Whether you boot the new kernel before building the modules or not doesn't mattter, because the built process is not influenced by the running kernel [of course, unless the kernel is buggy... or if you need some of the modules to get a running system]).
If there are bugs... well - depends on the bugs. |
|
Back to top |
|
|
hielvc Advocate
Joined: 19 Apr 2002 Posts: 2805 Location: Oceanside, Ca
|
|
Back to top |
|
|
hielvc Advocate
Joined: 19 Apr 2002 Posts: 2805 Location: Oceanside, Ca
|
Posted: Thu Oct 25, 2007 2:47 pm Post subject: |
|
|
curmudgeon I thing your remembering the gcc-3 to gcc-4 change. The recomended way was to build the TC first then before you rebooted you needed to recompile your kernel. I dont remember anybody going "OOOhhh My Goood Im so fast now" it was that for some configs you couldnt or if it did boot, it had errors. In other words do last or do right after the TC didnt matter., just doing it did before shutdown did. I would rebuild everything before rebooting, particully if you're moving from gcc-3 to gcc-4. If your already using gcc-4 and your not going from glibc-2.4 to 2.6 if so rebuild allis _________________ An A-Z Index of the Linux BASH command line |
|
Back to top |
|
|
rach3kb n00b
Joined: 25 Oct 2007 Posts: 1
|
Posted: Thu Oct 25, 2007 4:00 pm Post subject: |
|
|
Hielvc quick question, I am fairly new to linux, and I recently used your script to build my system. gcc-config is showing 2 profiles,. gnu-3.3.6, and gnu-4.2.2, and the one being used is gnu-4.2.2. when i try to emerge certian packages (emul-linux-x86) they are being blocked by 3.3.6. What is the best way around this? Do I need to unmerge 3.3.6, or is it necessary for the system? |
|
Back to top |
|
|
hielvc Advocate
Joined: 19 Apr 2002 Posts: 2805 Location: Oceanside, Ca
|
Posted: Fri Oct 26, 2007 3:53 am Post subject: |
|
|
rach3kb I dont use 64bit but you can unmerge gcc-3.3.6 since you have gcc-4.2.2. For those who dont know you HAVE TO HAVE at least one gcc installed on your Gentoo system. _________________ An A-Z Index of the Linux BASH command line |
|
Back to top |
|
|
imotlaw n00b
Joined: 25 May 2005 Posts: 38 Location: Washington DC Area
|
|
Back to top |
|
|
|