19/05/2023: A causa di un errore sono stati cancellati, insieme ad account creati da bot, alcuni account legittimi. Si prega di leggere qui: https://www.gambas-it.org/smf/index.php?topic=9733.0
Quando gira su raspy la prima passa, si ferma alla seconda perchè non trova la funzione che inizializza il Chip
Se gira da terminale vuol dire che le librerie le vede, a mio avviso c'è qualche cosa in gambas che impedisce alla funzione che si trova in una libreria di vedere la funzione che cerca nell'altra
provare a modificare i sorgenti di wiringPi?
e se includessi la funzione piFaceSetup() nella libreria libwiringPi?
mi rimane però sempre il dubbio sul perchè in gambas non funziona
le due librerie sono in/usr/local/lib
#include <stdint.h>#include <wiringPi.h>#include <mcp23s17.h>#include "piFace.h"int raspberry(int pinBase) { int rit;/* Invoca la funzione del Raspberry: */ rit = piFaceSetup(pinBase); return rit;}
Private Extern wiringPiSetup() As Integer In "libwiringPi"Private Extern raspberry(pin As Integer) As Integer In "/tmp/libadhoc"Public Sub Form_Open()' Genera l'apposita libreria esterna per la gestione della funzione "piFaceSetup()": Shell "gcc -o /tmp/libadhoc.so " & Application.Path &/ "libadhoc.c -shared -fPIC" Wait wiringPiSetup()' Invoca l'unica funzione dell'apposita libreria esterna: raspberry(200) etc... etc....End
soluzione ancor più estrema
Citazione da: Akrobaticone - 30 Giugno 2014, 18:45:50soluzione ancor più estrema Bravo: sei riuscito a restare nel solo ambito Gambas.[/quoteScusa Vuott, non ho capito...pongo un'altra questione:una volta che funziona e volessi creare un pacchetto di installazione per il programma gambas, come gestisco l'installazione delle librerie wiringPi?devo fare due operazioni separate oppure riesco a gestire il tutto direttamente da Gambas?