Prentice,

The problem similar to this one encountered by the Open MPI build (Re:
[OMPI users] EXTERNAL: Re: Unresolved reference 'mbind' and
'get_mempolicy'):

http://www.open-mpi.org/community/lists/users/2011/09/17479.php

In Grid Engine 2011.11, we don't use the NUMA functions (as users can
do it easily in the job scripts by using the numactl (8) command). So
we don't need the NUMA library. In Open MPI, there is the
"--without-libnuma" option, which is actually not available in hwloc's
configure script.

So there are 3 options:

1) Use the precompiled binary:
http://dl.dropbox.com/u/47200624/ge2011.11-x64.tar.gz

2) Modify configure in hwloc-1.2.2 to force linking against "-lnuma" to fail.

3) Or wait 1-2 days and I will check in a fix that disables using the
NUMA library in hwloc.

I will check with the hwloc guys and see if they will add a configure
switch for hwloc in their future releases.

Rayson



On Wed, Dec 7, 2011 at 4:09 PM, Prentice Bisbal <[email protected]> wrote:
> Rayson,
>
> Thanks. That was the problem. Now I'm getting another problem. It looks
> like it can't find libnuma, even though I have the numactl and
> numactl-devel packages installed. See error messages at bottom.
>
> I've verified that I have the numa RPMs installed
>
> $ rpm -qa | grep numa
> numactl-devel-0.9.8-12.el5_6
> numactl-0.9.8-12.el5_6
> numactl-0.9.8-12.el5_6
> numactl-devel-0.9.8-12.el5_6
>
> They're listed twice because I have both the i386 and x86_64 versions
> installed. In the past, I've had problems with the linker can't find the
> correct version (32-bit vs. 64-bit version) of the library.  I noticed
> that there's a "-lhwloc" in the command, but no "-lnuma". Is that correct?
>
>
> gcc -o sge_execd -L/build/berkeleydb/lib/ -L. -rdynamic
> -Wl,-rpath,\$ORIGIN/../../lib/linux-x64 -L/build/openssl-install/lib
> execd.o sge_load_sensor.o dispatcher.o exec_job.o execd_ck_to_do.o
> execd_get_new_conf.o execd_job_exec.o execd_kill_execd.o
> execd_signal_queue.o execd_ticket.o get_path.o job_report_execd.o
> load_avg.o pdc.o procfs.o ptf.o reaper_execd.o sge_report_execd.o
> setup_execd.o tmpdir.o usage.o sge_options.o admin_mail.o config_file.o
> mail.o read_write_job.o sge_dirent.o execution_states.o sig_handlers.o
> startprog.o shutdown.o sge_mt_init.o -lgdi -lsgeobj -lsgeobjd   -lcull
> -lcomm -lcommlists -luti  -llck -lrmon -ldl
> -L/work/prentice/GE2011.11/source/3rdparty/hwloc/hwloc-1.2.2/LINUXX64/src/.libs/
> -lhwloc  -ljemalloc -lm -lpthread
> /work/prentice/GE2011.11/source/3rdparty/hwloc/hwloc-1.2.2/LINUXX64/src/.libs//libhwloc.a(topology-linux.o):
> In function `hwloc_linux_set_area_membind':
> topology-linux.c:(.text+0x331): undefined reference to `mbind'
> topology-linux.c:(.text+0x3ac): undefined reference to `mbind'
> /work/prentice/GE2011.11/source/3rdparty/hwloc/hwloc-1.2.2/LINUXX64/src/.libs//libhwloc.a(topology-linux.o):
> In function `hwloc_linux_get_thisthread_membind':
> topology-linux.c:(.text+0x4d5): undefined reference to `get_mempolicy'
> topology-linux.c:(.text+0x5eb): undefined reference to `get_mempolicy'
> /work/prentice/GE2011.11/source/3rdparty/hwloc/hwloc-1.2.2/LINUXX64/src/.libs//libhwloc.a(topology-linux.o):
> In function `hwloc_linux_set_thisthread_membind':
> topology-linux.c:(.text+0x68e): undefined reference to `set_mempolicy'
> topology-linux.c:(.text+0x711): undefined reference to `migrate_pages'
> topology-linux.c:(.text+0x734): undefined reference to `set_mempolicy'
>
> --
> Prentice
>
>
> On 12/07/2011 03:29 PM, Rayson Ho wrote:
>> Likely due to your $JAVA_HOME.
>>
>> If you don't have Java installed, then compile with aimk flags: -no-java 
>> -no-jni
>>
>> Otherwise, make sure it is set correctly:
>>
>> 1) Find the java real directory:
>> $ readlink -f `which java`
>> /usr/lib/jvm/java-1.6.0-openjdk-1.6.0.0.x86_64/jre/bin/java
>>
>> 2) set the JAVA_HOME env. var:
>> $ setenv JAVA_HOME /usr/lib/jvm/java-1.6.0-openjdk-1.6.0.0.x86_64/
>>
>> ("export" instead of "setenv" for bash/sh/ksh)
>>
>> The $JAVA_HOME/include has to contain "jni.h" or else you won't be
>> able to compile the JNI related code in Grid Engine.
>>
>> Rayson
>>
>>
>>
>> On Wed, Dec 7, 2011 at 3:12 PM, Prentice Bisbal <[email protected]> wrote:
>>> I'm trying to compile GE2011.11. I downloaded the tarball from
>>> sourceforge. And I'm getting this error:
>>>
>>> In file included from /usr/include/_G_config.h:44,
>>> from /usr/include/libio.h:32,
>>> from /usr/include/stdio.h:72,
>>> from ../libs/sgeobj/config.c:33:
>>> /usr/include/gconv.h:72: error: expected declaration specifiers or ‘...’
>>> before ‘size_t’
>>> /usr/include/gconv.h:88: error: expected declaration specifiers or ‘...’
>>> before ‘size_t’
>>> /usr/include/gconv.h:97: error: expected declaration specifiers or ‘...’
>>> before ‘size_t’
>>> /usr/include/gconv.h:174: error: expected specifier-qualifier-list
>>> before ‘size_t’
>>> In file included from /usr/include/stdio.h:72,
>>>
>>> I'm sure I'm missing some include file(s) somewhere, but I can't figure
>>> out which one. Of, course when I google for these errors, I get
>>> a bazillion hits for other errors include the string "size_t", so it
>>> hasn't been very fruitful.
>>>
>>> Any assistance will be greatly appreciated. I'm sure it's something
>>> minor. I'm building on a RHEL 5.7 system, using gcc
>>>
>>> --
>>> Prentice
>>>
>>> _______________________________________________
>>> users mailing list
>>> [email protected]
>>> https://gridengine.org/mailman/listinfo/users
> _______________________________________________
> users mailing list
> [email protected]
> https://gridengine.org/mailman/listinfo/users

_______________________________________________
users mailing list
[email protected]
https://gridengine.org/mailman/listinfo/users

Reply via email to