OpenSuse 12.1: ALL compilations fail after system update - Repo broken

Hi all!

after doing a system update yesterday, it's impossible to compile ANY sketches any more.
ALL compilations (even if a sketch doesn't even use the serial module) fail with

/usr/share/arduino-1.0.1/hardware/arduino/cores/arduino/HardwareSerial.cpp:91:41: error: attempt to use poisoned "SIG_USART0_RECV"
/usr/share/arduino-1.0.1/hardware/arduino/cores/arduino/HardwareSerial.cpp:101:15: error: attempt to use poisoned "SIG_USART0_RECV"

I did a lot of googling but not being a professional developer, none of the results make sense to me.

However, it is clear, that the OSBS repository is messed up, i.e. it obviously contains partially outdated versions and versions of packages which are not compatible to each other. Also, there's still only arduino 1.0.1 in the repo.

At the moment, the official Arduino OpenSuse repo is unusable.

Dear maintainers, please fix!

-SW

Have you tried using the Arduino website version rather than the repo version? I had trouble with the repo version from Ubuntu, but the Arduino site version works great.

Download and unpack into a local directory. Navigate to that directory and run the arduino shell script there. The arduino shell script must remain in that directory, so if you want an icon on your desktop, create a link and move the link to your desktop.

I don't know any website version. When you go to download and choose OpenSuse, you find the one-click-installer which sets up the repo in YaST.
The problem also isn't the IDE itself but wrong libraries in the repo and as far as I could find out, those libraries are only available in that repo.

I'm also not really inclined to start messing around in my system manually because those kinds of actions usually break more than they fix. OpenSuse has a functional software management system - why should I start bypassing it and risking system stability by manually messing around, rather than the Arduino team fixing their OFFICIAL OpenSuse repository?

When you go to download and choose OpenSuse, you find the one-click-installer which sets up the repo in YaST.
The problem also isn't the IDE itself but wrong libraries in the repo and as far as I could find out, those libraries are only available in that repo.

Not true. The Arduino version has its own libraries because of this trouble with Linux libraries. You can continue to struggle with the repo version, but that is not a problem here. You need to get OpenSuse to fix it, not Arduino. Good luck with that.

This is where I get my IDE.

I am talking about the official Arduino repo at OpenSuse Build Service as promoted on the Arduino website... Suse can't change anything there, only the repo-maintainer can...

Don't just say "not true" without knowing the repo in question! NONE of the libraries in that repo are available in OpenSuse stock! Especially not the avr-libc, which seems to be causing the trouble here after what I have found on Google. So, official Arduino repo, libraries which are only in this repo but not in OpenSuse stock... I would say, it's safe to assume that those ARE "Arduino's own libraries".
The repo-maintainer just screwed up and updated libraries in the repo without checking compatibility. That's a rookie-mistake and the maintainer needs to fix it now.

I am FOR SURE not going to start to install any libraries manually, bypassing YaST, without any compatibility verification for my system. That would also be a rookie-mistake...

Don't just say "not true" without knowing the repo in question! NONE of the libraries in that repo are available in OpenSuse stock! Especially not the avr-libc, which seems to be causing the trouble here after what I have found on Google.

OK. I have a bunch of alternatives to "not true", but most I wouldn't want to post here.

The avr-gcc and avr-libc are in the Arduino IDE release. It DOES NOT use the standard Linux libraries. It uses its own libraries. So you can update the avr-gcc and avr-libc in your Linux without affecting the avr-gcc and avr-libc included in the Arduino IDE.

How's that?

There is no avr-gcc in OpenSuse stock!
It's only in the Arduino repo.

Either you simply ignore what I'm writing or you simply don't know what you are talking about.

There are the official OpenSuse system repositories (aka "stock") which DO NOT contain arduino or avr-gcc.

And there is the official Arduino repo at the OpenSuse Build Service which contains the IDE and the libs, Arduino needs. This repo (the official Arduino repo) is broken. The libraries in THIS repo (the official Arduino repo) are incompatible with the Arduino IDE in THE SAME repo (the official Arduino repo).
Again, this is the official Arduino for OpenSuse repo which has NOTHING to do with Suse or "standard Linux libraries" (which is a nonsense expression, because there is no such thing as standard Linux libraries, because every distro has it's own flavours)!

Do you understand now?

Again, OpenSuse has an integrated software management system for easy installing and uninstalling.
There is an official Arduino repository.
So I don't see a point in risking to mess up my system by manually installing something that has not been compatibility-tested with my OS.

Especially not if there is an OFFICIAL SOFTWARE REPOSITORY for that software which is just broken at the moment and needs to be fixed by it's maintainer.

I'm working with Linux for 17+ years or so. Some 10 or so years ago, I had the same idealistic attitude that if something doesn't work, I'll try to fix it myself.
Well, nowadays I have a job, a family and other hobbies than trying to fix other people's faults myself.

Arduino is a business. It might be based on Open Source products, but it's still a business. The boards and especially the accessories, are without doubt a multi-million-dollar revenue.
So excuse me, but from a multi-million-dollar-business, I expect that if the maintainer of the official software repositories makes a rookie mistake and puts incompatible packages to the repo, this will be corrected ASAP and not I have to spent loads of times either manually installing untested software on my (production) system or otherwise finding workarounds.

There is no avr-gcc in OpenSuse stock!
It's only in the Arduino repo.

... and included with the Arduino website version, whether or not you have avr-gcc or avr-libc installed from your repo.

edit: Even if you have those installed from your repo, the Arduino website version does not use them.

So excuse me, but from a multi-million-dollar-business, I expect that if the maintainer of the official software repositories makes a rookie mistake and puts incompatible packages to the repo

Arduino did not put that modified and broken package in the OpenSuse repo, OpenSuse did. Complain to them. The official software repository for Arduino is the Arduino website. All others are unofficial.

SurferTim:
Arduino did not put that modified and broken package in the OpenSuse repo, OpenSuse did. Complain to them.

Like I said, you are either not reading what I write or you simply have no clue what you are talking about!
As I have written before, the Arduino repo has NOTHING to do with Suse (the company) or Opensuse (the distro project). It's a third-party-repository. The OpenSuse Build Service is just a service platform where third party packages can be built. The Arduino repo is NOT maintained by Suse! It is an official Arduino repository.

Like I said, you are either not reading what I write or you simply have no clue what you are talking about!

I am reading what you are writing and trying to help, but apparently I don't have a clue what I am talking about. Maybe someone else can help you.

Well, fortunately, I don't need help in the sense that Arduino is just a hobby (for now) and I don't depend on it. I have the luxury of being able to wait until the issue is fixed
I appreciate the attempt to help but it feels like you are trying to push your solution although I said that I don't wanna risk system integrity doing manual installation. Arduino I can live without a few days but my PC I need for work, hence no taking risks there.

So my post was more meant as a bug report - a notice to the repo-maintainers - than a call for help.
I could also always set up a VM with Windows to run Arduino in there - if it was just about getting it running :).