segfault after move from Raspberry Pi to CentOS VM

108 views
Skip to first unread message

Cycle London

unread,
Apr 27, 2018, 6:36:20 AM4/27/18
to weewx-user
Hi again,
I was having massive problems with the Raspberry Pi behind my WMR300.    Every day or so, I'd get up and it would have crashed, and there'd only be an ntp error in the logs.  I tried disabling ntp completely and setting the time manually, but all that happened is that when the system came back up after a crash, it was like ten hours out. 

OK, enough. 

I have a CentOS 6.9 VM sitting on my ESXi host - db2 - so named because it's where I do my php and httpd tinkering.   It's 'test & dev' so doesn't involve change management to get a change ('change managament' here being 'asking my wife if she minds me bringing down the servers for a minute :-) ).  

Last night, I tar up the contents of /home/weewx on the Pi and scp them over to db2.  I shut down the Pi.  

This morning, I struggle a bit to get the station recognised by the ESXi host, but actually plugging it into the host, sort of helped.   

I install weewx from source on db2, and then once I can see that the WMR300 is there, I fire her up. 

[root@db2 ~]# service weewx start
Starting weewx:                                            [  OK  ]

In /var/log/messages on db2 ... 

Apr 27 11:19:17 db2 weewx[13842]: engine: Initializing weewx version 3.8.0
Apr 27 11:19:17 db2 weewx[13842]: engine: Using Python 2.6.6 (r266:84292, Aug 18 2016, 15:13:37) #012[GCC 4.4.7 20120313 (Red Hat 4.4.7-17)]
Apr 27 11:19:17 db2 weewx[13842]: engine: Platform Linux-2.6.32-696.16.1.el6.x86_64-x86_64-with-centos-6.9-Final
Apr 27 11:19:17 db2 weewx[13842]: engine: Locale is 'en_US.UTF-8'
Apr 27 11:19:17 db2 weewx[13842]: engine: pid file is /var/run/weewx.pid
Apr 27 11:19:17 db2 weewx[13846]: engine: Using configuration file /home/weewx/weewx.conf
Apr 27 11:19:17 db2 weewx[13846]: engine: Loading station type WMR300 (weewx.drivers.wmr300)
Apr 27 11:19:17 db2 weewx[13846]: wmr300x: driver version is 0.18nolegacy.05.17d
Apr 27 11:19:17 db2 weewx[13846]: wmr300x: Set to clear history at 5%
Apr 27 11:19:17 db2 weewx[13846]: wmr300x: using PyUSB backend: libusb1
Apr 27 11:19:18 db2 kernel: usb 2-2.1: reset full speed USB device number 4 using uhci_hcd
Apr 27 11:19:18 db2 weewx[13846]: wmr300x: send initial heartbeat, try 1
Apr 27 11:19:18 db2 weewx[13846]: wmr300x: Initiation completed
Apr 27 11:19:18 db2 weewx[13846]: engine: StdConvert target unit is 0x1
Apr 27 11:19:18 db2 weewx[13846]: wxcalculate: The following values will be calculated: barometer=prefer_hardware, windchill=hardware, dewpoint=hardware, appTemp=prefer_hardware, rainRate=hardware, windrun=prefer_hardware, heatindex=hardware, maxSolarRad=prefer_hardware, humidex=prefer_hardware, pressure=prefer_hardware, inDewpoint=prefer_hardware, ET=prefer_hardware, altimeter=prefer_hardware, cloudbase=prefer_hardware
Apr 27 11:19:18 db2 weewx[13846]: wxcalculate: The following algorithms will be used for calculations: altimeter=aaNOAA, maxSolarRad=RS
Apr 27 11:19:18 db2 weewx[13846]: engine: Archive will use data binding wx_binding
Apr 27 11:19:18 db2 weewx[13846]: engine: Record generation will be attempted in 'hardware'
Apr 27 11:19:18 db2 weewx[13846]: engine: Using archive interval of 120 seconds (specified in weewx configuration)
Apr 27 11:19:18 db2 weewx[13846]: engine: Using binding 'wx_binding' to database 'weewx.sdb'
Apr 27 11:19:18 db2 weewx[13846]: manager: Starting backfill of daily summaries
Apr 27 11:19:19 db2 weewx[13846]: forecast: MainThread: Zambretti: forecast version 3.2.19
Apr 27 11:19:19 db2 weewx[13846]: forecast: MainThread: Zambretti: interval=600 max_age=604800 winddir_period=1800 pressure_period=10800 hemisphere=NORTH lower_pressure=950.0 upper_pressure=1050.0
Apr 27 11:19:19 db2 weewx[13846]: forecast: MainThread: NWS: forecast version 3.2.19
Apr 27 11:19:19 db2 weewx[13846]: forecast: MainThread: NWS: location ID (lid) is not specified
Apr 27 11:19:19 db2 weewx[13846]: forecast: MainThread: NWS: forecast office ID (foid) is not specified
Apr 27 11:19:19 db2 weewx[13846]: forecast: MainThread: NWS: forecast will not be run
Apr 27 11:19:19 db2 weewx[13846]: forecast: MainThread: WU: forecast version 3.2.19
Apr 27 11:19:19 db2 weewx[13846]: forecast: MainThread: WU: interval=10800 max_age=604800 api_key=XXXXXX location=51.45309,0.09846 fc=hourly10day
Apr 27 11:19:19 db2 weewx[13846]: forecast: MainThread: OWM: forecast version 3.2.19
Apr 27 11:19:19 db2 weewx[13846]: forecast: MainThread: OWM: API key (api_key) is not specified
Apr 27 11:19:19 db2 weewx[13846]: forecast: MainThread: OWM: forecast will not be run
Apr 27 11:19:19 db2 weewx[13846]: forecast: MainThread: UKMO: forecast version 3.2.19
Apr 27 11:19:19 db2 weewx[13846]: forecast: MainThread: UKMO: interval=10800 max_age=604800 api_key=XXXXXX location=XXXXXX
Apr 27 11:19:19 db2 weewx[13846]: forecast: MainThread: Aeris: forecast version 3.2.19
Apr 27 11:19:19 db2 weewx[13846]: forecast: MainThread: Aeris: client identifier (client_id) is not specified
Apr 27 11:19:19 db2 weewx[13846]: forecast: MainThread: Aeris: client secret (client_secret) is not specified
Apr 27 11:19:19 db2 weewx[13846]: forecast: MainThread: Aeris: forecast will not be run
Apr 27 11:19:19 db2 weewx[13846]: forecast: MainThread: WWO: forecast version 3.2.19
Apr 27 11:19:19 db2 weewx[13846]: forecast: MainThread: WWO: API key (api_key) is not specified
Apr 27 11:19:19 db2 weewx[13846]: forecast: MainThread: WWO: forecast will not be run
Apr 27 11:19:19 db2 weewx[13846]: forecast: MainThread: XTide: forecast version 3.2.19
Apr 27 11:19:19 db2 weewx[13846]: forecast: MainThread: XTide: location (location) has not been specified
Apr 27 11:19:19 db2 weewx[13846]: forecast: MainThread: XTide: forecast will not be run
Apr 27 11:19:19 db2 weewx[13846]: restx: StationRegistry: Station will be registered.
Apr 27 11:19:19 db2 weewx[13846]: restx: Wunderground-PWS: Data for station XXXXX will be posted
Apr 27 11:19:19 db2 weewx[13846]: restx: PWSweather: Posting not enabled.
Apr 27 11:19:19 db2 weewx[13846]: restx: CWOP: Posting not enabled.
Apr 27 11:19:19 db2 weewx[13846]: restx: WOW: Posting not enabled.
Apr 27 11:19:19 db2 weewx[13846]: restx: AWEKAS: Posting not enabled.
Apr 27 11:19:19 db2 weewx[13846]: engine: Starting up weewx version 3.8.0
Apr 27 11:19:19 db2 weewx[13846]: wmr300x: read Hist since 2018-04-27 11:12:00 BST (XXXXXX): from 31 to 82
Apr 27 11:19:19 db2 weewx[13846]: wmr300x: send history startup, try 1
Apr 27 11:19:19 db2 weewx[13846]: wmr300x: initHist: discarded 22 packets
Apr 27 11:19:19 db2 weewx[13846]: wmr300x: Initing history req with cmd 0x65, starting with record 32
Apr 27 11:19:19 db2 weewx[13846]: wmr300x: History read initiated
Apr 27 11:19:19 db2 weewx[13846]: wmr300x: possible missed rain event: new=213.614 old=None
Apr 27 11:19:19 db2 weewx[13846]: manager: Added record 2018-04-27 11:14:00 BST (XXXXXX) to database 'weewx.sdb'
Apr 27 11:19:19 db2 weewx[13846]: manager: Added record 2018-04-27 11:14:00 BST (XXXXXX) to daily summary in 'weewx.sdb'
Apr 27 11:19:19 db2 weewx[13846]: forecast: ZambrettiThread: Zambretti: generated 1 forecast record
Apr 27 11:19:19 db2 weewx[13846]: manager: Added record 2018-04-27 11:15:00 BST (XXXXXX) to database 'weewx.sdb'
Apr 27 11:19:19 db2 weewx[13846]: manager: Added record 2018-04-27 11:15:00 BST (XXXXXX) to daily summary in 'weewx.sdb'
Apr 27 11:19:19 db2 weewx[13846]: forecast: ZambrettiThread: Zambretti: saved 1 forecast records
Apr 27 11:19:19 db2 weewx[13846]: forecast: ZambrettiThread: Zambretti: deleted forecasts prior to 1524219559
Apr 27 11:19:19 db2 weewx[13846]: manager: Added record 2018-04-27 11:16:00 BST (XXXXXX) to database 'weewx.sdb'
Apr 27 11:19:19 db2 weewx[13846]: manager: Added record 2018-04-27 11:16:00 BST (XXXXXX) to daily summary in 'weewx.sdb'
Apr 27 11:19:19 db2 weewx[13846]: manager: Added record 2018-04-27 11:17:00 BST (XXXXXX) to database 'weewx.sdb'
Apr 27 11:19:19 db2 weewx[13846]: manager: Added record 2018-04-27 11:17:00 BST (XXXXXX) to daily summary in 'weewx.sdb'
Apr 27 11:19:20 db2 weewx[13846]: manager: Added record 2018-04-27 11:18:00 BST (XXXXXX) to database 'weewx.sdb'
Apr 27 11:19:20 db2 weewx[13846]: manager: Added record 2018-04-27 11:18:00 BST (XXXXXX) to daily summary in 'weewx.sdb'
Apr 27 11:19:20 db2 weewx[13846]: restx: Wunderground-PWS: Published record 2018-04-27 11:14:00 BST (XXXXXX)
Apr 27 11:19:20 db2 weewx[13846]: restx: StationRegistry: Published record 2018-04-27 11:14:00 BST (XXXXXX)
Apr 27 11:19:20 db2 weewx[13846]: manager: Added record 2018-04-27 11:19:00 BST (XXXXXX) to database 'weewx.sdb'
Apr 27 11:19:20 db2 weewx[13846]: manager: Added record 2018-04-27 11:19:00 BST (XXXXXX) to daily summary in 'weewx.sdb'
Apr 27 11:19:20 db2 weewx[13846]: wmr300x: catchup nearly complete: count=6 kept, last_received=81 final=82; state=reading history
Apr 27 11:19:20 db2 weewx[13846]: wmr300x: request station status at index: 81; state: finishing
Apr 27 11:19:20 db2 weewx[13846]: wmr300x: catchup completed: count=6 kept last_index rcvd=81 final_index=82; state = wait57
Apr 27 11:19:20 db2 weewx[13846]: wmr300x: history finish, try 1
Apr 27 11:19:20 db2 weewx[13846]: restx: Wunderground-PWS: Published record 2018-04-27 11:15:00 BST (XXXXXX)
Apr 27 11:19:20 db2 weewx[13846]: wmr300x: finHist: discarded 2 packets
Apr 27 11:19:20 db2 weewx[13846]: wmr300x: History read completed
Apr 27 11:19:20 db2 weewx[13846]: engine: Starting main packet loop.
Apr 27 11:19:20 db2 weewx[13846]: restx: Wunderground-PWS: Published record 2018-04-27 11:16:00 BST (XXXXXX)
Apr 27 11:19:21 db2 weewx[13846]: restx: Wunderground-PWS: Published record 2018-04-27 11:17:00 BST (XXXXXX)
Apr 27 11:19:21 db2 weewx[13846]: restx: Wunderground-PWS: Published record 2018-04-27 11:18:00 BST (XXXXXX)
Apr 27 11:19:21 db2 weewx[13846]: restx: Wunderground-PWS: Published record 2018-04-27 11:19:00 BST (XXXXXX)
Apr 27 11:19:40 db2 weewx[13846]: wmr300x: History now at 0.2% capacity
Apr 27 11:20:14 db2 weewx[13846]: manager: Added record 2018-04-27 11:20:00 BST (XXXXXX) to database 'weewx.sdb'
Apr 27 11:20:14 db2 weewx[13846]: manager: Added record 2018-04-27 11:20:00 BST (XXXXXX) to daily summary in 'weewx.sdb'
Apr 27 11:20:15 db2 weewx[13846]: restx: Wunderground-PWS: Published record 2018-04-27 11:20:00 BST (XXXXXX)

And then, right at the end ... 

Apr 27 11:20:16 db2 kernel: weewxd[13853]: segfault at 8 ip 00007fc8b2c9e22e sp 00007fc8a4a1cdc0 error 4 in libpython2.6.so.1.0[7fc8b2c20000+15d000]

... bam!  Dead! 

My theory - and it's probably garbage as I know nothing about development past 'Hello World' in C - is that there is an incompatibility with something I copied over from /home/weewx/bin on the Raspberry Pi, to this CentOS host, since the Pi is a variant of Debian, and the VM is obviously, RHEL/CentOS.    So I tried to copy over the bin directory from the actual source tarball that I had grabbed from thi weewx site, but the service totally refused to start. 

All tips gratefully received. 

Thanks. 

Thomas Keffer

unread,
Apr 27, 2018, 7:21:46 AM4/27/18
to weewx-user
Two things:
  1. While WeeWX is "pure Python," if you're going to do a simple copy between machines, it's probably a good idea not to copy the .pyc files. These contain compiled Python, and are highly machine dependent.
  2. The process ID for the segfault (13853) is different from the process ID of all the other log entries (13946) after the initial startup. Are you sure you don't have a second copy of weewx running?
 -tk

--
You received this message because you are subscribed to the Google Groups "weewx-user" group.
To unsubscribe from this group and stop receiving emails from it, send an email to weewx-user+unsubscribe@googlegroups.com.
For more options, visit https://groups.google.com/d/optout.

Cycle London

unread,
Apr 27, 2018, 8:37:10 AM4/27/18
to weewx-user
On Friday, 27 April 2018 12:21:46 UTC+1, Tom Keffer wrote:

Two things:
  1. While WeeWX is "pure Python," if you're going to do a simple copy between machines, it's probably a good idea not to copy the .pyc files. These contain compiled Python, and are highly machine dependent.
  2. The process ID for the segfault (13853) is different from the process ID of all the other log entries (13946) after the initial startup. Are you sure you don't have a second copy of weewx running?


Hi Tom. 

In answer to your second question, there's definitely no other process running.  

[root@db2 /home/weewx]# ps -ef | grep weewx
root    
14000  2067  0 13:21 pts/0    00:00:00 grep weewx


So to answer the first question, I completely removed /home/weewx, grabbed another copy of the tarball from the weewx download site, and made a clean install (I left the service files in /etc/init.d as I'm guessing that they're not the problem..?).  

Now, when I try to start ... 

Apr 27 13:20:33 db2 weewx[13970]: restx: Wunderground: Posting not enabled.
Apr 27 13:20:33 db2 weewx[13970]: restx: PWSweather: Posting not enabled.
Apr 27 13:20:33 db2 weewx[13970]: restx: CWOP: Posting not enabled.
Apr 27 13:20:33 db2 weewx[13970]: restx: WOW: Posting not enabled.
Apr 27 13:20:33 db2 weewx[13970]: restx: AWEKAS: Posting not enabled.
Apr 27 13:20:33 db2 weewx[13970]: engine: Starting up weewx version 3.8.0
Apr 27 13:20:33 db2 weewx[13970]: wmr300: reading records since ******* N/A *******     (    N/A   )
Apr 27 13:20:33 db2 weewx[13970]: wmr300: usb failure: [Errno 110] Operation timed out
Apr 27 13:20:33 db2 weewx[13970]: engine: Caught WeeWxIOError: [Errno 110] Operation timed out
Apr 27 13:20:33 db2 weewx[13970]:     ****  Waiting 60 seconds then retrying...


That there should be no data is to be expected, as it's a fresh install, but the usb failure error is (IIRC) leads me to believe that there's a driver issue. 

So what do I copy over from my Raspberry Pi tarball? 

I need : 

1.  a working driver
2.  the 'forecast' module
3.  all my data from January 1st.

Many thanks.  

Cycle London

unread,
Apr 27, 2018, 8:50:21 AM4/27/18
to weewx-user
So what do I copy over from my Raspberry Pi tarball? 

Aside from 'skins', 'weewx.conf', 'public_html' etc ...  

gjr80

unread,
Apr 27, 2018, 9:11:20 PM4/27/18
to weewx-user
If it were me I would do a fresh install (as you have) and then copy over any 'skins' directories you have modified, reinstall any extensions/add-ons and maybe do a final diff on your new weewx.conf against your old weewx.conf to see if there is anything you may have missed. No point copying public_html, its all weeWX generated and any old files can only muddy the waters if you need to troubleshoot an issue. If you have added any other custom code it might also be worthwhile looking in $BIN/user to see if there is anything else that was there that is not now.

Gary

vince

unread,
Apr 27, 2018, 9:16:13 PM4/27/18
to weewx-user
On Friday, April 27, 2018 at 3:36:20 AM UTC-7, Cycle London wrote:
I have a CentOS 6.9 VM sitting on my ESXi host - db2 - so named because it's where I do my php and httpd tinkering.   It's 'test & dev' so doesn't involve change management to get a change ('change managament' here being 'asking my wife if she minds me bringing down the servers for a minute :-) ).  


You might want to spin up a second centos VM and run the simulator for a bit.  Get it all correct with all your skins and extensions.   Then you 'can' just scp the tree over to your primary centos VM almost certainly.

Since you have test+dev, take the opportunity to write down how you installed the thing for the next time :-)

FWIW, if you repackage your skins+extensions into formats installable by the weewx extension installer, your life will get much easier longterm.   Install weewx.  Run the extension installer to install additions.  Possibly lightly edit weewx.conf and reset the process.  Done and done.

gjr80

unread,
Apr 27, 2018, 9:20:32 PM4/27/18
to weewx-user
Oh, and your old data if you have any.

Gary

Cycle London

unread,
May 2, 2018, 6:02:01 AM5/2/18
to weewx...@googlegroups.com
Well, it took a couple of days, what with work .. and with idiotically locking myself out of my new VM by changing the ssh port before I was sure I could login on another session.  Not done a newbie error like that in  while.  :-P 

Anyway, I have a CentOS 7 VM sitting ready to rock.  

I install the prerequisites, and then grab weewx v. 3.8.0.  Untar it, and run ./setup.py build and then install it. 

I install the start-up scripts into /etc/init.d even though it's CentOS 7 and thus systemd.  Why they 'fixed' something that wasn't broken, I have no idea.  But that's another story. 

I remember from the last time I installed this, there are issues with the wmr300 driver, so I delve into my old e-mails from you guys, and get the appropriate driver - 

[root@weather bin]# ./wee_config --list-drivers
Module name              Driver name    Version  Status                   
  weewx.drivers.acurite    AcuRite        0.24                              
  weewx.drivers.cc3000     CC3000         0.16                              
  weewx.drivers.fousb      FineOffsetUSB  1.9                               
  weewx.drivers.simulator  Simulator      3.0                               
  weewx.drivers.te923      TE923          0.24                              
  weewx.drivers.ultimeter  Ultimeter      0.18                              
  weewx.drivers.vantage    Vantage        3.0.10                            
  weewx.drivers.wmr100     WMR100         3.3.3                             
  weewx.drivers.wmr200     WMR200         3.3.4                             
  weewx.drivers.wmr300     WMR300         0.19rc6                           
  weewx.drivers.wmr9x8     WMR9x8         3.2.2                             
  weewx.drivers.ws1        WS1            0.25                              
  weewx.drivers.ws23xx     WS23xx         0.26rc1                           
  weewx.drivers.ws28xx     WS28xx         0.35

I think my issue comes from the use of the dot (or 'period') as a directory separator, because I am so used to the slash.  

[root@weather bin]# grep wmr300 /home/weewx/weewx.conf
    driver = bin.weewx.drivers.wmr300

The driver... 

[root@weather drivers]# pwd && ls -l wmr300*
/home/weewx/bin/weewx/drivers
-rw-r--r-- 1 root root 63025 May  2 10:00 wmr300.py
-rw-r--r-- 1 root root 56413 May  2 10:01 wmr300.pyc

Yet when I fire her up... 

May  2 10:14:38 weather weewx: Starting weewx: [  OK  ]
May  2 10:14:38 weather systemd: Started SYSV: start and stop the weewx weather system.
May  2 10:14:38 weather weewx[2456]: engine: Using configuration file /home/weewx/weewx.conf
May  2 10:14:38 weather weewx[2456]: engine: Loading station type WMR300 (bin.weewx.drivers.wmr300)
May  2 10:14:38 weather weewx[2456]: engine: Caught unrecoverable exception in engine:
May  2 10:14:38 weather weewx[2456]:    ****  No module named bin.weewx.drivers.wmr300
May  2 10:14:38 weather weewx[2456]:    ****  Traceback (most recent call last):
May  2 10:14:38 weather weewx[2456]:    ****    File "/home/weewx/bin/weewx/engine.py", line 865, in main
May  2 10:14:38 weather weewx[2456]:    ****      engine = engine_class(config_dict)
May  2 10:14:38 weather weewx[2456]:    ****    File "/home/weewx/bin/weewx/engine.py", line 71, in __init__
May  2 10:14:38 weather weewx[2456]:    ****      self.setupStation(config_dict)
May  2 10:14:38 weather weewx[2456]:    ****    File "/home/weewx/bin/weewx/engine.py", line 95, in setupStation
May  2 10:14:38 weather weewx[2456]:    ****      __import__(driver)
May  2 10:14:38 weather weewx[2456]:    ****  ImportError: No module named bin.weewx.drivers.wmr300
May  2 10:14:38 weather weewx[2456]:    ****  Exiting.

So the problem is either in the weewx.conf or in the placement of the py file.  I suspect the former.  But I get the same error if the weewx.conf file has the driver as .. 

driver = bin.weewx.drivers.wmr300

... or as .. 

driver = weewx.drivers.wmr300

... or as  ... 

driver = weewx.drivers.wmr300

... or as  ... 

driver = drivers.wmr300

... or as ... 

driver = drivers.wmr300

... or even as ... 

driver = wmr300

Is there any particular reason why the driver location can't be defined at the top of the config file much the same as.. 

WEEWX_ROOT = /home/weewx

.. and then all directories come by definition under that?   I would then expect .. 

driver = bin.weewx.drivers.wmr300

... to work.   But it doesn't.  


Andrew Milner

unread,
May 2, 2018, 6:24:38 AM5/2/18
to weewx-user
the driver should physically be in WEEWX_ROOT/bin/weewx/drivers

the link should be relative to WEEWX_ROOT/bin and so should be
driver = weewx.drivers.wmr300

Cycle London

unread,
May 2, 2018, 6:45:20 AM5/2/18
to weewx...@googlegroups.com
Which is where it is .. . but, ah damn ... 

[root@weather ~]# python -V
Python 2.7.5

*sigh*

Here we go again ........ 




--
You received this message because you are subscribed to a topic in the Google Groups "weewx-user" group.
To unsubscribe from this topic, visit https://groups.google.com/d/topic/weewx-user/8iVZDo-Qb4Y/unsubscribe.
To unsubscribe from this group and all its topics, send an email to weewx-user+unsubscribe@googlegroups.com.

Andrew Milner

unread,
May 2, 2018, 7:09:34 AM5/2/18
to weewx-user
The log snippet you gave before had bin as part of the link

can you attach the log to go with the weewx startup when you have things set as I suggested

check what you have got WEEWX_ROOT set to also in weewx.conf  Mine is set to /home/weewx

WEEWX_ROOT = /home/weewx
To unsubscribe from this group and all its topics, send an email to weewx-user+...@googlegroups.com.

Cycle London

unread,
May 2, 2018, 7:15:01 AM5/2/18
to weewx...@googlegroups.com
I'm going back to CentOS 6.9, which I know well.  Screw 7 and its systemd crap. 

I can't believe this is taking so damned long.  

And now the ISO isn't recognised by vmware ... oh, this is such fun. 

I'm off back to bed for a couple of hours until the urge to ram my fist through my screen subsides somewhat. 

To unsubscribe from this group and all its topics, send an email to weewx-user+unsubscribe@googlegroups.com.

Cycle London

unread,
May 2, 2018, 8:11:58 AM5/2/18
to weewx...@googlegroups.com
1. Download CentOS7 ISO
2. install, configure CentOS 7 
3. realise that you’ve locked yourself out by changing ssh port
4. try to change ssh port on console but can’t because on a Mac with non-standard keyboard
5. remove CentOS 7 VM and build another one
6. download weewx
7. install, configure weewx
8. after four days of trying different configurations, realize that weewx will not run on Python 2.7
9. investigate downgrading Python to 2.6 but realise it’s more trouble than it’s worth
10. download CentOS 6 ISO
11. CentOS 6 ISO doesn't work
12. try again to CentOS 6 ISO
13. CentOS 6 ISO doesn't work
14. try a third time to download CentOS 6 ISO
15. CentOS 6 ISO works
16. start to install CentOS 6
17. no mouse support in installation screen
18. look for claw hammer to use on server
19. go to bed



On 2 May 2018 at 12:09, Andrew Milner <andrew.s...@gmail.com> wrote:
To unsubscribe from this group and all its topics, send an email to weewx-user+unsubscribe@googlegroups.com.

vince

unread,
May 2, 2018, 11:39:04 AM5/2/18
to weewx-user
On Wednesday, May 2, 2018 at 5:11:58 AM UTC-7, Cycle London wrote:
5. remove CentOS 7 VM and build another one
6. download weewx
7. install, configure weewx
8. after four days of trying different configurations, realize that weewx will not run on Python 2.7

Not true.  Weewx runs just fine on centos7 in simulator mode using its python 2.7.5

Here's a Dockerfile if you speak Docker.  The rpms you need are in there.


Cycle London

unread,
May 2, 2018, 12:57:59 PM5/2/18
to weewx...@googlegroups.com
OK, I officially give up.     

I got a CentOS 6.9 VM running, updated it, and snapshotted it before I started to play around.  The following is what I did AFTER I had downloaded the weewx tarball and I am inside the untarred directory.  I obviously didn't see that pyusb wasn't available, but my attempts to get the RPM and install it manually, well ... you'll see.

Is there anyone who wants to buy a used Oregon Scientific weather station in the UK, including the pole?  Make me an offer. 

FScript started on Wed 02 May 2018 05:45:42 PM BST
]0;root@weather:~/weewx-3.8.0 [?1034h[root@weather weewx-3.8.0]# yum install python-configobj python-cheetah python-imaging python-setuptools py 
serial pyusb mysql-client python-mysqldb pyephem -y
Loaded plugins: fastestmirror
Setting up Install Process
Loading mirror speeds from cached hostfile
No package [1mpyserial (B [m available.
No package [1mpyusb (B [m available.
No package [1mmysql-client (B [m available.
No package [1mpython-mysqldb (B [m available.
No package [1mpyephem (B [m available.
Resolving Dependencies
--> Running transaction check
---> Package python-cheetah.x86_64 0:2.4.1-1.el6 will be installed
--> Processing Dependency: python-pygments for package: python-cheetah-2.4.1-1.el6.x86_64
--> Processing Dependency: python-markdown for package: python-cheetah-2.4.1-1.el6.x86_64
---> Package python-configobj.noarch 0:4.6.0-3.el6 will be installed
---> Package python-imaging.x86_64 0:1.1.6-19.el6 will be installed
--> Processing Dependency: libjpeg.so.62()(64bit) for package: python-imaging-1.1.6-19.el6.x86_64
--> Processing Dependency: libfreetype.so.6()(64bit) for package: python-imaging-1.1.6-19.el6.x86_64
---> Package python-setuptools.noarch 0:0.6.10-4el6_9 will be installed
--> Running transaction check
---> Package freetype.x86_64 0:2.3.11-17.el6 will be installed
---> Package libjpeg-turbo.x86_64 0:1.2.1-3.el6_5 will be installed
---> Package python-markdown.noarch 0:2.0.1-4.el6 will be installed
---> Package python-pygments.noarch 0:1.1.1-2.el6 will be installed
--> Finished Dependency Resolution

Dependencies Resolved

===========================================================================================================
 Package                        Arch                Version                     Repository            Size
===========================================================================================================
Installing:
 python-cheetah                 x86_64              2.4.1-1.el6                 base                 365 k
 python-configobj               noarch              4.6.0-3.el6                 base                 182 k
 python-imaging                 x86_64              1.1.6-19.el6                base                 388 k
 python-setuptools              noarch              0.6.10-4el6_9               updates              336 k
Installing for dependencies:
 freetype                       x86_64              2.3.11-17.el6               base                 361 k
 libjpeg-turbo                  x86_64              1.2.1-3.el6_5               base                 174 k
 python-markdown                noarch              2.0.1-4.el6                 base                 118 k
 python-pygments                noarch              1.1.1-2.el6                 base                 562 k

Transaction Summary
===========================================================================================================
Install       8 Package(s)

Total download size: 2.4 M
Installed size: 9.5 M
Downloading Packages:
(1/8): freetype-2.3.11-17.el6.x86_6 (12%) 88% [=======================   ]  0.0 B/s | 321 kB     --:-- ETA 

(1/8): freetype-2.3.11-17.el6.x86_64.rpm                                            | 361 kB     00:00     

(2/8): libjpeg-turbo-1.2.1-3.el6_5.x86_64.rpm                                       | 174 kB     00:00     

(3/8): python-cheetah-2.4.1-1.el6.x86_64.rpm                                        | 365 kB     00:00     

(4/8): python-configobj-4.6.0-3.el6.noarch.rpm                                      | 182 kB     00:00     

(5/8): python-imaging-1.1.6-19.el6.x86_64.rpm                                       | 388 kB     00:00     

(6/8): python-markdown-2.0.1-4.el6.noarch.rpm                                       | 118 kB     00:00     

(7/8): python-pygments-1.1.1-2.el6.noarch.rpm                                       | 562 kB     00:00     

(8/8): python-setuptools-0.6.10-4el6_9.noarch.rpm                                   | 336 kB     00:00     
-----------------------------------------------------------------------------------------------------------
Total                                                                      2.5 MB/s | 2.4 MB     00:00     
Running rpm_check_debug
Running Transaction Test
Transaction Test Succeeded
Running Transaction

  Installing : libjpeg-turbo-1.2.1-3.el6_5.x86_64 [###                                               ] 1/8
  Installing : libjpeg-turbo-1.2.1-3.el6_5.x86_64 [######                                            ] 1/8
  Installing : libjpeg-turbo-1.2.1-3.el6_5.x86_64 [#########                                         ] 1/8
  Installing : libjpeg-turbo-1.2.1-3.el6_5.x86_64 [##########                                        ] 1/8
  Installing : libjpeg-turbo-1.2.1-3.el6_5.x86_64 [###########                                       ] 1/8
  Installing : libjpeg-turbo-1.2.1-3.el6_5.x86_64 [#################                                 ] 1/8
  Installing : libjpeg-turbo-1.2.1-3.el6_5.x86_64 [########################                          ] 1/8
  Installing : libjpeg-turbo-1.2.1-3.el6_5.x86_64 [###############################                   ] 1/8
  Installing : libjpeg-turbo-1.2.1-3.el6_5.x86_64 [######################################            ] 1/8
  Installing : libjpeg-turbo-1.2.1-3.el6_5.x86_64 [#######################################           ] 1/8
  Installing : libjpeg-turbo-1.2.1-3.el6_5.x86_64 [#########################################         ] 1/8
  Installing : libjpeg-turbo-1.2.1-3.el6_5.x86_64 [###########################################       ] 1/8
  Installing : libjpeg-turbo-1.2.1-3.el6_5.x86_64 [############################################      ] 1/8
  Installing : libjpeg-turbo-1.2.1-3.el6_5.x86_64 [###############################################   ] 1/8
  Installing : libjpeg-turbo-1.2.1-3.el6_5.x86_64 [################################################  ] 1/8
  Installing : libjpeg-turbo-1.2.1-3.el6_5.x86_64 [################################################# ] 1/8
  Installing : libjpeg-turbo-1.2.1-3.el6_5.x86_64                                                      1/8 

  Installing : freetype-2.3.11-17.el6.x86_64 [                                                       ] 2/8
  Installing : freetype-2.3.11-17.el6.x86_64 [###                                                    ] 2/8
  Installing : freetype-2.3.11-17.el6.x86_64 [########                                               ] 2/8
  Installing : freetype-2.3.11-17.el6.x86_64 [############                                           ] 2/8
  Installing : freetype-2.3.11-17.el6.x86_64 [#################                                      ] 2/8
  Installing : freetype-2.3.11-17.el6.x86_64 [#####################                                  ] 2/8
  Installing : freetype-2.3.11-17.el6.x86_64 [#########################                              ] 2/8
  Installing : freetype-2.3.11-17.el6.x86_64 [#############################                          ] 2/8
  Installing : freetype-2.3.11-17.el6.x86_64 [##################################                     ] 2/8
  Installing : freetype-2.3.11-17.el6.x86_64 [######################################                 ] 2/8
  Installing : freetype-2.3.11-17.el6.x86_64 [#########################################              ] 2/8
  Installing : freetype-2.3.11-17.el6.x86_64 [##############################################         ] 2/8
  Installing : freetype-2.3.11-17.el6.x86_64 [##################################################     ] 2/8
  Installing : freetype-2.3.11-17.el6.x86_64 [###################################################    ] 2/8
  Installing : freetype-2.3.11-17.el6.x86_64 [####################################################   ] 2/8
  Installing : freetype-2.3.11-17.el6.x86_64 [#####################################################  ] 2/8
  Installing : freetype-2.3.11-17.el6.x86_64 [###################################################### ] 2/8
  Installing : freetype-2.3.11-17.el6.x86_64                                                           2/8 

  Installing : python-markdown-2.0.1-4.el6.noarch [                                                  ] 3/8
  Installing : python-markdown-2.0.1-4.el6.noarch [##                                                ] 3/8
  Installing : python-markdown-2.0.1-4.el6.noarch [###                                               ] 3/8
  Installing : python-markdown-2.0.1-4.el6.noarch [#####                                             ] 3/8
  Installing : python-markdown-2.0.1-4.el6.noarch [######                                            ] 3/8
  Installing : python-markdown-2.0.1-4.el6.noarch [#######                                           ] 3/8
  Installing : python-markdown-2.0.1-4.el6.noarch [########                                          ] 3/8
  Installing : python-markdown-2.0.1-4.el6.noarch [#########                                         ] 3/8
  Installing : python-markdown-2.0.1-4.el6.noarch [##########                                        ] 3/8
  Installing : python-markdown-2.0.1-4.el6.noarch [###########                                       ] 3/8
  Installing : python-markdown-2.0.1-4.el6.noarch [############                                      ] 3/8
  Installing : python-markdown-2.0.1-4.el6.noarch [#############                                     ] 3/8
  Installing : python-markdown-2.0.1-4.el6.noarch [##############                                    ] 3/8
  Installing : python-markdown-2.0.1-4.el6.noarch [###############                                   ] 3/8
  Installing : python-markdown-2.0.1-4.el6.noarch [################                                  ] 3/8
  Installing : python-markdown-2.0.1-4.el6.noarch [#################                                 ] 3/8
  Installing : python-markdown-2.0.1-4.el6.noarch [##################                                ] 3/8
  Installing : python-markdown-2.0.1-4.el6.noarch [###################                               ] 3/8
  Installing : python-markdown-2.0.1-4.el6.noarch [####################                              ] 3/8
  Installing : python-markdown-2.0.1-4.el6.noarch [#####################                             ] 3/8
  Installing : python-markdown-2.0.1-4.el6.noarch [######################                            ] 3/8
  Installing : python-markdown-2.0.1-4.el6.noarch [#######################                           ] 3/8
  Installing : python-markdown-2.0.1-4.el6.noarch [########################                          ] 3/8
  Installing : python-markdown-2.0.1-4.el6.noarch [#########################                         ] 3/8
  Installing : python-markdown-2.0.1-4.el6.noarch [##########################                        ] 3/8
  Installing : python-markdown-2.0.1-4.el6.noarch [###########################                       ] 3/8
  Installing : python-markdown-2.0.1-4.el6.noarch [##############################                    ] 3/8
  Installing : python-markdown-2.0.1-4.el6.noarch [###############################                   ] 3/8
  Installing : python-markdown-2.0.1-4.el6.noarch [################################                  ] 3/8
  Installing : python-markdown-2.0.1-4.el6.noarch [#################################                 ] 3/8
  Installing : python-markdown-2.0.1-4.el6.noarch [###################################               ] 3/8
  Installing : python-markdown-2.0.1-4.el6.noarch [####################################              ] 3/8
  Installing : python-markdown-2.0.1-4.el6.noarch [#####################################             ] 3/8
  Installing : python-markdown-2.0.1-4.el6.noarch [######################################            ] 3/8
  Installing : python-markdown-2.0.1-4.el6.noarch [#######################################           ] 3/8
  Installing : python-markdown-2.0.1-4.el6.noarch [########################################          ] 3/8
  Installing : python-markdown-2.0.1-4.el6.noarch [#########################################         ] 3/8
  Installing : python-markdown-2.0.1-4.el6.noarch [##########################################        ] 3/8
  Installing : python-markdown-2.0.1-4.el6.noarch [###########################################       ] 3/8
  Installing : python-markdown-2.0.1-4.el6.noarch [############################################      ] 3/8
  Installing : python-markdown-2.0.1-4.el6.noarch [#############################################     ] 3/8
  Installing : python-markdown-2.0.1-4.el6.noarch [###############################################   ] 3/8
  Installing : python-markdown-2.0.1-4.el6.noarch [################################################# ] 3/8
  Installing : python-markdown-2.0.1-4.el6.noarch                                                      3/8 

  Installing : python-setuptools-0.6.10-4el6_9.noarch [                                              ] 4/8
  Installing : python-setuptools-0.6.10-4el6_9.noarch [##                                            ] 4/8
  Installing : python-setuptools-0.6.10-4el6_9.noarch [###                                           ] 4/8
  Installing : python-setuptools-0.6.10-4el6_9.noarch [####                                          ] 4/8
  Installing : python-setuptools-0.6.10-4el6_9.noarch [#####                                         ] 4/8
  Installing : python-setuptools-0.6.10-4el6_9.noarch [#######                                       ] 4/8
  Installing : python-setuptools-0.6.10-4el6_9.noarch [########                                      ] 4/8
  Installing : python-setuptools-0.6.10-4el6_9.noarch [#########                                     ] 4/8
  Installing : python-setuptools-0.6.10-4el6_9.noarch [##########                                    ] 4/8
  Installing : python-setuptools-0.6.10-4el6_9.noarch [###########                                   ] 4/8
  Installing : python-setuptools-0.6.10-4el6_9.noarch [############                                  ] 4/8
  Installing : python-setuptools-0.6.10-4el6_9.noarch [#############                                 ] 4/8
  Installing : python-setuptools-0.6.10-4el6_9.noarch [##############                                ] 4/8
  Installing : python-setuptools-0.6.10-4el6_9.noarch [###############                               ] 4/8
  Installing : python-setuptools-0.6.10-4el6_9.noarch [#################                             ] 4/8
  Installing : python-setuptools-0.6.10-4el6_9.noarch [###################                           ] 4/8
  Installing : python-setuptools-0.6.10-4el6_9.noarch [####################                          ] 4/8
  Installing : python-setuptools-0.6.10-4el6_9.noarch [#######################                       ] 4/8
  Installing : python-setuptools-0.6.10-4el6_9.noarch [########################                      ] 4/8
  Installing : python-setuptools-0.6.10-4el6_9.noarch [#########################                     ] 4/8
  Installing : python-setuptools-0.6.10-4el6_9.noarch [############################                  ] 4/8
  Installing : python-setuptools-0.6.10-4el6_9.noarch [##############################                ] 4/8
  Installing : python-setuptools-0.6.10-4el6_9.noarch [###############################               ] 4/8
  Installing : python-setuptools-0.6.10-4el6_9.noarch [#################################             ] 4/8
  Installing : python-setuptools-0.6.10-4el6_9.noarch [###################################           ] 4/8
  Installing : python-setuptools-0.6.10-4el6_9.noarch [####################################          ] 4/8
  Installing : python-setuptools-0.6.10-4el6_9.noarch [#####################################         ] 4/8
  Installing : python-setuptools-0.6.10-4el6_9.noarch [######################################        ] 4/8
  Installing : python-setuptools-0.6.10-4el6_9.noarch [#######################################       ] 4/8
  Installing : python-setuptools-0.6.10-4el6_9.noarch [#########################################     ] 4/8
  Installing : python-setuptools-0.6.10-4el6_9.noarch [##########################################    ] 4/8
  Installing : python-setuptools-0.6.10-4el6_9.noarch [############################################# ] 4/8
  Installing : python-setuptools-0.6.10-4el6_9.noarch                                                  4/8 

  Installing : python-pygments-1.1.1-2.el6.noarch [                                                  ] 5/8
  Installing : python-pygments-1.1.1-2.el6.noarch [#                                                 ] 5/8
  Installing : python-pygments-1.1.1-2.el6.noarch [##                                                ] 5/8
  Installing : python-pygments-1.1.1-2.el6.noarch [###                                               ] 5/8
  Installing : python-pygments-1.1.1-2.el6.noarch [####                                              ] 5/8
  Installing : python-pygments-1.1.1-2.el6.noarch [#####                                             ] 5/8
  Installing : python-pygments-1.1.1-2.el6.noarch [######                                            ] 5/8
  Installing : python-pygments-1.1.1-2.el6.noarch [#######                                           ] 5/8
  Installing : python-pygments-1.1.1-2.el6.noarch [########                                          ] 5/8
  Installing : python-pygments-1.1.1-2.el6.noarch [#########                                         ] 5/8
  Installing : python-pygments-1.1.1-2.el6.noarch [##########                                        ] 5/8
  Installing : python-pygments-1.1.1-2.el6.noarch [###########                                       ] 5/8
  Installing : python-pygments-1.1.1-2.el6.noarch [############                                      ] 5/8
  Installing : python-pygments-1.1.1-2.el6.noarch [#############                                     ] 5/8
  Installing : python-pygments-1.1.1-2.el6.noarch [##############                                    ] 5/8
  Installing : python-pygments-1.1.1-2.el6.noarch [###############                                   ] 5/8
  Installing : python-pygments-1.1.1-2.el6.noarch [#################                                 ] 5/8
  Installing : python-pygments-1.1.1-2.el6.noarch [##################                                ] 5/8
  Installing : python-pygments-1.1.1-2.el6.noarch [###################                               ] 5/8
  Installing : python-pygments-1.1.1-2.el6.noarch [####################                              ] 5/8
  Installing : python-pygments-1.1.1-2.el6.noarch [#####################                             ] 5/8
  Installing : python-pygments-1.1.1-2.el6.noarch [######################                            ] 5/8
  Installing : python-pygments-1.1.1-2.el6.noarch [#######################                           ] 5/8
  Installing : python-pygments-1.1.1-2.el6.noarch [########################                          ] 5/8
  Installing : python-pygments-1.1.1-2.el6.noarch [#########################                         ] 5/8
  Installing : python-pygments-1.1.1-2.el6.noarch [##########################                        ] 5/8
  Installing : python-pygments-1.1.1-2.el6.noarch [###########################                       ] 5/8
  Installing : python-pygments-1.1.1-2.el6.noarch [############################                      ] 5/8
  Installing : python-pygments-1.1.1-2.el6.noarch [#############################                     ] 5/8
  Installing : python-pygments-1.1.1-2.el6.noarch [##############################                    ] 5/8
  Installing : python-pygments-1.1.1-2.el6.noarch [###############################                   ] 5/8
  Installing : python-pygments-1.1.1-2.el6.noarch [################################                  ] 5/8
  Installing : python-pygments-1.1.1-2.el6.noarch [#################################                 ] 5/8
  Installing : python-pygments-1.1.1-2.el6.noarch [##################################                ] 5/8
  Installing : python-pygments-1.1.1-2.el6.noarch [###################################               ] 5/8
  Installing : python-pygments-1.1.1-2.el6.noarch [####################################              ] 5/8
  Installing : python-pygments-1.1.1-2.el6.noarch [#####################################             ] 5/8
  Installing : python-pygments-1.1.1-2.el6.noarch [######################################            ] 5/8
  Installing : python-pygments-1.1.1-2.el6.noarch [#######################################           ] 5/8
  Installing : python-pygments-1.1.1-2.el6.noarch [########################################          ] 5/8
  Installing : python-pygments-1.1.1-2.el6.noarch [#########################################         ] 5/8
  Installing : python-pygments-1.1.1-2.el6.noarch [##########################################        ] 5/8
  Installing : python-pygments-1.1.1-2.el6.noarch [###########################################       ] 5/8
  Installing : python-pygments-1.1.1-2.el6.noarch [############################################      ] 5/8
  Installing : python-pygments-1.1.1-2.el6.noarch [#############################################     ] 5/8
  Installing : python-pygments-1.1.1-2.el6.noarch [##############################################    ] 5/8
  Installing : python-pygments-1.1.1-2.el6.noarch [###############################################   ] 5/8
  Installing : python-pygments-1.1.1-2.el6.noarch [################################################  ] 5/8
  Installing : python-pygments-1.1.1-2.el6.noarch [################################################# ] 5/8
  Installing : python-pygments-1.1.1-2.el6.noarch                                                      5/8 

  Installing : python-cheetah-2.4.1-1.el6.x86_64 [                                                   ] 6/8
  Installing : python-cheetah-2.4.1-1.el6.x86_64 [#                                                  ] 6/8
  Installing : python-cheetah-2.4.1-1.el6.x86_64 [##                                                 ] 6/8
  Installing : python-cheetah-2.4.1-1.el6.x86_64 [####                                               ] 6/8
  Installing : python-cheetah-2.4.1-1.el6.x86_64 [#####                                              ] 6/8
  Installing : python-cheetah-2.4.1-1.el6.x86_64 [######                                             ] 6/8
  Installing : python-cheetah-2.4.1-1.el6.x86_64 [#######                                            ] 6/8
  Installing : python-cheetah-2.4.1-1.el6.x86_64 [########                                           ] 6/8
  Installing : python-cheetah-2.4.1-1.el6.x86_64 [#########                                          ] 6/8
  Installing : python-cheetah-2.4.1-1.el6.x86_64 [###########                                        ] 6/8
  Installing : python-cheetah-2.4.1-1.el6.x86_64 [############                                       ] 6/8
  Installing : python-cheetah-2.4.1-1.el6.x86_64 [#############                                      ] 6/8
  Installing : python-cheetah-2.4.1-1.el6.x86_64 [##############                                     ] 6/8
  Installing : python-cheetah-2.4.1-1.el6.x86_64 [###############                                    ] 6/8
  Installing : python-cheetah-2.4.1-1.el6.x86_64 [################                                   ] 6/8
  Installing : python-cheetah-2.4.1-1.el6.x86_64 [##################                                 ] 6/8
  Installing : python-cheetah-2.4.1-1.el6.x86_64 [####################                               ] 6/8
  Installing : python-cheetah-2.4.1-1.el6.x86_64 [######################                             ] 6/8
  Installing : python-cheetah-2.4.1-1.el6.x86_64 [#######################                            ] 6/8
  Installing : python-cheetah-2.4.1-1.el6.x86_64 [########################                           ] 6/8
  Installing : python-cheetah-2.4.1-1.el6.x86_64 [#########################                          ] 6/8
  Installing : python-cheetah-2.4.1-1.el6.x86_64 [##########################                         ] 6/8
  Installing : python-cheetah-2.4.1-1.el6.x86_64 [###########################                        ] 6/8
  Installing : python-cheetah-2.4.1-1.el6.x86_64 [############################                       ] 6/8
  Installing : python-cheetah-2.4.1-1.el6.x86_64 [#############################                      ] 6/8
  Installing : python-cheetah-2.4.1-1.el6.x86_64 [###############################                    ] 6/8
  Installing : python-cheetah-2.4.1-1.el6.x86_64 [################################                   ] 6/8
  Installing : python-cheetah-2.4.1-1.el6.x86_64 [#################################                  ] 6/8
  Installing : python-cheetah-2.4.1-1.el6.x86_64 [##################################                 ] 6/8
  Installing : python-cheetah-2.4.1-1.el6.x86_64 [####################################               ] 6/8
  Installing : python-cheetah-2.4.1-1.el6.x86_64 [#####################################              ] 6/8
  Installing : python-cheetah-2.4.1-1.el6.x86_64 [######################################             ] 6/8
  Installing : python-cheetah-2.4.1-1.el6.x86_64 [#######################################            ] 6/8
  Installing : python-cheetah-2.4.1-1.el6.x86_64 [########################################           ] 6/8
  Installing : python-cheetah-2.4.1-1.el6.x86_64 [#########################################          ] 6/8
  Installing : python-cheetah-2.4.1-1.el6.x86_64 [###########################################        ] 6/8
  Installing : python-cheetah-2.4.1-1.el6.x86_64 [############################################       ] 6/8
  Installing : python-cheetah-2.4.1-1.el6.x86_64 [#############################################      ] 6/8
  Installing : python-cheetah-2.4.1-1.el6.x86_64 [##############################################     ] 6/8
  Installing : python-cheetah-2.4.1-1.el6.x86_64 [###############################################    ] 6/8
  Installing : python-cheetah-2.4.1-1.el6.x86_64 [################################################   ] 6/8
  Installing : python-cheetah-2.4.1-1.el6.x86_64 [#################################################  ] 6/8
  Installing : python-cheetah-2.4.1-1.el6.x86_64 [################################################## ] 6/8
  Installing : python-cheetah-2.4.1-1.el6.x86_64                                                       6/8 

  Installing : python-imaging-1.1.6-19.el6.x86_64 [                                                  ] 7/8
  Installing : python-imaging-1.1.6-19.el6.x86_64 [#                                                 ] 7/8
  Installing : python-imaging-1.1.6-19.el6.x86_64 [##                                                ] 7/8
  Installing : python-imaging-1.1.6-19.el6.x86_64 [###                                               ] 7/8
  Installing : python-imaging-1.1.6-19.el6.x86_64 [####                                              ] 7/8
  Installing : python-imaging-1.1.6-19.el6.x86_64 [######                                            ] 7/8
  Installing : python-imaging-1.1.6-19.el6.x86_64 [#######                                           ] 7/8
  Installing : python-imaging-1.1.6-19.el6.x86_64 [########                                          ] 7/8
  Installing : python-imaging-1.1.6-19.el6.x86_64 [#########                                         ] 7/8
  Installing : python-imaging-1.1.6-19.el6.x86_64 [##########                                        ] 7/8
  Installing : python-imaging-1.1.6-19.el6.x86_64 [###########                                       ] 7/8
  Installing : python-imaging-1.1.6-19.el6.x86_64 [############                                      ] 7/8
  Installing : python-imaging-1.1.6-19.el6.x86_64 [#############                                     ] 7/8
  Installing : python-imaging-1.1.6-19.el6.x86_64 [##############                                    ] 7/8
  Installing : python-imaging-1.1.6-19.el6.x86_64 [###############                                   ] 7/8
  Installing : python-imaging-1.1.6-19.el6.x86_64 [################                                  ] 7/8
  Installing : python-imaging-1.1.6-19.el6.x86_64 [#################                                 ] 7/8
  Installing : python-imaging-1.1.6-19.el6.x86_64 [##################                                ] 7/8
  Installing : python-imaging-1.1.6-19.el6.x86_64 [###################                               ] 7/8
  Installing : python-imaging-1.1.6-19.el6.x86_64 [####################                              ] 7/8
  Installing : python-imaging-1.1.6-19.el6.x86_64 [#####################                             ] 7/8
  Installing : python-imaging-1.1.6-19.el6.x86_64 [#######################                           ] 7/8
  Installing : python-imaging-1.1.6-19.el6.x86_64 [##########################                        ] 7/8
  Installing : python-imaging-1.1.6-19.el6.x86_64 [############################                      ] 7/8
  Installing : python-imaging-1.1.6-19.el6.x86_64 [###############################                   ] 7/8
  Installing : python-imaging-1.1.6-19.el6.x86_64 [################################                  ] 7/8
  Installing : python-imaging-1.1.6-19.el6.x86_64 [#################################                 ] 7/8
  Installing : python-imaging-1.1.6-19.el6.x86_64 [###################################               ] 7/8
  Installing : python-imaging-1.1.6-19.el6.x86_64 [####################################              ] 7/8
  Installing : python-imaging-1.1.6-19.el6.x86_64 [#####################################             ] 7/8
  Installing : python-imaging-1.1.6-19.el6.x86_64 [######################################            ] 7/8
  Installing : python-imaging-1.1.6-19.el6.x86_64 [#######################################           ] 7/8
  Installing : python-imaging-1.1.6-19.el6.x86_64 [########################################          ] 7/8
  Installing : python-imaging-1.1.6-19.el6.x86_64 [#########################################         ] 7/8
  Installing : python-imaging-1.1.6-19.el6.x86_64 [##########################################        ] 7/8
  Installing : python-imaging-1.1.6-19.el6.x86_64 [###########################################       ] 7/8
  Installing : python-imaging-1.1.6-19.el6.x86_64 [############################################      ] 7/8
  Installing : python-imaging-1.1.6-19.el6.x86_64 [#############################################     ] 7/8
  Installing : python-imaging-1.1.6-19.el6.x86_64 [##############################################    ] 7/8
  Installing : python-imaging-1.1.6-19.el6.x86_64 [###############################################   ] 7/8
  Installing : python-imaging-1.1.6-19.el6.x86_64 [################################################  ] 7/8
  Installing : python-imaging-1.1.6-19.el6.x86_64 [################################################# ] 7/8
  Installing : python-imaging-1.1.6-19.el6.x86_64                                                      7/8 

  Installing : python-configobj-4.6.0-3.el6.noarch [                                                 ] 8/8
  Installing : python-configobj-4.6.0-3.el6.noarch [####                                             ] 8/8
  Installing : python-configobj-4.6.0-3.el6.noarch [######                                           ] 8/8
  Installing : python-configobj-4.6.0-3.el6.noarch [##########                                       ] 8/8
  Installing : python-configobj-4.6.0-3.el6.noarch [################                                 ] 8/8
  Installing : python-configobj-4.6.0-3.el6.noarch [#####################                            ] 8/8
  Installing : python-configobj-4.6.0-3.el6.noarch [##########################                       ] 8/8
  Installing : python-configobj-4.6.0-3.el6.noarch [###########################                      ] 8/8
  Installing : python-configobj-4.6.0-3.el6.noarch [##############################                   ] 8/8
  Installing : python-configobj-4.6.0-3.el6.noarch [################################                 ] 8/8
  Installing : python-configobj-4.6.0-3.el6.noarch [#################################                ] 8/8
  Installing : python-configobj-4.6.0-3.el6.noarch [##################################               ] 8/8
  Installing : python-configobj-4.6.0-3.el6.noarch [###################################              ] 8/8
  Installing : python-configobj-4.6.0-3.el6.noarch [#######################################          ] 8/8
  Installing : python-configobj-4.6.0-3.el6.noarch [###########################################      ] 8/8
  Installing : python-configobj-4.6.0-3.el6.noarch [################################################ ] 8/8
  Installing : python-configobj-4.6.0-3.el6.noarch                                                     8/8 

  Verifying  : python-imaging-1.1.6-19.el6.x86_64                                                      1/8 

  Verifying  : python-setuptools-0.6.10-4el6_9.noarch                                                  2/8 

  Verifying  : python-markdown-2.0.1-4.el6.noarch                                                      3/8 

  Verifying  : python-configobj-4.6.0-3.el6.noarch                                                     4/8 

  Verifying  : python-cheetah-2.4.1-1.el6.x86_64                                                       5/8 

  Verifying  : python-pygments-1.1.1-2.el6.noarch                                                      6/8 

  Verifying  : freetype-2.3.11-17.el6.x86_64                                                           7/8 

  Verifying  : libjpeg-turbo-1.2.1-3.el6_5.x86_64                                                      8/8 

Installed:
  python-cheetah.x86_64 0:2.4.1-1.el6                python-configobj.noarch 0:4.6.0-3.el6                 
  python-imaging.x86_64 0:1.1.6-19.el6               python-setuptools.noarch 0:0.6.10-4el6_9              

Dependency Installed:
  freetype.x86_64 0:2.3.11-17.el6                      libjpeg-turbo.x86_64 0:1.2.1-3.el6_5                
  python-markdown.noarch 0:2.0.1-4.el6                 python-pygments.noarch 0:1.1.1-2.el6                

Complete!
]0;root@weather:~/weewx-3.8.0 [root@weather weewx-3.8.0]# ./setup.py build
running build
running build_py
creating build
creating build/lib
copying bin/daemon.py -> build/lib
creating build/lib/schemas
copying bin/schemas/wview.py -> build/lib/schemas
copying bin/schemas/__init__.py -> build/lib/schemas
creating build/lib/user
copying bin/user/extensions.py -> build/lib/user
copying bin/user/__init__.py -> build/lib/user
creating build/lib/weecfg
copying bin/weecfg/extension.py -> build/lib/weecfg
copying bin/weecfg/__init__.py -> build/lib/weecfg
copying bin/weecfg/config.py -> build/lib/weecfg
copying bin/weecfg/database.py -> build/lib/weecfg
creating build/lib/weedb
copying bin/weedb/sqlite.py -> build/lib/weedb
copying bin/weedb/mysql.py -> build/lib/weedb
copying bin/weedb/__init__.py -> build/lib/weedb
creating build/lib/weeimport
copying bin/weeimport/cumulusimport.py -> build/lib/weeimport
copying bin/weeimport/__init__.py -> build/lib/weeimport
copying bin/weeimport/wuimport.py -> build/lib/weeimport
copying bin/weeimport/weeimport.py -> build/lib/weeimport
copying bin/weeimport/csvimport.py -> build/lib/weeimport
creating build/lib/weeplot
copying bin/weeplot/genplot.py -> build/lib/weeplot
copying bin/weeplot/__init__.py -> build/lib/weeplot
copying bin/weeplot/utilities.py -> build/lib/weeplot
creating build/lib/weeutil
copying bin/weeutil/rsyncupload.py -> build/lib/weeutil
copying bin/weeutil/weeutil.py -> build/lib/weeutil
copying bin/weeutil/ftpupload.py -> build/lib/weeutil
copying bin/weeutil/__init__.py -> build/lib/weeutil
copying bin/weeutil/Moon.py -> build/lib/weeutil
copying bin/weeutil/Sun.py -> build/lib/weeutil
creating build/lib/weewx
copying bin/weewx/accum.py -> build/lib/weewx
copying bin/weewx/engine.py -> build/lib/weewx
copying bin/weewx/wxmanager.py -> build/lib/weewx
copying bin/weewx/qc.py -> build/lib/weewx
copying bin/weewx/cheetahgenerator.py -> build/lib/weewx
copying bin/weewx/tags.py -> build/lib/weewx
copying bin/weewx/imagegenerator.py -> build/lib/weewx
copying bin/weewx/wxformulas.py -> build/lib/weewx
copying bin/weewx/crc16.py -> build/lib/weewx
copying bin/weewx/junk2.py -> build/lib/weewx
copying bin/weewx/__init__.py -> build/lib/weewx
copying bin/weewx/uwxutils.py -> build/lib/weewx
copying bin/weewx/units.py -> build/lib/weewx
copying bin/weewx/manager.py -> build/lib/weewx
copying bin/weewx/reportengine.py -> build/lib/weewx
copying bin/weewx/restx.py -> build/lib/weewx
copying bin/weewx/station.py -> build/lib/weewx
copying bin/weewx/wxservices.py -> build/lib/weewx
copying bin/weewx/filegenerator.py -> build/lib/weewx
copying bin/weewx/junk.py -> build/lib/weewx
copying bin/weewx/almanac.py -> build/lib/weewx
copying bin/weewx/wxengine.py -> build/lib/weewx
creating build/lib/weewx/drivers
copying bin/weewx/drivers/ws23xx.py -> build/lib/weewx/drivers
copying bin/weewx/drivers/wmr9x8.py -> build/lib/weewx/drivers
copying bin/weewx/drivers/ultimeter.py -> build/lib/weewx/drivers
copying bin/weewx/drivers/fousb.py -> build/lib/weewx/drivers
copying bin/weewx/drivers/ws1.py -> build/lib/weewx/drivers
copying bin/weewx/drivers/ws28xx.py -> build/lib/weewx/drivers
copying bin/weewx/drivers/acurite.py -> build/lib/weewx/drivers
copying bin/weewx/drivers/simulator.py -> build/lib/weewx/drivers
copying bin/weewx/drivers/__init__.py -> build/lib/weewx/drivers
copying bin/weewx/drivers/vantage.py -> build/lib/weewx/drivers
copying bin/weewx/drivers/te923.py -> build/lib/weewx/drivers
copying bin/weewx/drivers/wmr100.py -> build/lib/weewx/drivers
copying bin/weewx/drivers/wmr200.py -> build/lib/weewx/drivers
copying bin/weewx/drivers/cc3000.py -> build/lib/weewx/drivers
copying bin/weewx/drivers/wmr300.py -> build/lib/weewx/drivers
running build_scripts
creating build/scripts-2.6
copying and adjusting bin/wee_config -> build/scripts-2.6
copying and adjusting bin/wee_database -> build/scripts-2.6
copying and adjusting bin/wee_debug -> build/scripts-2.6
copying and adjusting bin/wee_device -> build/scripts-2.6
copying and adjusting bin/wee_extension -> build/scripts-2.6
copying and adjusting bin/wee_import -> build/scripts-2.6
copying and adjusting bin/wee_reports -> build/scripts-2.6
copying and adjusting bin/weewxd -> build/scripts-2.6
copying and adjusting bin/wunderfixer -> build/scripts-2.6
changing mode of build/scripts-2.6/wee_config from 644 to 755
changing mode of build/scripts-2.6/wee_database from 644 to 755
changing mode of build/scripts-2.6/wee_debug from 644 to 755
changing mode of build/scripts-2.6/wee_device from 644 to 755
changing mode of build/scripts-2.6/wee_extension from 644 to 755
changing mode of build/scripts-2.6/wee_import from 644 to 755
changing mode of build/scripts-2.6/wee_reports from 644 to 755
changing mode of build/scripts-2.6/weewxd from 644 to 755
changing mode of build/scripts-2.6/wunderfixer from 644 to 755
]0;root@weather:~/weewx-3.8.0 [root@weather weewx-3.8.0]# ./setup.py build [K [K [K [K [Kinstall
running install
running build
running build_py
running build_scripts
running install_lib
creating /home/weewx
creating /home/weewx/bin
creating /home/weewx/bin/weedb
copying build/lib/weedb/sqlite.py -> /home/weewx/bin/weedb
copying build/lib/weedb/mysql.py -> /home/weewx/bin/weedb
copying build/lib/weedb/__init__.py -> /home/weewx/bin/weedb
creating /home/weewx/bin/weewx
copying build/lib/weewx/accum.py -> /home/weewx/bin/weewx
copying build/lib/weewx/engine.py -> /home/weewx/bin/weewx
copying build/lib/weewx/wxmanager.py -> /home/weewx/bin/weewx
creating /home/weewx/bin/weewx/drivers
copying build/lib/weewx/drivers/ws23xx.py -> /home/weewx/bin/weewx/drivers
copying build/lib/weewx/drivers/wmr9x8.py -> /home/weewx/bin/weewx/drivers
copying build/lib/weewx/drivers/ultimeter.py -> /home/weewx/bin/weewx/drivers
copying build/lib/weewx/drivers/fousb.py -> /home/weewx/bin/weewx/drivers
copying build/lib/weewx/drivers/ws1.py -> /home/weewx/bin/weewx/drivers
copying build/lib/weewx/drivers/ws28xx.py -> /home/weewx/bin/weewx/drivers
copying build/lib/weewx/drivers/acurite.py -> /home/weewx/bin/weewx/drivers
copying build/lib/weewx/drivers/simulator.py -> /home/weewx/bin/weewx/drivers
copying build/lib/weewx/drivers/__init__.py -> /home/weewx/bin/weewx/drivers
copying build/lib/weewx/drivers/vantage.py -> /home/weewx/bin/weewx/drivers
copying build/lib/weewx/drivers/te923.py -> /home/weewx/bin/weewx/drivers
copying build/lib/weewx/drivers/wmr100.py -> /home/weewx/bin/weewx/drivers
copying build/lib/weewx/drivers/wmr200.py -> /home/weewx/bin/weewx/drivers
copying build/lib/weewx/drivers/cc3000.py -> /home/weewx/bin/weewx/drivers
copying build/lib/weewx/drivers/wmr300.py -> /home/weewx/bin/weewx/drivers
copying build/lib/weewx/qc.py -> /home/weewx/bin/weewx
copying build/lib/weewx/cheetahgenerator.py -> /home/weewx/bin/weewx
copying build/lib/weewx/tags.py -> /home/weewx/bin/weewx
copying build/lib/weewx/imagegenerator.py -> /home/weewx/bin/weewx
copying build/lib/weewx/wxformulas.py -> /home/weewx/bin/weewx
copying build/lib/weewx/crc16.py -> /home/weewx/bin/weewx
copying build/lib/weewx/junk2.py -> /home/weewx/bin/weewx
copying build/lib/weewx/__init__.py -> /home/weewx/bin/weewx
copying build/lib/weewx/uwxutils.py -> /home/weewx/bin/weewx
copying build/lib/weewx/units.py -> /home/weewx/bin/weewx
copying build/lib/weewx/manager.py -> /home/weewx/bin/weewx
copying build/lib/weewx/reportengine.py -> /home/weewx/bin/weewx
copying build/lib/weewx/restx.py -> /home/weewx/bin/weewx
copying build/lib/weewx/station.py -> /home/weewx/bin/weewx
copying build/lib/weewx/wxservices.py -> /home/weewx/bin/weewx
copying build/lib/weewx/filegenerator.py -> /home/weewx/bin/weewx
copying build/lib/weewx/junk.py -> /home/weewx/bin/weewx
copying build/lib/weewx/almanac.py -> /home/weewx/bin/weewx
copying build/lib/weewx/wxengine.py -> /home/weewx/bin/weewx
creating /home/weewx/bin/user
copying build/lib/user/extensions.py -> /home/weewx/bin/user
copying build/lib/user/__init__.py -> /home/weewx/bin/user
creating /home/weewx/bin/weeutil
copying build/lib/weeutil/rsyncupload.py -> /home/weewx/bin/weeutil
copying build/lib/weeutil/weeutil.py -> /home/weewx/bin/weeutil
copying build/lib/weeutil/ftpupload.py -> /home/weewx/bin/weeutil
copying build/lib/weeutil/__init__.py -> /home/weewx/bin/weeutil
copying build/lib/weeutil/Moon.py -> /home/weewx/bin/weeutil
copying build/lib/weeutil/Sun.py -> /home/weewx/bin/weeutil
creating /home/weewx/bin/weeimport
copying build/lib/weeimport/cumulusimport.py -> /home/weewx/bin/weeimport
copying build/lib/weeimport/__init__.py -> /home/weewx/bin/weeimport
copying build/lib/weeimport/wuimport.py -> /home/weewx/bin/weeimport
copying build/lib/weeimport/weeimport.py -> /home/weewx/bin/weeimport
copying build/lib/weeimport/csvimport.py -> /home/weewx/bin/weeimport
copying build/lib/daemon.py -> /home/weewx/bin
creating /home/weewx/bin/schemas
copying build/lib/schemas/wview.py -> /home/weewx/bin/schemas
copying build/lib/schemas/__init__.py -> /home/weewx/bin/schemas
creating /home/weewx/bin/weecfg
copying build/lib/weecfg/extension.py -> /home/weewx/bin/weecfg
copying build/lib/weecfg/__init__.py -> /home/weewx/bin/weecfg
copying build/lib/weecfg/config.py -> /home/weewx/bin/weecfg
copying build/lib/weecfg/database.py -> /home/weewx/bin/weecfg
creating /home/weewx/bin/weeplot
copying build/lib/weeplot/genplot.py -> /home/weewx/bin/weeplot
copying build/lib/weeplot/__init__.py -> /home/weewx/bin/weeplot
copying build/lib/weeplot/utilities.py -> /home/weewx/bin/weeplot
byte-compiling /home/weewx/bin/weedb/sqlite.py to sqlite.pyc
byte-compiling /home/weewx/bin/weedb/mysql.py to mysql.pyc
byte-compiling /home/weewx/bin/weedb/__init__.py to __init__.pyc
byte-compiling /home/weewx/bin/weewx/accum.py to accum.pyc
byte-compiling /home/weewx/bin/weewx/engine.py to engine.pyc
byte-compiling /home/weewx/bin/weewx/wxmanager.py to wxmanager.pyc
byte-compiling /home/weewx/bin/weewx/drivers/ws23xx.py to ws23xx.pyc
byte-compiling /home/weewx/bin/weewx/drivers/wmr9x8.py to wmr9x8.pyc
byte-compiling /home/weewx/bin/weewx/drivers/ultimeter.py to ultimeter.pyc
byte-compiling /home/weewx/bin/weewx/drivers/fousb.py to fousb.pyc
byte-compiling /home/weewx/bin/weewx/drivers/ws1.py to ws1.pyc
byte-compiling /home/weewx/bin/weewx/drivers/ws28xx.py to ws28xx.pyc
byte-compiling /home/weewx/bin/weewx/drivers/acurite.py to acurite.pyc
byte-compiling /home/weewx/bin/weewx/drivers/simulator.py to simulator.pyc
byte-compiling /home/weewx/bin/weewx/drivers/__init__.py to __init__.pyc
byte-compiling /home/weewx/bin/weewx/drivers/vantage.py to vantage.pyc
byte-compiling /home/weewx/bin/weewx/drivers/te923.py to te923.pyc
byte-compiling /home/weewx/bin/weewx/drivers/wmr100.py to wmr100.pyc
byte-compiling /home/weewx/bin/weewx/drivers/wmr200.py to wmr200.pyc
byte-compiling /home/weewx/bin/weewx/drivers/cc3000.py to cc3000.pyc
byte-compiling /home/weewx/bin/weewx/drivers/wmr300.py to wmr300.pyc
byte-compiling /home/weewx/bin/weewx/qc.py to qc.pyc
byte-compiling /home/weewx/bin/weewx/cheetahgenerator.py to cheetahgenerator.pyc
byte-compiling /home/weewx/bin/weewx/tags.py to tags.pyc
byte-compiling /home/weewx/bin/weewx/imagegenerator.py to imagegenerator.pyc
byte-compiling /home/weewx/bin/weewx/wxformulas.py to wxformulas.pyc
byte-compiling /home/weewx/bin/weewx/crc16.py to crc16.pyc
byte-compiling /home/weewx/bin/weewx/junk2.py to junk2.pyc
byte-compiling /home/weewx/bin/weewx/__init__.py to __init__.pyc
byte-compiling /home/weewx/bin/weewx/uwxutils.py to uwxutils.pyc
byte-compiling /home/weewx/bin/weewx/units.py to units.pyc
byte-compiling /home/weewx/bin/weewx/manager.py to manager.pyc
byte-compiling /home/weewx/bin/weewx/reportengine.py to reportengine.pyc
byte-compiling /home/weewx/bin/weewx/restx.py to restx.pyc
byte-compiling /home/weewx/bin/weewx/station.py to station.pyc
byte-compiling /home/weewx/bin/weewx/wxservices.py to wxservices.pyc
byte-compiling /home/weewx/bin/weewx/filegenerator.py to filegenerator.pyc
byte-compiling /home/weewx/bin/weewx/junk.py to junk.pyc
byte-compiling /home/weewx/bin/weewx/almanac.py to almanac.pyc
byte-compiling /home/weewx/bin/weewx/wxengine.py to wxengine.pyc
byte-compiling /home/weewx/bin/user/extensions.py to extensions.pyc
byte-compiling /home/weewx/bin/user/__init__.py to __init__.pyc
byte-compiling /home/weewx/bin/weeutil/rsyncupload.py to rsyncupload.pyc
byte-compiling /home/weewx/bin/weeutil/weeutil.py to weeutil.pyc
byte-compiling /home/weewx/bin/weeutil/ftpupload.py to ftpupload.pyc
byte-compiling /home/weewx/bin/weeutil/__init__.py to __init__.pyc
byte-compiling /home/weewx/bin/weeutil/Moon.py to Moon.pyc
byte-compiling /home/weewx/bin/weeutil/Sun.py to Sun.pyc
byte-compiling /home/weewx/bin/weeimport/cumulusimport.py to cumulusimport.pyc
byte-compiling /home/weewx/bin/weeimport/__init__.py to __init__.pyc
byte-compiling /home/weewx/bin/weeimport/wuimport.py to wuimport.pyc
byte-compiling /home/weewx/bin/weeimport/weeimport.py to weeimport.pyc
byte-compiling /home/weewx/bin/weeimport/csvimport.py to csvimport.pyc
byte-compiling /home/weewx/bin/daemon.py to daemon.pyc
byte-compiling /home/weewx/bin/schemas/wview.py to wview.pyc
byte-compiling /home/weewx/bin/schemas/__init__.py to __init__.pyc
byte-compiling /home/weewx/bin/weecfg/extension.py to extension.pyc
byte-compiling /home/weewx/bin/weecfg/__init__.py to __init__.pyc
byte-compiling /home/weewx/bin/weecfg/config.py to config.pyc
byte-compiling /home/weewx/bin/weecfg/database.py to database.pyc
byte-compiling /home/weewx/bin/weeplot/genplot.py to genplot.pyc
byte-compiling /home/weewx/bin/weeplot/__init__.py to __init__.pyc
byte-compiling /home/weewx/bin/weeplot/utilities.py to utilities.pyc
running install_scripts
copying build/scripts-2.6/wee_database -> /home/weewx/bin
copying build/scripts-2.6/wee_config -> /home/weewx/bin
copying build/scripts-2.6/wee_import -> /home/weewx/bin
copying build/scripts-2.6/wunderfixer -> /home/weewx/bin
copying build/scripts-2.6/wee_device -> /home/weewx/bin
copying build/scripts-2.6/wee_debug -> /home/weewx/bin
copying build/scripts-2.6/wee_reports -> /home/weewx/bin
copying build/scripts-2.6/weewxd -> /home/weewx/bin
copying build/scripts-2.6/wee_extension -> /home/weewx/bin
changing mode of /home/weewx/bin/wee_database to 755
changing mode of /home/weewx/bin/wee_config to 755
changing mode of /home/weewx/bin/wee_import to 755
changing mode of /home/weewx/bin/wunderfixer to 755
changing mode of /home/weewx/bin/wee_device to 755
changing mode of /home/weewx/bin/wee_debug to 755
changing mode of /home/weewx/bin/wee_reports to 755
changing mode of /home/weewx/bin/weewxd to 755
changing mode of /home/weewx/bin/wee_extension to 755
running install_data
copying LICENSE.txt -> /home/weewx/
copying README -> /home/weewx/
Enter a brief description of the station, such as its location.  For example:
Santa's Workshop, North Pole
description: Somewhere in the UK
Specify altitude, with units 'foot' or 'meter'.  For example:
35, foot
12, meter
altitude [0, meter]: 133, foot
Specify latitude in decimal degrees, negative for south.
latitude [90.000]: 0
Specify longitude in decimal degrees, negative for west.
longitude [0.000]: 90 0
Indicate the preferred units for display: 'metric' or 'us'
units [metric]: us
Installed drivers include:
  0) ?               (weewx.drivers.acurite)   No module named usb
  1) ?               (weewx.drivers.cc3000)    No module named serial
  2) ?               (weewx.drivers.fousb)     No module named usb
  3) Simulator       (weewx.drivers.simulator) 
  4) ?               (weewx.drivers.te923)     No module named usb
  5) ?               (weewx.drivers.ultimeter) No module named serial
  6) Vantage         (weewx.drivers.vantage)   
  7) ?               (weewx.drivers.wmr100)    No module named usb
  8) ?               (weewx.drivers.wmr200)    No module named usb
  9) ?               (weewx.drivers.wmr300)    No module named usb
 10) ?               (weewx.drivers.wmr9x8)    No module named serial
 11) WS1             (weewx.drivers.ws1)       
 12) WS23xx          (weewx.drivers.ws23xx)    
 13) ?               (weewx.drivers.ws28xx)    No module named usb
choose a driver: 9
Traceback (most recent call last):
  File "./setup.py", line 647, in <module>
    'util/udev/rules.d/ws28xx.rules'])
  File "/usr/lib64/python2.6/distutils/core.py", line 152, in setup
    dist.run_commands()
  File "/usr/lib64/python2.6/distutils/dist.py", line 975, in run_commands
    self.run_command(cmd)
  File "/usr/lib64/python2.6/distutils/dist.py", line 995, in run_command
    cmd_obj.run()
  File "/usr/lib64/python2.6/distutils/command/install.py", line 589, in run
    self.run_command(cmd_name)
  File "/usr/lib64/python2.6/distutils/cmd.py", line 333, in run_command
    self.distribution.run_command(command)
  File "/usr/lib64/python2.6/distutils/dist.py", line 995, in run_command
    cmd_obj.run()
  File "./setup.py", line 154, in run
    install_data.run(self)
  File "/usr/lib64/python2.6/distutils/command/install_data.py", line 78, in run
    (out, _) = self.copy_file(data, dir)
  File "./setup.py", line 137, in copy_file
    rv = self.process_config_file(f, install_dir, **kwargs)
  File "./setup.py", line 190, in process_config_file
    stn_info.update(weecfg.prompt_for_driver_settings(driver))
  File "/root/weewx-3.8.0/bin/weecfg/__init__.py", line 1136, in prompt_for_driver_settings
    __import__(driver)
  File "/root/weewx-3.8.0/bin/weewx/drivers/wmr300.py", line 716, in <module>
    import usb
ImportError: No module named usb
]0;root@weather:~/weewx-3.8.0 [root@weather weewx-3.8.0]# yum install pyusb -y
Loaded plugins: fastestmirror
Setting up Install Process
Loading mirror speeds from cached hostfile
No package [1mpyusb (B [m available.
Error: Nothing to do
]0;root@weather:~/weewx-3.8.0 [root@weather weewx-3.8.0]# wget pyusb-1.0.0-0.11.b1.el7.noarch.rpm
Resolving pyusb-1.0.0-0.11.b1.el7.noarch.rpm... failed: Name or service not known.
wget: unable to resolve host address “pyusb-1.0.0-0.11.b1.el7.noarch.rpm”
]0;root@weather:~/weewx-3.8.0 [root@weather weewx-3.8.0]# wget https://centos.pkgs.org/7/centos-x86_64/pyusb-1.0.0-0.11.b1.el7.noarch.rpm 
.html
Resolving centos.pkgs.org... 94.130.128.153
Connecting to centos.pkgs.org|94.130.128.153|:443... connected.
HTTP request sent, awaiting response... 200 OK
Length: unspecified [text/html]
Saving to: “pyusb-1.0.0-0.11.b1.el7.noarch.rpm.html”


    [<=>                                                               ] 0           --.-K/s              
    [ <=>                                                              ] 13,647      --.-K/s   in 0s      

2018-05-02 17:48:17 (978 MB/s) - “pyusb-1.0.0-0.11.b1.el7.noarch.rpm.html” saved [13647]

]0;root@weather:~/weewx-3.8.0 [root@weather weewx-3.8.0]# ls
[0m [38;5;27mbin [0m     [38;5;27mdocs [0m      LICENSE.txt  pyusb-1.0.0-0.11.b1.el7.noarch.rpm.html  setup.cfg   [38;5;27mskins [0m       [38;5;27mutil [0m
[38;5;27mbuild [0m   [38;5;27mexamples [0m  PKG-INFO     README                                   [38;5;34msetup.py [0m   typescript  weewx.conf
[m ]0;root@weather:~/weewx-3.8.0 [root@weather weewx-3.8.0]# rpm -ivh pyusb-1.0.0-0.11.b1.el7.noarch.rpm.html 
error: pyusb-1.0.0-0.11.b1.el7.noarch.rpm.html: not an rpm package (or package manifest): 
]0;root@weather:~/weewx-3.8.0 [root@weather weewx-3.8.0]# wget http://mirror.centos.org/centos/7/os/x86_64/Packages/pyusb-1.0.0-0.11.b1.e 
l7.noarch.rpm
Resolving mirror.centos.org... 95.211.98.141, 2001:1b48:203::4:10
Connecting to mirror.centos.org|95.211.98.141|:80... connected.
HTTP request sent, awaiting response... 200 OK
Length: 67152 (66K) [application/x-rpm]
Saving to: “pyusb-1.0.0-0.11.b1.el7.noarch.rpm”


 0% [                                                                  ] 0           --.-K/s              
 2% [>                                                                 ] 1,440       5.22K/s              
100%[=================================================================>] 67,152       207K/s   in 0.3s    

2018-05-02 17:49:05 (207 KB/s) - “pyusb-1.0.0-0.11.b1.el7.noarch.rpm” saved [67152/67152]

]0;root@weather:~/weewx-3.8.0 [root@weather weewx-3.8.0]# ls
[0m [38;5;27mbin [0m     [38;5;27mexamples [0m     [38;5;9mpyusb-1.0.0-0.11.b1.el7.noarch.rpm [0m       setup.cfg  typescript
[38;5;27mbuild [0m  LICENSE.txt  pyusb-1.0.0-0.11.b1.el7.noarch.rpm.html   [38;5;34msetup.py [0m   [38;5;27mutil [0m
[38;5;27mdocs [0m   PKG-INFO     README                                   [38;5;27mskins [0m      weewx.conf
[m ]0;root@weather:~/weewx-3.8.0 [root@weather weewx-3.8.0]# ls wget http://mirror.centos.org/centos/7/os/x86_64/Packages/pyusb-1.0.0-0.11.b1.el
l7.noarch.rpm [A [C [C [C [C [C [C [C [C [C [C [C [C [C [C [C [30Prpm -ivh pyusb-1.0.0-0.11.b1.el7.noarch.rpm.html 

[K [A [C [C [C [C [C [C [C [C [C [C [C [C [C [C [C [C [C [C [C [C [C [C [C [C [C [C [C [C [C [C [C [C [C [C [C [C [C [C [C [C [C [C [C [C [C [C [C [C [C [C [C [C [C [C [C [C [C [C [C [C [C [C [C [C [C [C [C [C [C [C [C [C [C [C [C [C [C [K [K [K [K [K [K
warning: pyusb-1.0.0-0.11.b1.el7.noarch.rpm: Header V3 RSA/SHA256 Signature, key ID f4a80eb5: NOKEY
error: Failed dependencies:
python(abi) = 2.7 is needed by pyusb-1.0.0-0.11.b1.el7.noarch
]0;root@weather:~/weewx-3.8.0 [root@weather weewx-3.8.0]#   [K quit
bash: quit: command not found
]0;root@weather:~/weewx-3.8.0 [root@weather weewx-3.8.0]# exit

Script done on Wed 02 May 2018 05:49:32 PM BST

On 28 April 2018 at 02:20, gjr80 <gjrod...@gmail.com> wrote:

--
You received this message because you are subscribed to a topic in the Google Groups "weewx-user" group.
To unsubscribe from this topic, visit https://groups.google.com/d/topic/weewx-user/8iVZDo-Qb4Y/unsubscribe.
To unsubscribe from this group and all its topics, send an email to weewx-user+unsubscribe@googlegroups.com.

vince

unread,
May 2, 2018, 2:14:59 PM5/2/18
to weewx-user
On Wednesday, May 2, 2018 at 9:57:59 AM UTC-7, Cycle London wrote:
OK, I officially give up.     

I got a CentOS 6.9 VM running, updated it, and snapshotted it before I started to play around.  The following is what I did AFTER I had downloaded the weewx tarball and I am inside the untarred directory.  I obviously didn't see that pyusb wasn't available, but my attempts to get the RPM and install it manually, well ... you'll see.


Methinks you give up too soon perhaps...

Both pyusb and pyserial are available if you use centos7

For centos6 you need to enable the EPEL repository to find stuff missing from centos6

yum install -y wget
rpm -ivh epel-release-6-8.noarch.rpm
yum install pyusb

And yes, I've wanted to toss a keyboard through the monitor more than once battling centos6 missing stuff in the normal repos.

That said, I'd recommend you use centos7 for longer term support and more modern stuff in there.  Really.

Cycle London

unread,
May 2, 2018, 2:16:37 PM5/2/18
to weewx...@googlegroups.com
Oh man, I started to try to get this thing working on 31 December.  Not giving up too soon, really.  

--
You received this message because you are subscribed to a topic in the Google Groups "weewx-user" group.
To unsubscribe from this topic, visit https://groups.google.com/d/topic/weewx-user/8iVZDo-Qb4Y/unsubscribe.
To unsubscribe from this group and all its topics, send an email to weewx-user+...@googlegroups.com.

vince

unread,
May 2, 2018, 2:21:58 PM5/2/18
to weewx-user
On Wednesday, May 2, 2018 at 11:16:37 AM UTC-7, Cycle London wrote:
Oh man, I started to try to get this thing working on 31 December.  Not giving up too soon, really.  

And pyserial isn't available in centos6, so you need to install python-pip then do 'pip install pyserial' there. Sigh.

Centos6 just drives me crazy.  Just go clean centos7 if you have to use centos.  It'll make your brain hurt less.
You can't fight off systemd anyway, that train left the station for all the mainstream distros....

 

Thomas Keffer

unread,
May 2, 2018, 3:32:08 PM5/2/18
to weewx-user
Why not just try Ubuntu 16.04?

-tk

--
You received this message because you are subscribed to the Google Groups "weewx-user" group.
To unsubscribe from this group and stop receiving emails from it, send an email to weewx-user+unsubscribe@googlegroups.com.

Cycle London

unread,
May 3, 2018, 2:50:57 AM5/3/18
to weewx...@googlegroups.com
I've just noticed my error.  I thought that Python 2.7 would not work.  But the weewx user guide says .. 

Python 2.5, 2.6, or 2.7 is required. Python 3 will not work. See special notes below for Python 2.5 and Python 2.6

Great!  

I've switched the Pi back on.  Seriously, restarting it every couple of days has to be easier than this s**t.

--
You received this message because you are subscribed to a topic in the Google Groups "weewx-user" group.
To unsubscribe from this topic, visit https://groups.google.com/d/topic/weewx-user/8iVZDo-Qb4Y/unsubscribe.
To unsubscribe from this group and all its topics, send an email to weewx-user+unsubscribe@googlegroups.com.

Andrew Milner

unread,
May 3, 2018, 4:08:15 AM5/3/18
to weewx-user
Use a new good quality SD card in the RPi.  Install a clock in the RPI.  Use a good quality power supply for the RPi with a good amp rating and you should be fine.  Shaving the corners on SD cards or power supplies leads to all sorts of issues and not having a clock installed leads to all sorts of start up issues.  The choice and route to take are your decisions ……  but you can tell how I feel!!!!

PS - I have 2 RPi3's, 3 Pizero's and one old rpi - none of which restart or crash and 4 are running 24/7 for weather station, website serving and irrigation purposes.  The 3 pizeros are in the garden (in shade) with shade temps up to 35/40C
To unsubscribe from this group and all its topics, send an email to weewx-user+...@googlegroups.com.

Cycle London

unread,
May 3, 2018, 10:38:46 AM5/3/18
to weewx...@googlegroups.com
I bought my Pi from the Pi Hut here in Britain.  It refused to boot with the SD card that they supplied, so I formatted my own and used that.   I _think_ it's a SanDisk.  That's what I usually use in my cameras, and I think it was one of those that I requisitioned. 

The thing is, I don't know what happned.  The Pi was up 24/7 for the first month, and then something went wrong.  We occasionally get modem/router outages - who doesn't? - and after one of them, the VMs here usually grab their IP back and carry on as before.  But the Pi didn't, and I eventually had to move it over to the other side of the room, plug it into our television and have a look.  It didn't have an IP, and no matter how much fiddling around with /etc/dhclient.conf or whatever it is (which usually shouldn't be concerned, as like all of my machines, it sits on a static IP), I gave in.  Before sending it back to the Pi Hut, I decided to try a fresh install, after backing up my /home/weewx.   It worked, and the machine got an IP again, and all was good.  

But from that day onwards, there seems to be a problem with the time on the Pi.  I tried various things.  First, I got one of my test VMs to be NTP server, but that didn't work.  Then I disabled NTP completely on the Pi and set the time manually, hoping that that would work.  Nope.  It still occasionally crashes, and when it comes back up, the date is anything from a couple of hours out, to several weeks.  

No idea what the hell is going on there, but I'm done trying to fix it.  I'm too old to spend the rest of my life tinkering with Linux (which answers Thomas's question as to why I don't install Ubuntu).  I earn my daily bread administering thousands of Linux, Solaris and HP-UX servers, and I have a specific 'skill set' upon which I have no desire to expand.  It puts food on the table and pays my half of the rent.  That's good enough for me, and I didn't buy the Pi and the weather station to tinker.  

To unsubscribe from this group and all its topics, send an email to weewx-user+unsubscribe@googlegroups.com.
Reply all
Reply to author
Forward
0 new messages