On 12/7/2011 5:13 PM, Lukas Reichlin wrote:
Hi all,I've just posted control-2.2.3 (SVN Revision 9303) in the package forum [1]. Please upload it to the server. The changes are listed in the NEWS file [2]. The notice for http://octave.sourceforge.net/ December 7, 2011 control-2.2.3 released Best regards Lukas
Lukas, due to changes on mkoctfile way of working on octave-3.5.91+ (not more linking against all the development libraries ) the package does not correctly build on cygwin due to undefined symbols with LAPACK, BLAS and FORTRAN ---------------------------------------------------------------- $ make mkoctfile slab08nd.cc \ AB08ND.f AB08NX.f TB01ID.f MB03OY.f MB03PY.f g++-4: unrecognized option '-no-undefined' AB08ND.o:AB08ND.f:(.text+0x4d): undefined reference to `_lsame_' AB08ND.o:AB08ND.f:(.text+0x87): undefined reference to `_lsame_' ----------------------------------------------------------------- the attached patch solve the issue on cygwin and I presume also on the other platforms that do not accept "Undefined symbols" at link time. Tests on mingw and Mac OS X are needed. Regards Marco
--- control_old/src/Makefile 2011-11-25 21:08:56.000000000 +0100 +++ control/src/Makefile 2011-12-28 08:53:03.975568400 +0100 @@ -1,5 +1,9 @@ OCTAVE ?= octave +LAPACK_LIBS != mkoctfile -p LAPACK_LIBS +BLAS_LIBS != mkoctfile -p BLAS_LIBS +FLIBS != mkoctfile -p FLIBS + all: slab08nd.oct slab13dd.oct slsb10hd.oct slsb10ed.oct slab13bd.oct \ slsb01bd.oct slsb10fd.oct slsb10dd.oct slsb03md.oct slsb04md.oct \ slsb04qd.oct slsg03ad.oct slsb02od.oct slab13ad.oct slab01od.oct \ @@ -21,7 +25,8 @@ # transmission zeros of state-space models slab08nd.oct: slab08nd.cc mkoctfile slab08nd.cc \ - AB08ND.f AB08NX.f TB01ID.f MB03OY.f MB03PY.f + AB08ND.f AB08NX.f TB01ID.f MB03OY.f MB03PY.f \ + ${LAPACK_LIBS} ${BLAS_LIBS} # L-infinity norm slab13dd.oct: slab13dd.cc @@ -31,7 +36,8 @@ MB03XP.f MB04DD.f MB04QB.f MB04TB.f MB03XU.f \ MB04TS.f UE01MD.f MB02RD.f MB02SD.f MB04QC.f \ MB04QF.f MB03YA.f MB03YD.f MB02RZ.f MB04QU.f \ - MB02SZ.f MB03YT.f + MB02SZ.f MB03YT.f \ + ${LAPACK_LIBS} ${BLAS_LIBS} ${FLIBS} # H-2 controller synthesis - continuous-time slsb10hd.oct: slsb10hd.cc @@ -41,7 +47,8 @@ MB01SD.f SB02MS.f SB02MV.f SB02MW.f MA02AD.f \ SB02QD.f MB02PD.f SB03QX.f SB03QY.f MB01RX.f \ MB01RY.f SB03SX.f SB03SY.f select.f SB03MX.f \ - SB03MY.f MB01UD.f SB03MV.f SB03MW.f SB04PX.f + SB03MY.f MB01UD.f SB03MV.f SB03MW.f SB04PX.f \ + ${LAPACK_LIBS} ${BLAS_LIBS} # H-2 controller synthesis - discrete-time slsb10ed.oct: slsb10ed.cc @@ -50,7 +57,8 @@ SB02SD.f SB02OD.f MB01RU.f SB02OU.f SB02OV.f \ SB02OW.f MB01RY.f SB02OY.f SB03SX.f SB03SY.f \ MA02ED.f select.f SB03MX.f SB02MR.f SB02MV.f \ - MB01UD.f SB03MV.f SB04PX.f + MB01UD.f SB03MV.f SB04PX.f \ + ${LAPACK_LIBS} ${BLAS_LIBS} # H-2 norm slab13bd.oct: slab13bd.cc @@ -58,13 +66,15 @@ AB13BD.f SB08DD.f SB03OU.f SB01FY.f TB01LD.f \ SB03OT.f MB04ND.f MB04OD.f MB03QX.f select.f \ SB03OR.f MB04OX.f MB03QD.f SB03OY.f MA02AD.f \ - MB03QY.f SB04PX.f MB04NY.f MB04OY.f SB03OV.f + MB03QY.f SB04PX.f MB04NY.f MB04OY.f SB03OV.f \ + ${LAPACK_LIBS} ${BLAS_LIBS} # Pole assignment slsb01bd.oct: slsb01bd.cc mkoctfile slsb01bd.cc \ SB01BD.f MB03QD.f MB03QY.f SB01BX.f SB01BY.f \ - select.f + select.f \ + ${LAPACK_LIBS} ${BLAS_LIBS} # H-inf controller synthesis - continuous-time slsb10fd.oct: slsb10fd.cc @@ -74,7 +84,8 @@ SB02RU.f SB02MR.f MB01SD.f SB02MS.f SB02MV.f \ SB02MW.f SB02QD.f MB02PD.f SB03QX.f SB03QY.f \ MB01RY.f SB03SX.f SB03SY.f select.f SB03MX.f \ - SB03MY.f MB01UD.f SB03MV.f SB03MW.f SB04PX.f + SB03MY.f MB01UD.f SB03MV.f SB03MW.f SB04PX.f \ + ${LAPACK_LIBS} ${BLAS_LIBS} # H-inf controller synthesis - discrete-time slsb10dd.oct: slsb10dd.cc @@ -83,35 +94,41 @@ MA02AD.f SB02OU.f SB02OV.f SB02OW.f MB01RY.f \ SB02OY.f SB03SX.f SB03SY.f MA02ED.f select.f \ SB03MX.f SB02MR.f SB02MV.f MB01UD.f SB03MV.f \ - SB04PX.f + SB04PX.f \ + ${LAPACK_LIBS} ${BLAS_LIBS} # Lyapunov equations slsb03md.oct: slsb03md.cc mkoctfile slsb03md.cc \ SB03MD.f select.f SB03MX.f SB03MY.f MB01RD.f \ - SB03MV.f SB03MW.f SB04PX.f + SB03MV.f SB03MW.f SB04PX.f \ + ${LAPACK_LIBS} ${BLAS_LIBS} # Sylvester equations - continuous-time slsb04md.oct: slsb04md.cc mkoctfile slsb04md.cc \ - SB04MD.f SB04MU.f SB04MY.f SB04MR.f SB04MW.f + SB04MD.f SB04MU.f SB04MY.f SB04MR.f SB04MW.f \ + ${LAPACK_LIBS} ${BLAS_LIBS} # Sylvester equations - discrete-time slsb04qd.oct: slsb04qd.cc mkoctfile slsb04qd.cc \ - SB04QD.f SB04QU.f SB04QY.f SB04MW.f SB04QR.f + SB04QD.f SB04QU.f SB04QY.f SB04MW.f SB04QR.f \ + ${LAPACK_LIBS} ${BLAS_LIBS} # generalized Lyapunov equations slsg03ad.oct: slsg03ad.cc mkoctfile slsg03ad.cc \ SG03AD.f MB01RW.f MB01RD.f SG03AX.f SG03AY.f \ - MB02UU.f MB02UV.f + MB02UU.f MB02UV.f \ + ${LAPACK_LIBS} ${BLAS_LIBS} # algebraic Riccati equations slsb02od.oct: slsb02od.cc mkoctfile slsb02od.cc \ SB02OD.f SB02OU.f SB02OV.f SB02OW.f SB02OY.f \ - SB02MR.f SB02MV.f + SB02MR.f SB02MV.f \ + ${LAPACK_LIBS} ${BLAS_LIBS} # Hankel singular values slab13ad.oct: slab13ad.cc @@ -120,74 +137,87 @@ MB03UD.f TB01LD.f SB03OU.f MB03QX.f select.f \ SB03OT.f MB03QD.f MB04ND.f MB04OD.f MB03QY.f \ SB03OR.f SB03OY.f SB04PX.f MB04NY.f MB04OY.f \ - SB03OV.f + SB03OV.f \ + ${LAPACK_LIBS} ${BLAS_LIBS} # staircase form using orthogonal transformations slab01od.oct: slab01od.cc mkoctfile slab01od.cc \ - AB01OD.f AB01ND.f MB03OY.f MB01PD.f MB01QD.f + AB01OD.f AB01ND.f MB03OY.f MB01PD.f MB01QD.f \ + ${LAPACK_LIBS} ${BLAS_LIBS} # minimal realization of state-space models sltb01pd.oct: sltb01pd.cc mkoctfile sltb01pd.cc \ TB01PD.f TB01XD.f TB01ID.f AB07MD.f TB01UD.f \ - MB03OY.f MB01PD.f MB01QD.f + MB03OY.f MB01PD.f MB01QD.f \ + $(LAPACK_LIBS) $(BLAS_LIBS) # Cholesky factor of Lyapunov equations slsb03od.oct: slsb03od.cc mkoctfile slsb03od.cc \ SB03OD.f select.f SB03OU.f SB03OT.f MB04ND.f \ MB04OD.f SB03OR.f SB03OY.f SB04PX.f MB04NY.f \ - MB04OY.f SB03OV.f + MB04OY.f SB03OV.f \ + ${LAPACK_LIBS} ${BLAS_LIBS} # Cholesky factor of generalized Lyapunov equations slsg03bd.oct: slsg03bd.cc mkoctfile slsg03bd.cc \ SG03BD.f SG03BV.f SG03BU.f SG03BW.f SG03BX.f \ - SG03BY.f MB02UU.f MB02UV.f + SG03BY.f MB02UU.f MB02UV.f \ + ${LAPACK_LIBS} ${BLAS_LIBS} # transmission zeros of descriptor state-space models slag08bd.oct: slag08bd.cc mkoctfile slag08bd.cc \ AG08BD.f AG08BY.f TG01AD.f TB01XD.f MA02CD.f \ - TG01FD.f MA02BD.f MB03OY.f + TG01FD.f MA02BD.f MB03OY.f \ + ${LAPACK_LIBS} ${BLAS_LIBS} # minimal realization of descriptor state-space models sltg01jd.oct: sltg01jd.cc mkoctfile sltg01jd.cc \ - TG01JD.f TG01AD.f TB01XD.f MA02CD.f TG01HX.f + TG01JD.f TG01AD.f TB01XD.f MA02CD.f TG01HX.f \ + ${LAPACK_LIBS} ${BLAS_LIBS} # controllability staircase form of descriptor state-space models sltg01hd.oct: sltg01hd.cc mkoctfile sltg01hd.cc \ - TG01HD.f TG01HX.f + TG01HD.f TG01HX.f \ + ${LAPACK_LIBS} ${BLAS_LIBS} # observability staircase form of descriptor state-space models sltg01id.oct: sltg01id.cc mkoctfile sltg01id.cc \ TG01ID.f TB01XD.f MA02CD.f AB07MD.f TG01HX.f \ - MA02BD.f + MA02BD.f \ + ${LAPACK_LIBS} ${BLAS_LIBS} # solution of algebraic Riccati equations for descriptor systems slsg02ad.oct: slsg02ad.cc mkoctfile slsg02ad.cc \ SG02AD.f SB02OU.f SB02OV.f SB02OW.f SB02OY.f \ - MB01SD.f MB02VD.f MB02PD.f MA02GD.f + MB01SD.f MB02VD.f MB02PD.f MA02GD.f \ + ${LAPACK_LIBS} ${BLAS_LIBS} # gain of descriptor state-space models sltg04bx.oct: sltg04bx.cc mkoctfile sltg04bx.cc \ - TG04BX.f MB02RD.f MB02SD.f + TG04BX.f MB02RD.f MB02SD.f \ + ${LAPACK_LIBS} ${BLAS_LIBS} # scaling of state-space models sltb01id.oct: sltb01id.cc mkoctfile sltb01id.cc \ - TB01ID.f + TB01ID.f \ + ${LAPACK_LIBS} ${BLAS_LIBS} # scaling of descriptor state-space models sltg01ad.oct: sltg01ad.cc mkoctfile sltg01ad.cc \ - TG01AD.f + TG01AD.f \ + ${LAPACK_LIBS} ${BLAS_LIBS} # H-infinity loop shaping - continuous-time slsb10id.oct: slsb10id.cc @@ -197,43 +227,50 @@ MB01RU.f SB02QD.f SB02MV.f SB02MW.f SB02MR.f \ MA02AD.f MB02PD.f MB01SD.f MB01UD.f SB03SY.f \ MB01RX.f SB03MX.f SB03SX.f MB01RY.f SB03QY.f \ - SB03QX.f SB03MY.f SB04PX.f SB03MV.f SB03MW.f + SB03QX.f SB03MY.f SB04PX.f SB03MV.f SB03MW.f \ + ${LAPACK_LIBS} ${BLAS_LIBS} # H-infinity loop shaping - discrete-time - strictly proper case slsb10kd.oct: slsb10kd.cc mkoctfile slsb10kd.cc \ SB10KD.f SB02OD.f select.f SB02OY.f SB02OW.f \ - SB02OV.f SB02MV.f SB02OU.f SB02MR.f + SB02OV.f SB02MV.f SB02OU.f SB02MR.f \ + ${LAPACK_LIBS} ${BLAS_LIBS} # H-infinity loop shaping - discrete-time - proper case slsb10zd.oct: slsb10zd.cc mkoctfile slsb10zd.cc \ SB10ZD.f MA02AD.f SB02OD.f select.f MB01RX.f \ MB02VD.f SB02OY.f SB02OW.f SB02OV.f SB02OU.f \ - SB02MR.f MA02GD.f SB02MV.f + SB02MR.f MA02GD.f SB02MV.f \ + ${LAPACK_LIBS} ${BLAS_LIBS} # State-space to transfer function conversion sltb04bd.oct: sltb04bd.cc mkoctfile sltb04bd.cc \ TB04BD.f MC01PY.f TB01ID.f TB01ZD.f MC01PD.f \ TB04BX.f MA02AD.f MB02RD.f MB01PD.f MB02SD.f \ - MB01QD.f + MB01QD.f \ + ${LAPACK_LIBS} ${BLAS_LIBS} # bilinear transformation slab04md.oct: slab04md.cc mkoctfile slab04md.cc \ - AB04MD.f + AB04MD.f \ + ${LAPACK_LIBS} ${BLAS_LIBS} # descriptor to regular state-space conversion slsb10jd.oct: slsb10jd.cc mkoctfile slsb10jd.cc \ - SB10JD.f + SB10JD.f \ + ${LAPACK_LIBS} ${BLAS_LIBS} # transfer function to state-space conversion sltd04ad.oct: sltd04ad.cc mkoctfile sltd04ad.cc \ TD04AD.f TD03AY.f TB01PD.f TB01XD.f AB07MD.f \ - TB01UD.f TB01ID.f MB01PD.f MB03OY.f MB01QD.f + TB01UD.f TB01ID.f MB01PD.f MB03OY.f MB01QD.f \ + ${LAPACK_LIBS} ${BLAS_LIBS} # helpers is_real_scalar.oct: is_real_scalar.cc
------------------------------------------------------------------------------ Write once. Port to many. Get the SDK and tools to simplify cross-platform app development. Create new or port existing apps to sell to consumers worldwide. Explore the Intel AppUpSM program developer opportunity. appdeveloper.intel.com/join http://p.sf.net/sfu/intel-appdev
_______________________________________________ Octave-dev mailing list Octave-dev@lists.sourceforge.net https://lists.sourceforge.net/lists/listinfo/octave-dev