OpenPbs configure error

Posted on 2009-02-19
Last Modified: 2013-11-13
this is the error message i receive when i configure OpenPBS (OpenPBS_2_3_16) with the following parameters

./configure --set-default-server=localhost.localdomain --with-scp --set-server-home=/usr/local/spool/pbs --disable-gui
creating cache ./config.cache
checking host system type... Invalid configuration `x86_64-pc-linux-gnuoldld': machine `x86_64-pc' not recognized

Invalid configuration `x86_64-pc-linux': machine `x86_64-pc' not recognized
configure: error: config.sub failed on x86_64-pc-linux

this is the output of the uname -a command

Linux localhost.localdomain 2.6.18-8.el5 #1 SMP Fri Jan 26 14:15:14 EST 2007 x86_64 x86_64 x86_64 GNU/Linux

Please tell me how can i overcome this.
Thanks in advance
Question by:imagineer12
    LVL 29

    Expert Comment

    by:Michael W
    It sounds like something in the configuration script doesn't see your os type correctly or is misidentifing it.

    Can you attach a copy of the configuration script here so we can take a closer look?
    LVL 34

    Expert Comment

    by:Duncan Roe
    I fetched OpenPBS_2_3_16 and tried this myslef, with the same results as your good self.
    The problem is the ./buildutils/config.sub has no knowledge of X86_64 architecture. In other words, the package does not build for x86_64.
    The way around this is to build it as a 32-bit application. For that, you need two main features:
    1. Your x86_64 system contains 32-bit runtime support (shared libraries in /lib rather than in /lib64 or /usr/lib64...). On my system, I have kept that moderately up to date, as required.
    2. You have a 32-bit bootable Linux on another partition. In that system, your architecture would show up as i686-pc which would be recognised. Again I have one of these, updated from time to time as erquired.
    From your question, I imagine you don't have these facilities right now. They are a bit of work to set up (but as a Slackware user, I'm used to that ;)
    rpm will install "wrong architecture" packages if you override its ARCH check - that's how I got started (because Slackware doesn't actually do x86_64 yet).
    Installing your 32-bit system should be straightforward, as long as you have or can make a spare partition (an extra HDD solves this really quickly).
    THere may be a solution involving "CC='gcc -mi686'" and hacking config.sub, but I've never tried doing it that way.
    LVL 34

    Expert Comment

    by:Duncan Roe
    I may have found a less painful workaround.
    config.sub is just an OS verifier. The version in OpenPBS_2_3_16 is exceptionally old - 1996. I replaced this with a new version and configure ran to completion.

    I located a build.sub with a timestamp in 2008 (iptables- but anuthing newer than say 2002 should do.
    If you have a number of source packages, you could do what I did:

    locate config.sub|xargs grep timestamp|grep 2008

    If that turns up nothing, try 2007, and so on.

    Unfortunately when I tried "make" it failed:

    make[4]: Entering directory `/tmp/OpenPBS_2_3_16/src/lib/Libattr'
    make[4]: *** No rule to make target `<built-in>', needed by `attr_atomic.o'.  Stop.

    Possibly you won't encounter that - it may be related to gcc version. Or you may be able to hack that Makefile not to require built-in and find it still runs to completion.

    Author Comment

    Firstly i thank u all for pouring in your answers..
    I could install OpenPBS by adding my machine architecture in ../buildutils/config.sub @ line 615 (in my case)

    pentiumpro-* | p6-* | x86_64-*)
                basic_machine=i686-`echo $basic_machine | sed 's/^[^-]*-//'`
    with this is could successfully configure it. But when i try to make it i received  an error about node attributes i solved it by

    -extern struct attribute_def  node_attr_def[]; /* node attributes defs */
    +extern struct attribute_def  *node_attr_def[]; /* node attributes defs */

    after installing it successfully,  another error appears when i run it:
    qsub:supporting protocol failure.

    now this where i'm stuck..
    LVL 34

    Expert Comment

    by:Duncan Roe
    You had better luck than I in building! Even if I could build it, I wouldn't want to install it because I have no use for it ATM.
    The message "Supporting protocol failure" corresponds to the DIS_PROTO error that the package defines. This error is raised in a number of places. The error is converted to the text string by accessing the dis_emsg array.

    I was thinking that since qsub is a command, you could run gdb on it (having made sure you have compiled for debugging; -g at a minimum and -g3 -ggdb for best results). But even if you did that, it's not really clear to me how you'd proceed. Is this message output to stderr (appears on console) or was it in the log file? Many instances of output seem to go to the log file (which I suppose might be stderr) but maybe there is a possibility to narrow down candidate instances of outputting the error.

    It could well be that your problem is actually in your environment somewhere (not your environment as output by env, but more generally). Debugging will highlight what is the problem but could be tedious. Is there anything in the documentation? Can you find this error  on Google?
    LVL 29

    Expert Comment

    by:Michael W
    I'm just curious, but what OS platform are you using? I found there are several RPM builds of the OpenPBS for x64 and wondered why just not use one of them?

    Also, when I was reading on one of the RPM builds of the software, this caught my eye:

    * Fri Jun 17 2005 -
      - fixed problem on 64bit platforms.

    So if you are using the pre-2005 release, most likely you still have this problem.


    Author Comment

    I use RHEL5
    I tried installing those rpm's and the one you cited, but the problem is:
    rpm's require tcl/tk 8.0 and i have 8.xx (8.04 if i'm not wrong)
    LVL 29

    Accepted Solution

    Did you try downloading the rpm file then running 'yum localinstall <rpmfile>'?

    Yum will attempt to resolve the dependencies.


    Featured Post

    Highfive Gives IT Their Time Back

    Highfive is so simple that setting up every meeting room takes just minutes and every employee will be able to start or join a call from any room with ease. Never be called into a meeting just to get it started again. This is how video conferencing should work!

    Join & Write a Comment

    Does the idea of dealing with bits scare or confuse you? Does it seem like a waste of time in an age where we all have terabytes of storage? If so, you're missing out on one of the core tools in every professional programmer's toolbox. Learn how to …
    In this post we will learn how to connect and configure Android Device (Smartphone etc.) with Android Studio. After that we will run a simple Hello World Program.
    Learn how to navigate the file tree with the shell. Use pwd to print the current working directory: Use ls to list a directory's contents: Use cd to change to a new directory: Use wildcards instead of typing out long directory names: Use ../ to move…
    An introduction to basic programming syntax in Java by creating a simple program. Viewers can follow the tutorial as they create their first class in Java. Definitions and explanations about each element are given to help prepare viewers for future …

    754 members asked questions and received personalized solutions in the past 7 days.

    Join the community of 500,000 technology professionals and ask your questions.

    Join & Ask a Question

    Need Help in Real-Time?

    Connect with top rated Experts

    22 Experts available now in Live!

    Get 1:1 Help Now