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

Reply via email to