Page 1 of 1

Får inte Ruby bindings att fungera

Posted: Fri Mar 17, 2023 9:45 am
by haddock
Hej,

Vill börja med att tacka för en fantastiskt rolig produkt! Jag vill skriva lite egna applikationer och har tänkt göra det i Ruby. Jag har dock lite problem att få mina Ruby bindings att fungera som de ska på OS X. Så här långt kommer jag:

* Installerar Telldus Center
* Kör swig -ruby -autorename tellduscore.i
* Kör ruby extconf.rb
* Kör make

make ger mig följande varning:

Code: Select all

ld: warning: in /Library/Frameworks//TelldusCore.framework/TelldusCore, file was built for i386 which is not the architecture being linked (x86_64)
Jag kan ändå komma åt biblioteket genom require 'tellduscore' i Ruby. Jag kan se metoderna, t.ex. Tellduscore.td_init men när jag anropar dem får jag följande fel:

Code: Select all

dyld: lazy symbol binding failed: Symbol not found: _tdInit
  Referenced from: /Path/To/tellduscore.bundle
  Expected in: flat namespace

dyld: Symbol not found: _tdInit
  Referenced from: /Path/To/tellduscore.bundle
  Expected in: flat namespace

Trace/BPT trap
Någon som har någon idé? Finns det något enklare sätt att komma åt API:et från Ruby eller är man i så fall hänvisad till att ropa på tdtool eller rfcmd från skriptet? När jag ändå är inne på det spåret: är tdtool att föredra framför rfcmd?

Tack på förhand.

Re: Får inte Ruby bindings att fungera

Posted: Fri Mar 17, 2023 9:45 am
by micke.prag
TelldusCore är för tillfället bara 32-bitars. Du måste bygga din wrapper på samma sätt.

rfcmd är inte vidareutvecklat av oss utan vi tar bara emot patchar från användare. tdtool supportas och vidareutvecklas av Telldus. rfcmd finns inte ens för OS X...

Re: Får inte Ruby bindings att fungera

Posted: Fri Mar 17, 2023 9:45 am
by haddock
Tack Micke!

Jag löste det igår genom att bygga TelldusCore själv för 64-bitar: http://www.whyro.org/2010/02/14/java-in ... w-leopard/. Fungerade fint efter det. Är det enda sättet eller går det att kompilera min ruby-extension mot den 32-bitars TelldusCore som följer med Telldus Center? Hur gör jag i så fall?

Tusen tack för hjälpen.

Re: Får inte Ruby bindings att fungera

Posted: Fri Mar 17, 2023 9:45 am
by micke.prag
haddock wrote:Går det att kompilera min ruby-extension mot den 32-bitars TelldusCore som följer med Telldus Center? Hur gör jag i så fall?
Det går. Hur? Ingen aning... :D