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

Successful Compiling ARM64 Android via Termux #28

Closed
defencedog opened this issue Sep 27, 2022 · 3 comments
Closed

Successful Compiling ARM64 Android via Termux #28

defencedog opened this issue Sep 27, 2022 · 3 comments

Comments

@defencedog
Copy link

defencedog commented Sep 27, 2022

Well I couldn't install ipopt as Android lacks fortran compilers & workarounds are beyond me. All were installed in /usr/local
What i can install successfully are papilo. A bug is resolved as well

git clone https://github.com/scipopt/papilo.git
cd papilo 
https://github.com/scipopt/papilo/issues/20
export LDFLAGS="-llog" && cmake -DCMAKE_INSTALL_PREFIX=$PREFIX/local .. && make -j8 && make install

soplex was as well installed

git clone https://github.com/scipopt/soplex.git
mkdir build
cd build
cmake -DCMAKE_INSTALL_PREFIX=$PREFIX/local -DPAPILO=on ..

zimpl was as well installed (very good small language). Its source was in the scioptsuite I couldn't find its separate git. On Android will throw error so link libm.so as following

cd scipoptsuite-8.0.1/zimpl/build
ln -s /apex/com.android.runtime/lib64/bionic/libm.so $PREFIX/lib/
cmake -DCMAKE_INSTALL_PREFIX=$PREFIX/local  .. && make -j8 && make install

Finally build scip (I didnt use scioptsuite tar ball except for zimpl)

cd scip-8.0.1
mkdir build && cd build
cmake -DCMAKE_INSTALL_PREFIX=$PREFIX/local -DIPOPT=off  ..
make -j8 && make install

Further notes while configuring scip, I had COIN-OR cpl installed in my system but still following gets reported, the documentation doesnt refer how to force-enable it -- Support CLP: OFF

scip -v
SCIP version 8.0.1 [precision: 8 byte] [memory: block] [mode: debug] [LP solver: Soplex 6.0.1.3] [GitHash: c84ee4283e]
Copyright (C) 2002-2022 Konrad-Zuse-Zentrum fuer Informationstechnik Berlin (ZIB)

External libraries:
  Readline 8.1         GNU library for command line editing (gnu.org/s/readline)
  Soplex 6.0.1.3       Linear Programming Solver developed at Zuse Institute Berlin (soplex.zib.de) [GitHash: 713be0fe]
  CppAD 20180000.0     Algorithmic Differentiation of C++ algorithms developed by B. Bell (github.com/coin-or/CppAD)
  ZLIB 1.2.12          General purpose compression library by J. Gailly and M. Adler (zlib.net)
  GMP 6.2.1            GNU Multiple Precision Arithmetic Library developed by T. Granlund (gmplib.org)
  ZIMPL 3.5.2          Zuse Institute Mathematical Programming Language developed by T. Koch (zimpl.zib.de)
  AMPL/MP 4e2d45c4     AMPL .nl file reader library (github.com/ampl/mp)
  PaPILO 2.1.1         parallel presolve for integer and linear optimization (github.com/scipopt/papilo) [GitHash: dea16d4]
  bliss 0.77           Computing Graph Automorphism Groups by T. Junttila and P. Kaski (www.tcs.hut.fi/Software/bliss/)

Compiler: clang 14.0.6

Build options:
 ARCH=aarch64
 OSTYPE=Android-4.19.113-24856341
 COMP=Clang 14.0.6
 BUILD=RelWithDebInfo
 DEBUGSOL=OFF
 EXPRINT=cppad
 SYM=bliss
 GMP=ON
 IPOPT=off
 WORHP=OFF
 LPS=spx
 LPSCHECK=OFF
 NOBLKBUFMEM=OFF
 NOBLKMEM=OFF
 NOBUFMEM=OFF
 THREADSAFE=ON
 READLINE=ON
 SANITIZE_ADDRESS=OFF
 SANITIZE_MEMORY=OFF
 SANITIZE_UNDEFINED=OFF
 SANITIZE_THREAD=OFF
 SHARED=ON
 VERSION=8.0.1.0
 API_VERSION=104
 ZIMPL=ON
 ZLIB=ON
@fschloesser
Copy link
Contributor

SCIP can use several different lp solvers, by default, soplex is used. If you want to use clp as an lp solver, you have to set -DLPS=clp as option to the cmake call: https://scipopt.org/doc/html/md_INSTALL.php#CMAKE

@defencedog
Copy link
Author

@fschloesser Can you tell which is superior?

@svigerske
Copy link
Member

No one is superior :), but SCIP is better tested with SoPlex than with Clp.

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

3 participants