problem of Unable to read layout--no header lines found

Moderators: cyao, soliday

Post Reply
jcytsai
Posts: 41
Joined: 01 Oct 2012, 20:18

problem of Unable to read layout--no header lines found

Post by jcytsai » 18 Nov 2013, 18:03

Dear Drs. Soliday and Yao,

Recently I had a parallel version of ELEGANT installed on local machines (compiling from source codes). After overcoming some installation issues, now PELEGANT can run successfully. However, I met an error message when using smoothDist6s under this installation; let me copy the message below:
-----
Error5: unknown keyword/value given: 1.2
Error (sddshist): invalid -majorOrder syntax/values
Error for sddssmooth:
Unable to read layout--no header lines found (SDDS_ReadLayout)
Error for sddsprocess:
Unable to read layout--no header lines found (SDDS_ReadLayout)
-----

Using this smoothDist6s (or, specialized tools) in another situation (with prebuilt rpm downloaded from the website) has no problem and works perfectly. I have no idea where goes wrong with this situation/installation; could you help resolve this issue or suggest some specific diagnostic steps for me? I am new to linux environment; just let me know if I can provide you for further information. Thank you very much for the help!

Best regards,
Cheng-Ying
ps. the OS is CentOS 64 bit

soliday
Posts: 391
Joined: 28 May 2008, 09:15

Re: problem of Unable to read layout--no header lines found

Post by soliday » 19 Nov 2013, 11:15

You uncovered a bug in sddshist. The -expand and -majorOrder options got swapped. I am fixing it in our source code, but if you have your own copy, edit extensions/src/SDDS/sddshist.c and change line 109 so that "expand" comes before "majorOrder" and not the reverse like it is now.

jcytsai
Posts: 41
Joined: 01 Oct 2012, 20:18

Re: problem of Unable to read layout--no header lines found

Post by jcytsai » 19 Nov 2013, 12:44

Dear Dr. Soliday,

I tried what you suggested; the previous error message disappeared. Instead, it shows

couldn't execute "sddsanalyzebeam": no such file or directory

When looking into oag/apps/src/elegant/elegantTools/ directory, I found sddsanalyzebeam.c. What does it mean?
Just to make sure: is the file sddshist.c in extensions/src/SDDS/sddshist.c? I found it in extensions/src/SDDS/SDDSaps/sddshist.c, so I modified the file in the SDDSaps directory. I feel this may almost be resolved.

Thank you very much for the help!
Cheng-Ying

soliday
Posts: 391
Joined: 28 May 2008, 09:15

Re: problem of Unable to read layout--no header lines found

Post by soliday » 19 Nov 2013, 13:47

It means that you probably didn't compile the code in the elegantTools directory. Go to that directory and run "make" and it should create the O.linux-x64_64 subdirectory containing various programs including sddsanalyzebeam. It will also be copied over to the oag/apps/bin/linux-x86_64 directory.

jcytsai
Posts: 41
Joined: 01 Oct 2012, 20:18

Re: problem of Unable to read layout--no header lines found

Post by jcytsai » 19 Nov 2013, 14:15

Dear Dr. Soliday,

Thanks for your quick reply.
I just run "make" under the oag/apps/src/elegant/elegantTools directory and it does create O.linux-x86_64 under the same directory and those programs found at the oag/apps/bin/linux-x86_64 directory. However, the same error message shows:

couldn't execute "sddsanalyzebeam": no such file or directory

Is it possibly due to missing some path variable setting? because when using like smoothDist6s I need to type in command line "/home/jcytsai/pelegant/oag/apps/src/elegant/elegantTools/smoothDist6s", otherwise it would show the information like (if I just type "smoothDist6s")

smoothDist6s: Command not found

I just checked Installation Guide (http://www.aps.anl.gov/Accelerator_Syst ... node2.html) and, according to the guide, current instllation only has the following environment variables and path set:

set path=(/home/jcytsai/pelegant/epics/extensions/bin/linux-x86_64 $path)
set path=(/home/jcytsai/pelegant/epics/base/bin/linux-x86_64 $path)
set path=(/usr/mpi/gcc/mvapich2-1.8/bin $path)
set path=(. $path)
setenv HOST_ARCH linux-x86_64
setenv EPICS_HOST_ARCH linux-x86_64
setenv RPN_DEFNS /home/jcytsai/pelegant/defns.rpn

Thanks again for your kind help!
Cheng-Ying

soliday
Posts: 391
Joined: 28 May 2008, 09:15

Re: problem of Unable to read layout--no header lines found

Post by soliday » 19 Nov 2013, 14:31

Yes, it has to be in your PATH environment variable or you will not be able to execute it without using the full path name. I figured since it goes in the same oag/apps/bin/linux-x86_64 directory that elegant goes to, that you already had it in your path.

jcytsai
Posts: 41
Joined: 01 Oct 2012, 20:18

Re: problem of Unable to read layout--no header lines found

Post by jcytsai » 19 Nov 2013, 15:12

Dear Dr. Soliday,

After adding oag/apps/bin/linux-x86_64 into the PATH, it is working now.
Thanks for your quick reply and very helpful information!

Cheng-Ying

Post Reply