# Win32Serial Extension Library for Ruby

**URL:** <https://www.ruby-forum.com/t/win32serial-extension-library-for-ruby/71056>\
**Category:** IT\
**Created:** [October 5, 2006, 1:07am UTC](https://www.ruby-forum.com/t/win32serial-extension-library-for-ruby/71056 "2006-10-05T01:07:27Z")\
**Posts on this page:** 3\
**Page:** 1

<div class="post-metadata">

**Author:** ![reis](https://www.ruby-forum.com/letter_avatar_proxy/v4/letter/r/f1d935/32.png) [@reis](https://www.ruby-forum.com/u/reis)\
**Post date:** [October 5, 2006, 1:07am UTC](https://www.ruby-forum.com/t/win32serial-extension-library-for-ruby/71056/1 "2006-10-05T01:07:27Z")

</div>

Ciao a tutti, sto provando a compilare dei file c che ho trovato al link  
[http://grub.ath.cx/win32serial/](http://grub.ath.cx/win32serial/), e che fanno parte di una libreria che  
mi  
dovrebbe permettere l’accesso tramite seriale da windows. Naturalmente  
da  
novizio che sono nell’argomento, non sono riuscito a fare la  
compilazione,  
quindi volevo chiedere aiuto a voi. I passi che ho seguito sono i  
seguenti:

1. creazione del makefile con ruby extconf.rb

2. installazione di MinGW che mi perpette di usare gcc e make da  
windows.  
Funzionano in quanto se controllo la versione mi danno esito positivo

3. lanco il comando make sperando che tutto funzioni, ma mi ritrovo il  
messaggio seguente

A questo punto essendo totalmente all’oscuro di come sia fatto un  
makefile  
(mea culpa) non riesco a capire quale possa essere l’errore. Se può essere  
d’aiuto riporto anche la riga 124 che viene segnalata nel messaggio di  
errore (la seconda riga inizia con un TAB).

124 {$(topdir)}.cc{}.obj:  
125 $(CXX) $(CXXFLAGS) $(CPPFLAGS) -c -Tp$(\<:=/)

Sembra tanto che il problema sia dato dai : (due punti) e che possa  
essere  
un problema con la versione di make che ho io… ma non so come  
risolverlo.  
So che forse è un argomento un pochino off-topic, ma vorrei far partire il  
tutto.  
Vi ringrazio!

---

<div class="post-metadata">

**Author:** ![reis](https://www.ruby-forum.com/letter_avatar_proxy/v4/letter/r/f1d935/32.png) [@reis](https://www.ruby-forum.com/u/reis)\
**Post date:** [October 5, 2006, 1:53am UTC](https://www.ruby-forum.com/t/win32serial-extension-library-for-ruby/71056/2 "2006-10-05T01:53:33Z")

</div>

> 124 {$(topdir)}.cc{}.obj:

Prova a cambiarla in:

%.obj: %.cc

Oppure in:

%.obj: $(topdir)/%.cc

Comunque quella sintassi non l’ho mai vista, sicuro che extconf.rb  
abbia generato un Makefile per GNU Make e non per altro?

---

<div class="post-metadata">

**Author:** ![reis](https://www.ruby-forum.com/letter_avatar_proxy/v4/letter/r/f1d935/32.png) [@reis](https://www.ruby-forum.com/u/reis)\
**Post date:** [October 5, 2006, 9:50am UTC](https://www.ruby-forum.com/t/win32serial-extension-library-for-ruby/71056/3 "2006-10-05T09:50:09Z")

</div>

On 10/5/06, Massimiliano M. [removed\_email\_address@domain.invalid](mailto:removed_email_address@domain.invalid) wrote:

> Comunque quella sintassi non l’ho mai vista, sicuro che extconf.rb  
> abbia generato un Makefile per GNU Make e non per altro?

Cambiato la sintassi con %.obj: $(topdir)/%.cc in tutte le parti in cui  
avveniva l’errore (adattando il valore di topdir con la stringa che  
trovavo  
in una determinata riga e idem per l’estensione) e idem con %.obj: %.cc  
ma  
niente da fare

Naturalmente adesso mi ritrovo con un’altro errore, quindi mi viene il  
dubbio che stia partendo da qualcosa di sbagliato. Quando digito make  
infatti ecco cosa esce.

$ make  
make: \*\*\* No rule to make target `{.', needed by `rb\_serial\_wrapper.obj’. Stop.

Ho provato a cercare qualcosa su extconf.rb, ma mi sembra non ci sia  
nulla  
di particolare da fare… ma devo leggermi meglio questo documento  
[Radar – O’Reilly](http://www.onlamp.com/pub/a/onlamp/2004/11/18/extending_ruby.html),  
magari ci  
trovo qualcosa.
