bugGNU Octave - Bugs: bug #45362, pkg load stk fails (stk-2.3.0)

 
 

bug #45362: pkg load stk fails (stk-2.3.0)

Submitter:  marco atzeri <matzeri>
Submitted:  Sat 20 Jun 2015 08:11:31 AM UTC
   
 
Category:  Octave Package Severity:  3 - Normal
Priority:  5 - Normal Item Group:  Installation Failure
Status:  Fixed Assigned to:  None
Originator Name:  Open/Closed:  * Closed
Release:  * 4.0.0 Operating System:  * Microsoft Windows
Fixed Release:  None Planned Release:  None
* Mandatory Fields

Add a New Comment Rich Markup
   

Jump to the original submission

Mon 22 Jun 2015 04:35:53 PM UTC, comment #11: 

Thanks Carnë.

@Marco: until bug #45369 is solved, you can create a valid binary package for cygwin, using stk 2.3.1 (just released), by manually removing the PKG_ADD/PKG_DEL files created by 'pkg build'.

Julien Bect <jbect>
Sun 21 Jun 2015 12:17:43 PM UTC, comment #10: 

Closing this bug report. I have opened a new bug report (bug #45369) about the issue with pkg build and PKG_ADD.

Carnë Draug <carandraug>
Group Member
Sun 21 Jun 2015 08:06:33 AM UTC, comment #9: 

Based on the analysis presented in my previous post (#8) I would recommend:

1) that this bug report should be closed, since the original problem with stk < 2.3.1 is solved in the upcoming stk 2.3.1 release;

2) that another bug report should be opened, concerning the 'pkg build' / 'pkg install' problem this time.

@++
Julien

Julien Bect <jbect>
Sun 21 Jun 2015 08:04:03 AM UTC, comment #8: 

Ok. It looks now like we are dealing with a problem with 'pkg' itself. Let me explain what I think is happening, because this is not the first time that I have problem with undocumented features of pkg in relation with arch-dependent / arch-independent directories.

There are no PKG_ADD/PKG_DEL files in stk. Only PKG_ADD/PKG_DEL directives, located inside stk_init.m, which trigger the creation of the corresponding files.

When you call 'pkg build', a first set of PKG_ADD/PKG_DEL files is created where I expect them to be, that is, at the root of the arch-independent directory.

When you call 'pkg install' on the generated binary package, two things happen. First, the PKG_ADD/PKG_DEL files created by 'pkg build' are moved to the arch-dependent directory. Second, the PKG_ADD/PKG_DEL directive are parsed (again), which leads to the creation of another set of PKG_ADD/PKG_DEL files in the arch-independent directory.

Julien Bect <jbect>
Sun 21 Jun 2015 07:51:53 AM UTC, comment #7: 

Answered by Marco on the mailing list:

> Hi Julien,
> may be is not a cygwin specific but due to to other directives
> that I am using during the packaging.
>
> I just tried a a local installation and the result is similar to yours:
>
> $ find ~/octave/ -name PKG*
> /home/marco/octave/stk-2.3.1/PKG_ADD
> /home/marco/octave/stk-2.3.1/PKG_DEL
>
> so only one copy of the scripts.
>
> My cygwin build script has:
>
>         octave-cli --eval "
>         echo on all
>         diary ../log/diary
>         more off
>         pkg prefix ${D}/usr/share/octave/packages/ ${D}/usr/lib/octave/packages/
>         pkg local_list  ${B}/octave_packages
>         pkg global_list  ${B}/octave_packages
>         pkg build -nodeps -noauto -global -verbose ${B} ${S}/stk-${PV}.tar.gz
> "
>
> where ${D}, ${B} and ${S} are specific directory of the build
> systems.
>
> the binary package has also only one copy:
> tar -tf stk-2.3.1.tar.gz |grep PKG
> stk/PKG_ADD
> stk/PKG_DEL
>
> but after the install directive using the just built binary
>
>         octave-cli --eval "
>         echo on all
>         diary ../log/diary
>         more off
>         pkg prefix ${D}/usr/share/octave/packages/ ${D}/usr/lib/octave/packages/
>         pkg local_list  ${B}/octave_packages
>         pkg global_list  ${B}/octave_packages
>         pkg install -nodeps -noauto -global -verbose ${B}/stk-${OV}.tar.gz
>         pkg list
> "
>
> I found two copies in the temporary install directory:
>
> $ find inst -name "PKG*"
> inst/usr/lib/octave/packages/stk-2.3.1/x86_64-unknown-cygwin-api-v50+/PKG_ADD
> inst/usr/lib/octave/packages/stk-2.3.1/x86_64-unknown-cygwin-api-v50+/PKG_DEL
> inst/usr/share/octave/packages/stk-2.3.1/PKG_ADD
> inst/usr/share/octave/packages/stk-2.3.1/PKG_DEL
>
> Regards
> Marco

Julien Bect <jbect>
Sat 20 Jun 2015 02:49:52 PM UTC, comment #6: 
Julien Bect <jbect>
Sat 20 Jun 2015 02:40:30 PM UTC, comment #5: 

No. I expect exactly one PKG_ADD and one PKG_DEL, both in the arch-independent directory---that is, in the same directory as stk_init.m, which contains the corresponding PKG_ADD/PKG_DEL directives.

The content that you see is ok, but the files should not be duplicated in the arch-dependent directory (I have checked both on Win7 32 bits and Ubuntu 14.10 32 bits that they are not).

Perhaps a Cygwin-specific issue? Do you observe the same phenomenon (duplicated PKG_ADD and PKG_DEL files) with other Octave-Forge packages?


Julien Bect <jbect>
Sat 20 Jun 2015 02:17:12 PM UTC, comment #4: 

for what I see

pkg build -nodeps -noauto -global -verbose ..

creates two PKG_ADD and two PKG_DEL

$ find . -name PKG*
./usr/lib/octave/packages/stk-2.3.1/x86_64-unknown-cygwin-api-v50+/PKG_ADD
./usr/lib/octave/packages/stk-2.3.1/x86_64-unknown-cygwin-api-v50+/PKG_DEL
./usr/share/octave/packages/stk-2.3.1/PKG_ADD
./usr/share/octave/packages/stk-2.3.1/PKG_DEL

with the same content
$ cat PKG_ADD

stk_init ();

$ cat PKG_DEL

stk_init (true);


I assume from your comments that only a single PKG_ADD and no PKG_DEL is expected by you.

I can send you the package resulting from pkg build, if you are interested.



marco atzeri <matzeri>
Sat 20 Jun 2015 12:57:28 PM UTC, comment #3: 

Thanks Marco.

***

Concerning the "pkg unload all" issue: I can see from the error message that you have a PKG_DEL in the arch-dependent folder. There should be no such file there...

Also, I don't understand why 'stk_init' is not found if the stk package has been properly loaded. The file stk_init.m should be at the root of the stk package.

Do you have any idea what's going on? Perhaps can you try uninstalling stk completely and then installing again?


***

Concerning the failed tests: all (but one) of them are related to a regression in Octave 4.0.0 (see bug #45118). A patch has been proposed that solves the problem, but it's not merged yet.

There is another failed test (from stk_example_kb09.m) that I don't understand. But it's not cygwin-specific, I have seen it on other platforms. It seems to be a problem related to Octave's 'test' function.

***

Thanks again


Julien Bect <jbect>
Sat 20 Jun 2015 10:49:11 AM UTC, comment #2: 

that issue is solved but there is still an issue on

+ pkg ('unload', 'all')
error: 'stk_init' undefined near line 2 column 1
error: called from
    /usr/lib/octave/packages/stk-2.3.1/x86_64-unknown-cygwin-api-v50+/PKG_DEL at line 2 column 1
    unload_packages at line 75 column 7
    pkg at line 428 column 7
    test_octave-stk.m at line 641 column 2


For your convenience attached the output of running "test"
for every m-file in the package.
There are some fails on "assert (isequal ..."




(file #34277)

marco atzeri <matzeri>
Sat 20 Jun 2015 08:19:13 AM UTC, comment #1: 

Hello Marco,

There was a similar problem observed recently with MacPorts (see bug #45091).

The problem should be solved now. Or so I hope. Can you please try the 2.3.1 release candidate (tarball attached)?

If the release candidate solves the problem, then please wait a few days before packaging. The actual release will come soon.

@++
Julien



(file #34274)

Julien Bect <jbect>
Sat 20 Jun 2015 08:11:31 AM UTC, original submission:  

on cygwin building and installing the package work
however the package is not functional:

octave:1> pkg load stk
warning: addpath: /usr/lib/octave/packages/stk-2.3.0/x86_64-unknown-cygwin-api-v50+/config: No such file or directory
warning: called from
    /usr/lib/octave/packages/stk-2.3.0/x86_64-unknown-cygwin-api-v50+/PKG_ADD at line 39 column 1
    load_packages_and_dependencies at line 47 column 5
    load_packages at line 60 column 3
    pkg at line 422 column 7
error: 'stk_config_mole' undefined near line 42 column 1
error: called from
    /usr/lib/octave/packages/stk-2.3.0/x86_64-unknown-cygwin-api-v50+/PKG_ADD at line 42 column 1
    load_packages_and_dependencies at line 47 column 5
    load_packages at line 60 column 3
    pkg at line 422 column 7


It seems that PKG_ADD, PKG_DEL are in the wrong directory.
Moving it, solve the issue:

mv /usr/lib/octave/packages/stk-2.3.0/x86_64-unknown-cygwin-api-v50+/PKG_ADD /usr/share/octave/packages/stk-2.3.0/

octave:1> pkg load stk
octave:2>





marco atzeri <matzeri>

 

(Note: upload size limit is set to 16384 kB, after insertion of the required escape characters.)

Attach Files:
   
   
Comment:
   

Attached Files
file #34277:  test_stk.log.bz2 added by matzeri (10KiB - application/x-bzip-compressed-tar)
file #34274:  stk-2.3.1-rc1.tar.gz added by jbect (222KiB - application/gzip)

 

Depends on the following items: None found

Items that depend on this one: None found

 

Carbon-Copy List
  • -email is unavailable- added by jbect (Updated the item)
  • -email is unavailable- added by matzeri (Submitted the item)
  • -email is unavailable- added by matzeri
  •  

    There are 0 votes so far. Votes easily highlight which items people would like to see resolved in priority, independently of the priority of the item set by tracker managers.

    Only group members can vote.

     

    Follow 5 latest changes.

    Date Changed by Updated Field Previous Value => Replaced by
    2015-06-21 carandraug StatusNone Fixed
        Open/ClosedOpen Closed
    2015-06-20 matzeri Attached File- Added test_stk.log.bz2, #34277
    2015-06-20 jbect Attached File- Added stk-2.3.1-rc1.tar.gz, #34274
    2015-06-20 matzeri Carbon-Copy- Added -email is unavailable-

    Back to the top

    Powered by Savane 3.13-758e.
    Corresponding source code