Octava + GNUPlot + Aquaterm + Mac OS 10.6
-
21-09-2019 - |
Pregunta
Estoy intentando hacer todas mis tareas basadas en MatLab en Octave, la representación de código abierto de MatLab.
Sin embargo, tengo problemas para trazar gráficos y creo que es un simple problema de vinculación.Estoy corriendo:-Mac OS X Snow Leopard (10.6) -Ctave 3.2.2 -aquaterma 1.0.1 -gnuplot 4.0
Aquí hay un ejemplo de los errores que recibo de mi shell:
Mr-Buffalo:~ buffingtonr$ gnuplot
dyld: Library not loaded: /usr/local/lib/libaquaterm.1.0.0.dylib
Referenced from: /usr/local/bin/gnuplot
Reason: image not found
Trace/BPT trap
octave-3.2.2:1> f = inline('x^2')
f(x) = x^2
octave-3.2.2:5> ezplot(f)
dyld: Library not loaded: /usr/local/lib/libaquaterm.1.0.0.dylib
Referenced from: /usr/local/bin/gnuplot
Reason: image not found
dyld: Library not loaded: /usr/local/lib/libaquaterm.1.0.0.dylib
Referenced from: /usr/local/bin/gnuplot
Reason: image not found
error: you must have gnuplot installed to display graphics; if you have gnuplot installed in a non-standard location, see the 'gnuplot_binary' function
octave-3.2.2:6>
No tengo la base Unix necesaria para solucionar este problema.¿Alguna sugerencia/solución?
Solución
el problema podría estar relacionado con este http://macresearch.org/gnuplot-aquaterm-snow-leopard-1061 en la respuesta: Vie, 2009-09-18 uno y cincuenta y nueve - tega
Otros consejos
Usted tiene Aquaterm 1.0. 1 instalado, y gnuplot hace referencia 1.0. 0 , que al parecer no tiene instalado en su sistema.
No estoy terriblemente familiar con la instalación de una biblioteca en un Mac, pero es posible que pueda tomar sólo el archivo .dmg 1.0.0 desde archivos de la Aquaterm página en Sourceforge .
Por otra parte, la nueva versión de octava o gnuplot podría hacer referencia a la nueva biblioteca, por lo que podría ser capaz de actualizar simplemente uno de aquellos en su lugar.
Es una verdadera corte, pero vi un par de lugares (incluyendo esta lista de correo ) lo que sugiere que acaba de enlazar a la biblioteca 1.0.0 1.0.1. Esto no suele ser aceptable, ya que no hay garantía de las bibliotecas son compatibles entre sí. Sería por lo menos ser una solución rápida para que pueda obtener su tarea realizada en el tiempo!
Nuevo Progreso
Cuando investigué '/ usr / local / lib /', encontré que había un enlace simbólico en el directorio:
aquaterm-1.0.0 -> /Library/Frameworks/AquaTerm.framework/Versions/A/AquaTerm
Así que creó una sim-vínculo similar para hacer que el archivo gnuplot está buscando (... 1.0.1) punto a la ubicación AQUATERM por defecto:
aquaterm-1.0.1 -> /Library/Frameworks/AquaTerm.framework/Versions/A/AquaTerm
Esto soluciona el problema gnuplot lanzamiento. He verificado que gnuplot éxito parcelas en su propia mediante el trazado de una función:
Terminal type set to 'x11'
gnuplot> plot sin(x)
Ahora consigo nuevos errores en Octave
octave-3.2.2:7> ezplot(f=inline('sin(x)'))
gnuplot> set terminal aqua enhanced title "Figure 1"
^
line 0: You can't change the terminal in multiplot mode
gnuplot> if (exists("GPVAL_TERM")) print GPVAL_TERM; else print NaN
^
line 0: invalid expression
error: Invalid call to strcat. Correct usage is:
-- Function File: strcat (S1, S2, ...)
Sin embargo, He comprobado que gnuplot 4.0 está instalado y hace, de hecho, los gráficos de la trama. Así que ahora parece que el error está en la comunicación entre la octava y GNUPlot. Voy a intentar la actualización a una versión más reciente de gnuplot si es posible e informar.
-Buffalo
Esto funcionó para mí:
Paso 1: Reemplace /Library/Frameworks/AquaTerm.framework con /opt/local/Library/Frameworks/AquaTerm.framework.Esto garantizará que la compilación de gnuplot haga referencia a las bibliotecas AquaTerm de 64 bits correctas.
Paso 2: Reemplace /Applications/AquaTerm.app con /Applications/MacPorts/AquaTerm.app.Esto garantizará que el binario AquaTerm de 64 bits correcto esté en la ubicación correcta.
fuente:http://slashusr.wordpress.com/2010/01/17/gnuplot-with-aquaterm-on-osx-snow-leopard/