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

Update topcom to 1.1.2, fix cddlib header search #31531

Closed
mkoeppe opened this issue Mar 21, 2021 · 43 comments
Closed

Update topcom to 1.1.2, fix cddlib header search #31531

mkoeppe opened this issue Mar 21, 2021 · 43 comments

Comments

@mkoeppe
Copy link
Contributor

mkoeppe commented Mar 21, 2021

Part of #29413.

TOPCOM home page has moved to:

For what's new in 1.1.x, see the changelog at:

Our 0.17.7 tarball was built using spkg-src and deposited in https://github.com/mkoeppe/topcom; but there is no git repository.

Arch linux already has an 1.1.x package - https://github.com/archlinux/svntogit-community/blob/packages/topcom/trunk/PKGBUILD

Upstream: Reported upstream. No feedback yet.

CC: @kiwifb @kliem @orlitzky @slel @antonio-rojas @tscrim

Component: packages: optional

Keywords: upgrade, topcom

Author: Dima Pasechnik

Branch/Commit: e481535

Reviewer: Matthias Koeppe

Issue created by migration from https://trac.sagemath.org/ticket/31531

@mkoeppe mkoeppe added this to the sage-9.3 milestone Mar 21, 2021
@slel
Copy link
Member

slel commented Mar 23, 2021

comment:1

Changelog at ​http://www.rambau.wm.uni-bayreuth.de/TOPCOM/ChangeLog does not say what's new in 0.17.8

The TOPCOM home page
has this about changes in 0.17.8:

TOPCOM version 0.17.8 updates to gmp-6.1.1 and current
automake/autoconf initialization. In the previous
version 0.17.7, accidentally a wrong version of gmp
was included. Furthermore, a bug was fixed where
a new[] was not followed by a delete[] but a delete.

@slel
Copy link
Member

slel commented Mar 23, 2021

comment:2

For very large problems, one can use Jordan-Joswig-Kastner's
parallel mptopcom which
in addition to TOPCOM,
is based on Polymake
and mts.

@mkoeppe
Copy link
Contributor Author

mkoeppe commented Mar 24, 2021

comment:3

Sage development has entered the release candidate phase for 9.3. Setting a new milestone for this ticket based on a cursory review of ticket status, priority, and last modification date.

@mkoeppe mkoeppe modified the milestones: sage-9.3, sage-9.4 Mar 24, 2021
@mkoeppe mkoeppe modified the milestones: sage-9.4, sage-9.5 Aug 9, 2021
@mkoeppe
Copy link
Contributor Author

mkoeppe commented Sep 18, 2021

comment:5

Last package to fix for the cddlib header situation... #29413

@slel
Copy link
Member

slel commented Nov 12, 2021

Changed keywords from none to upgrade, topcom

@slel

This comment has been minimized.

@slel
Copy link
Member

slel commented Nov 12, 2021

comment:7

The TOPCOM homepage announces an upcoming new version:

current version is 0.17.8,
improved multi-threaded version 1.0.5 currently in test phase

and also points to MTOPCOM.

@slel

This comment has been minimized.

@kliem
Copy link
Contributor

kliem commented Dec 6, 2021

comment:8

I didn't have any luck with it. I tried to figure it out the entire forenoon, which is way more time then I wanted to spend with it.

Tried to use the check from latte, but it always ends like this:

[topcom-0.17.8-beta.11] checking for CDDLIB >= 093c... configure: headers are not in cddlib/
[topcom-0.17.8-beta.11] configure: headers are not in inclusion directory
[topcom-0.17.8-beta.11] configure: headers are not in cdd/
[topcom-0.17.8-beta.11] not found
[topcom-0.17.8-beta.11] checking for CDDLIB >= 093c... configure: headers are not in cddlib/
[topcom-0.17.8-beta.11] configure: headers are not in inclusion directory
[topcom-0.17.8-beta.11] configure: headers are not in cdd/
[topcom-0.17.8-beta.11] not found
[topcom-0.17.8-beta.11] configure: error: The cddlib headers and library are required for topcom.

Probably didn't have gmp linked in and thus couldn't compile the tests.

I pushed the tries here: https://github.com/kliem/topcom/

All that seems to be needed is to modify lib-src-reg/LPinterface.hh to use #include CDDLIB_SETOPER_H and #include CDDLIB_CDD_H.

Anyway, it seems to be one big mess.

@mkoeppe mkoeppe modified the milestones: sage-9.5, sage-9.6 Dec 18, 2021
@mkoeppe mkoeppe modified the milestones: sage-9.6, sage-9.7 Mar 5, 2022
@slel
Copy link
Member

slel commented Jul 7, 2022

comment:11

TOPCOM homepage now has TOPCOM 0.17.10, and pre-announces:

improved multi-threaded version 1.0.x currently in test phase

@mkoeppe mkoeppe modified the milestones: sage-9.7, sage-9.8 Aug 6, 2022
@slel

This comment has been minimized.

@slel slel changed the title Update topcom to 0.17.8, fix cddlib header search Update topcom to 1.1.0, fix cddlib header search Sep 12, 2022
@mkoeppe mkoeppe changed the title Update topcom to 1.1.0, fix cddlib header search Update topcom to 1.1.1, fix cddlib header search Sep 28, 2022
@mkoeppe

This comment has been minimized.

@mkoeppe
Copy link
Contributor Author

mkoeppe commented Sep 28, 2022

comment:16

Upstream topcom still doesn't handle the changed cddlib header locations

[topcom-1.1.1] mv -f .deps/SPXinterface.Tpo .deps/SPXinterface.Po
[topcom-1.1.1] mv -f .deps/QSOinterface.Tpo .deps/QSOinterface.Po
[topcom-1.1.1] In file included from LPinterface.cc:12:
[topcom-1.1.1] ./LPinterface.hh:24:10: fatal error: 'setoper.h' file not found
[topcom-1.1.1] #include "setoper.h"
[topcom-1.1.1]          ^~~~~~~~~~~
[topcom-1.1.1] 1 error generated.
[topcom-1.1.1] make[4]: *** [LPinterface.o] Error 1
[topcom-1.1.1] make[4]: *** Waiting for unfinished jobs....
[topcom-1.1.1] In file included from RegularityCheck.cc:13:
[topcom-1.1.1] In file included from ./RegularityCheck.hh:27:
[topcom-1.1.1] ./LPinterface.hh:24:10: fatal error: 'setoper.h' file not found
[topcom-1.1.1] #include "setoper.h"
[topcom-1.1.1]          ^~~~~~~~~~~
[topcom-1.1.1] 1 error generated.

@mkoeppe
Copy link
Contributor Author

mkoeppe commented Sep 29, 2022

@dimpase
Copy link
Member

dimpase commented Oct 3, 2022

comment:26

Replying to Matthias Köppe:

Upstream confirmed by email that they are not interested in having a github repo.
So I'd suggest that we create a repo for tracking upstream in github.com/sagemath, updating ​https://github.com/kliem/topcom/

I am not sure whether proper updating makes much sense. It seems topcom underwent a serious rewrite since the last changes in https://github.com/kliem/topcom/, with qiute a bit of C++ and examples added - while changes in https://github.com/kliem/topcom/ were not used.
I sure can overwrite https://github.com/kliem/topcom/ with 1.1.1+my patches, otherwise it looks like too much work for little gain.

@dimpase
Copy link
Member

dimpase commented Oct 3, 2022

Author: Matthias Koeppe, Dima Pasechnik

@dimpase
Copy link
Member

dimpase commented Oct 3, 2022

comment:27

apart from the issue of proper tarball hosting (Rambau asked his IT to look into it), looks good, and works on Linux (and on M1 macOS), with or without cddlib from the system.

@sagetrac-git
Copy link
Mannequin

sagetrac-git mannequin commented Oct 3, 2022

Branch pushed to git repo; I updated commit sha1. New commits:

4270822better download location

@sagetrac-git
Copy link
Mannequin

sagetrac-git mannequin commented Oct 3, 2022

Changed commit from e97a2cd to 4270822

@dimpase
Copy link
Member

dimpase commented Oct 3, 2022

comment:29

automatic downloading should work now, I put the tarball on my pages.

@mkoeppe
Copy link
Contributor Author

mkoeppe commented Oct 4, 2022

comment:30

seems to work on macOS Intel too.

@mkoeppe
Copy link
Contributor Author

mkoeppe commented Oct 4, 2022

Reviewer: ..., Matthias Koeppe

@dimpase
Copy link
Member

dimpase commented Oct 13, 2022

comment:32

topcom 1.1.2 has been released

@dimpase dimpase changed the title Update topcom to 1.1.1, fix cddlib header search Update topcom to 1.1.2, fix cddlib header search Oct 14, 2022
@dimpase
Copy link
Member

dimpase commented Oct 17, 2022

@dimpase
Copy link
Member

dimpase commented Oct 17, 2022

Changed commit from 4270822 to 779b1df

@dimpase
Copy link
Member

dimpase commented Oct 17, 2022

New commits:

779b1dfupdate topcom to 1.1.2

@sagetrac-git
Copy link
Mannequin

sagetrac-git mannequin commented Oct 18, 2022

Branch pushed to git repo; I updated commit sha1. New commits:

e481535reformat doctest

@sagetrac-git
Copy link
Mannequin

sagetrac-git mannequin commented Oct 18, 2022

Changed commit from 779b1df to e481535

@dimpase
Copy link
Member

dimpase commented Oct 18, 2022

comment:36

While our (or any system) cddlib is not thead-safe, TOPCOM interface does not use multithreading, so it can be used as it is. So this can go forward. (TOPCOM bundles an oldish (0.94j) cddlib with multithreading patches).

The next release of cddlib will contain the necessary for multithreading patch, see
cddlib/cddlib@1210faf

@mkoeppe
Copy link
Contributor Author

mkoeppe commented Oct 19, 2022

Changed author from Matthias Koeppe, Dima Pasechnik to Dima Pasechnik

@mkoeppe
Copy link
Contributor Author

mkoeppe commented Oct 19, 2022

Changed reviewer from ..., Matthias Koeppe to Matthias Koeppe

@vbraun
Copy link
Member

vbraun commented Oct 23, 2022

@vbraun vbraun closed this as completed in 2049b70 Oct 23, 2022
kryzar pushed a commit to kryzar/sage that referenced this issue Feb 6, 2023
Regression probably introduced by Trac sagemath#31531: Update topcom to 1.1.2,
fix cddlib header search
{{{
[topcom-1.1.2] config.status: executing depfiles commands
[topcom-1.1.2] configure: WARNING: unrecognized options: --with-gmp,
--with-cdd
[topcom-1.1.2] CDPATH="${ZSH_VERSION+.}:" && cd . && /bin/bash /var/lib/
buildbot/slave/sage_git/build/local/var/tmp/sage/build/topcom-1.1.2/src/
missing aclocal-1.16
[topcom-1.1.2] /var/lib/buildbot/slave/sage_git/build/local/var/tmp/sage
/build/topcom-1.1.2/src/missing: line 81: aclocal-1.16: command not
found
[topcom-1.1.2] WARNING: 'aclocal-1.16' is missing on your system.
[topcom-1.1.2]          You should only need it if you modified
'acinclude.m4' or
[topcom-1.1.2]          'configure.ac' or m4 files included by
'configure.ac'.
[topcom-1.1.2]          The 'aclocal' program is part of the GNU
Automake package:
[topcom-1.1.2]          <https://www.gnu.org/software/automake>
[topcom-1.1.2]          It also requires GNU Autoconf, GNU m4 and Perl
in order to run:
[topcom-1.1.2]          <https://www.gnu.org/software/autoconf>
[topcom-1.1.2]          <https://www.gnu.org/software/m4/>
[topcom-1.1.2]          <https://www.perl.org/>
[topcom-1.1.2] Makefile:336: recipe for target 'aclocal.m4' failed
[topcom-1.1.2] make[3]: *** [aclocal.m4] Error 127
[topcom-1.1.2] Error building TOPCOM.
[topcom-1.1.2]
[topcom-1.1.2] real     0m5.408s
[topcom-1.1.2] user     0m2.672s
[topcom-1.1.2] sys      0m0.512s
[topcom-1.1.2]
************************************************************************
[topcom-1.1.2] Error installing package topcom-1.1.2
[topcom-1.1.2]
************************************************************************
[topcom-1.1.2] Please email sage-devel (http://groups.google.com/group
/sage-devel)
[topcom-1.1.2] explaining the problem and including the log files
[topcom-1.1.2]
/var/lib/buildbot/slave/sage_git/build/logs/pkgs/topcom-1.1.2.log
[topcom-1.1.2] and
[topcom-1.1.2]   /var/lib/buildbot/slave/sage_git/build/config.log
[topcom-1.1.2] Describe your computer, operating system, etc.
[topcom-1.1.2] If you want to try to fix the problem yourself, *don't*
just cd to
[topcom-1.1.2] /var/lib/buildbot/slave/sage_git/build/local/var/tmp/sage
/build/topcom-1.1.2 and type 'make' or whatever is appropriate.
[topcom-1.1.2] Instead, the following commands setup all environment
variables
[topcom-1.1.2] correctly and load a subshell for you to debug the error:
[topcom-1.1.2]   (cd '/var/lib/buildbot/slave/sage_git/build/local/var/t
mp/sage/build/topcom-1.1.2' &&
'/var/lib/buildbot/slave/sage_git/build/sage' --buildsh)
[topcom-1.1.2] When you are done debugging, you can type "exit" to leave
the subshell.
[topcom-1.1.2]
************************************************************************
Makefile:3067: recipe for target 'topcom-SAGE_LOCAL-no-deps' failed
make[2]: *** [topcom-SAGE_LOCAL-no-deps] Error 1
Makefile:3067: recipe for target '/var/lib/buildbot/slave/sage_git/build
/local/var/lib/sage/installed/topcom-1.1.2' failed
make[1]: *** [/var/lib/buildbot/slave/sage_git/build/local/var/lib/sage/
installed/topcom-1.1.2] Error 2
make[1]: Leaving directory
'/var/lib/buildbot/slave/sage_git/build/build/make'
}}}

URL: https://trac.sagemath.org/34729
Reported by: vbraun
Ticket author(s): Matthias Koeppe
Reviewer(s): Dima Pasechnik
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Projects
None yet
Development

No branches or pull requests

6 participants