Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Cannot install, build error #49

Closed
MikeDacre opened this issue Nov 25, 2015 · 5 comments
Closed

Cannot install, build error #49

MikeDacre opened this issue Nov 25, 2015 · 5 comments

Comments

@MikeDacre
Copy link

python setup.py build --slurm-lib=/usr/lib64/ --slurm-inc=/usr/include fails with the following error:

pyslurm/pyslurm.c: At top level:
pyslurm/pyslurm.c:68541:65: error: unknown type name ‘connection_type’
 static CYTHON_INLINE PyObject* __Pyx_PyInt_From_connection_type(connection_type value) {
                                                             ^
pyslurm/pyslurm.c:68567:63: error: unknown type name ‘node_use_type’
 static CYTHON_INLINE PyObject* __Pyx_PyInt_From_node_use_type(node_use_type value) {
                                                               ^
error: command 'gcc' failed with exit status 1

System is CentOS 6.6 with the following packages:

slurm-devel-14.11.8-1.el6.x86_64
slurm-pam_slurm-14.11.8-1.el6.x86_64
slurm-plugins-14.11.8-1.el6.x86_64
slurm-torque-14.11.8-1.el6.x86_64
slurm-spank-x11-0.2.5-1.x86_64
slurm-perlapi-14.11.8-1.el6.x86_64
slurm-blcr-14.11.8-1.el6.x86_64
slurm-munge-14.11.8-1.el6.x86_64
slurm-14.11.8-1.el6.x86_64

rpm -ql slurm-devel | head -n 15 returns:

/usr/include/slurm
/usr/include/slurm/pmi.h
/usr/include/slurm/pmi2.h
/usr/include/slurm/slurm.h
/usr/include/slurm/slurm_errno.h
/usr/include/slurm/slurmdb.h
/usr/include/slurm/smd_ns.h
/usr/include/slurm/spank.h
/usr/lib64/libpmi.la
/usr/lib64/libpmi2.la
/usr/lib64/libslurm.la
/usr/lib64/libslurmdb.la
/usr/lib64/pkgconfig
/usr/lib64/pkgconfig/slurm.pc
/usr/share/man/man3/slurm_allocate_resources.3.gz

/usr/include/slurm/slurm.h includes the following lines:

enum node_use_type {
        SELECT_COPROCESSOR_MODE,/* use extra processor for communications */
        SELECT_VIRTUAL_NODE_MODE,/* application uses both processors */
        SELECT_NAV_MODE         /* either mode is acceptable */
};

enum connection_type {
        SELECT_MESH,            /* nodes wired in mesh */
        SELECT_TORUS,           /* nodes wired in torus */
        SELECT_NAV,             /* nodes wired in torus else mesh */
        SELECT_SMALL,           /* nodes in a small partition */
        SELECT_HTC_S,           /* nodes in a htc running SMP mode */
        SELECT_HTC_D,           /* nodes in a htc running Dual mode */
        SELECT_HTC_V,           /* nodes in a htc running VN mode */
        SELECT_HTC_L            /* nodes in a htc running in Linux mode */
};

I have no idea how to get it to install.

@gingergeeks
Copy link
Member

Hi Mike,
I'm away from my test box at the moment but I can take a look tomorrow evening. I'm assuming this was with the 14.11.5 version of PySlurm you were using ?

You could try using - python setup.py build --slurm=/usr

Regards

Mark

@MikeDacre
Copy link
Author

No problem. And it is the just a clone of the current git repo (as of two hours ago) that I am using. Using --slurm=/usr gives exactly the same error. I am not sure if it is unable to find the slurm.h file, or if there is something else missing.

@MikeDacre
Copy link
Author

I just tried with the 14.11.5 branch and got a different error:

python setup.py build --slurm-lib=/usr/lib64 --slurm-inc=/usr/include
INFO:root:Info: 
INFO:root:Info: Building PySlurm (14.11.5)
INFO:root:Info: ------------------------------
INFO:root:Info: 
INFO:root:Info: Cython version 0.23.4 installed

INFO:root:Info: Clean - checking for objects to clean
INFO:root:Info: Clean - removing pyslurm build temp directory ...
INFO:root:Info: Clean - removing pyslurm/pyslurm.c temp file
INFO:root:Info: Clean - removing pyslurm/bluegene.pxi temp file
INFO:root:Info: Clean - completed
INFO:root:Info: Build - Detected Slurm include file version - 0x0e0b08 (14.11.08)
INFO:root:Info: Build - Writing Slurm version to pyslurm/slurm_version.pxi
INFO:root:Info: Build - Generating pyslurm/bluegene.pxi file
running build
running build_py
creating build
creating build/lib.linux-x86_64-2.7
creating build/lib.linux-x86_64-2.7/pyslurm
copying pyslurm/__init__.py -> build/lib.linux-x86_64-2.7/pyslurm
running build_ext
cythoning pyslurm/pyslurm.pyx to pyslurm/pyslurm.c
building 'pyslurm.pyslurm' extension
creating build/temp.linux-x86_64-2.7
creating build/temp.linux-x86_64-2.7/pyslurm
gcc -pthread -fno-strict-aliasing -O2 -g -pipe -Wall -Wp,-D_FORTIFY_SOURCE=2 -fexceptions -fstack-protector --param=ssp-buffer-size=4 -m64 -mtune=generic -D_GNU_SOURCE -fPIC -fwrapv -DNDEBUG -O2 -g -pipe -Wall -Wp,-D_FORTIFY_SOURCE=2 -fexceptions -fstack-protector --param=ssp-buffer-size=4 -m64 -mtune=generic -D_GNU_SOURCE -fPIC -fwrapv -I/usr/include -I/usr/include/slurm -fPIC -I/usr/include -I. -I/opt/rh/python27/root/usr/include/python2.7 -c pyslurm/pyslurm.c -o build/temp.linux-x86_64-2.7/pyslurm/pyslurm.o
{standard input}: Assembler messages:
{standard input}:1351: Error: expecting string instruction after `rep'
{standard input}:1356: Error: expecting string instruction after `rep'
error: command 'gcc' failed with exit status 1

@gingergeeks
Copy link
Member

Mike,
Thank you for that trace. I'm now free for a month (Yay !) so I will have more free time. At first glance it looks like gcc is having an issue. What version of gcc are you using and what version of bin-utils are you using (as --version) ? The reason I ask is because I saw similar issues with an older version of binutils and after upgrading my errors went away.

Mark

@MikeDacre
Copy link
Author

Yes, you were right. I changed the gcc build system on the server to a different version and it compiles fine now. I am having another issue now, but I will open a separate issue for that.

Thanks for your help.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

No branches or pull requests

2 participants