Comments (14)
from openhcan.
Hallo @RealMerlin ,
dieses Detail habe ich natürlich unterschlagen, es war ein aktueller clone aus github von Montag.
Somit sollte es eigentlich die aktuelle Version gewesen sein.
Nutzt Du auch eine rpi mit dem aktuellen raspbian?
Grüße
from openhcan.
from openhcan.
Hallo Merlin,
vielen Dank dafür.
Was mich aber noch wundert ist sind die Meldungen des Compilers, entweder ist der in stretch verwendete sehr empfindlich oder diese Fehler müssten bei jedem auflaufen
In file included from ./devices/../../controllerboard/devices.h:14:0, from ./devices/zeitschaltuhr.c:20: ./devices/../../controllerboard/devices/multitaster.h:44:13: error: inline function âmultitaster_timer_handlerâ declared but never defined [-Werror] inline void multitaster_timer_handler(device_data_multitaster *p, uint8_t zyklus); ^ In file included from ./devices/../../controllerboard/devices.h:12:0, from ./devices/zeitschaltuhr.c:20: ./devices/../../controllerboard/devices/reedkontakt.h:24:13: error: inline function âreedkontakt_timer_handlerâ declared but never defined [-Werror] inline void reedkontakt_timer_handler(device_data_reedkontakt *p, uint8_t zyklus); ^ In file included from ./devices/../../controllerboard/devices.h:10:0, from ./devices/zeitschaltuhr.c:20: ./devices/../../controllerboard/devices/zentralheizungspumpe.h:57:13: error: inline function âzentralheizungspumpe_timer_handlerâ declared but never defined [-Werror] inline void zentralheizungspumpe_timer_handler(device_data_zentralheizungspumpe *p, uint8_t zyklus); ^ cc1: all warnings being treated as errors ./devices/helligkeitssensor.c:69:42: error: âgetADCvalue_invertedâ is static but used in inline function âhelligkeitssensor_timer_handlerâ which is not static [-Werror] addToFloatAvg(&(p->filterBrightness), getADCvalue_inverted()); ^ ./devices/helligkeitssensor.c:68:4: error: âsetADMUXâ is static but used in inline function âhelligkeitssensor_timer_handlerâ which is not static [-Werror] setADMUX(p->config.port); ^ cc1: all warnings being treated as errors
Das kann ich wie gesagt nur verhindern, in dem man Wno-error den cflags hinzfügt, vermutlich auch wenn man Werror entfernen würde.
Ich habe gerade das image nochmal komplett neu geschrieben und mich exakt an die Vorgaben für Ubuntu gehalten, mit dem gleichen Effekt.
Welche Compiler Version wird denn empfohlen?
Grüße
Andreas
from openhcan.
Hallo Andreas,
habe das openHCAN-master.zip von hier heruntergeladen, entpackt und dann in openHCAN-master ein make durchgeführt. Läuft. Anleitung findest du hier: https://github.com/hcanIngo/openHCAN/wiki/entwicklungsumgebung_installieren
Den zuletzt von mir verwendeten Compiler findest du hier: https://github.com/hcanIngo/openHCAN/blob/master/liesmich.txt
Wenn wir den Compilerschalter -Werror weglassen, dann werden sich im Laufe der Zeit immer mehr "warnings" einschleichen. Daher wäre das keine gute Idee.
Grüße,
Ingo
from openhcan.
... ein paar Stunden später ...
Mit dem Parameter -fgnu89-inline funktioniert es.
Die Erklärung hierzu findet man hier:
https://gcc.gnu.org/gcc-5/porting_to.html
Damit hören auch die Error Meldungen auf - wundert mich nur, warum die Meldung nicht jeder mit einem gcc Version < 6 in dieses Problem läuft.
Danke für die Hilfe.
Grüße
Andreas
from openhcan.
Hallo Andreas,
geht doch :)
Aber im Ernst: Dafür ist die getestete Compilerversion notiert. Und keiner von uns kann alles testen. Scheitert schon daran, das z. B. ich den Bananapi mit Armbian 5.34 (Debian 9 - Stretch) verwende: https://github.com/hcanIngo/openHCAN/wiki/bananapi-hi
Zusammenfassung: Bei folgenden Compilerversionen:
- avr-libc 2.0.0
- avr-gcc (GCC) 5.4.0
- cmake 3.7.2-1
- gcc (Raspbian 6.3.0-18+rpi1+deb9u1) 6.3.0 20170516
- clang version 4.0.1-10+rpi1~bpo9+1 (tags/RELEASE_401/final)
ist erst einmal folgender Compilerschalter nötig:
-fgnu89-inline
from openhcan.
Hallo Ingo,
Deine Anmerkung zu dem Hinweis auf die notierte Compilerversion verstehe ich nur anteilig, denn ich verwende ja genau die Compiler Version - zumindest die gcc Version welche hier notiert ist und in dem Hinweis zur Version fehlt m. E. der Hinweis auf -fgnu89-inline - oder habe ich das irgendwo übersehen?
Ich werde heute noch einmal ein neues Image vorbereiten und mit den Stretch (das aktuelle Rasbpian basiert auch auf Debian 9 - Stretch) Versionen einen Build testen. Wenn es nur der Parameter -fgnu89-inline ist wäre die Ergänzung in dem Hinweis, zumindest im Kontext zum Raspberry, hilfreich :)
Ich würde auch anbieten den Pages/Wiki Bereich um eine Seite zum Raspberry zu ergänzen.
Grüße
Andreas
from openhcan.
from openhcan.
Hallo Martin,
das klingt doch gut. Mal schauen, ob der alte Compiler damit auch zufrieden ist...
inline: Der Pre-Compiler versucht -falls möglich- den Code überall direkt ohne Funktionsaufruf einzusetzen. Führt zur Performance-Steigerung. Andererseits versucht der Pre-Compiler auch ohne inline bereits derartige Optimierungen.
extern: Die Funktion ist außerhalb dieser Datei aufrufbar.
@AndreasW79: Eine Anleitung für Raspberry ist eine schöne Erweiterung das Projekt.
Viele Grüße,
Ingo
from openhcan.
from openhcan.
Hey Martin,
sehr gut, dann ist es wohl damit geschafft.
Sorry, ich bin erst einmal raus: Habe dem Ubuntu-Update von Version 17.10 auf 18.04 zugestimmt. Nun bootet der PC nicht mehr :(
Viele Grüße,
Ingo
from openhcan.
from openhcan.
ok, prima Martin!
Bin nun auch auf Ubuntu 18.04. Somit kann ich 17.10 nicht mehr prüfen. Habe daher
https://github.com/hcanIngo/openHCAN/wiki/entwicklungsumgebung_installieren aktualisiert.
Viele Grüße,
Ingo
from openhcan.
Related Issues (11)
- hw_sheets_images
- Bild fuer C1416
- Bild RgbBand_ws2812b
- Host Interface Fehler HOT 3
- telican mit hcansocketd -> transportconnection error HOT 1
- images HOT 1
- Im Wiki: awk-Skripte (z.B. Kontrolle der UI-Conf...) HOT 1
- sheet_images
- ROLLADEN_POSITION_SET - STOP Befehl möglich? HOT 3
- Installation verbessern: openHCAN/tools/ im Hauptmakefile berücksichtigen
Recommend Projects
-
React
A declarative, efficient, and flexible JavaScript library for building user interfaces.
-
Vue.js
🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.
-
Typescript
TypeScript is a superset of JavaScript that compiles to clean JavaScript output.
-
TensorFlow
An Open Source Machine Learning Framework for Everyone
-
Django
The Web framework for perfectionists with deadlines.
-
Laravel
A PHP framework for web artisans
-
D3
Bring data to life with SVG, Canvas and HTML. 📊📈🎉
-
Recommend Topics
-
javascript
JavaScript (JS) is a lightweight interpreted programming language with first-class functions.
-
web
Some thing interesting about web. New door for the world.
-
server
A server is a program made to process requests and deliver data to clients.
-
Machine learning
Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.
-
Visualization
Some thing interesting about visualization, use data art
-
Game
Some thing interesting about game, make everyone happy.
Recommend Org
-
Facebook
We are working to build community through open source technology. NB: members must have two-factor auth.
-
Microsoft
Open source projects and samples from Microsoft.
-
Google
Google ❤️ Open Source for everyone.
-
Alibaba
Alibaba Open Source for everyone
-
D3
Data-Driven Documents codes.
-
Tencent
China tencent open source team.
from openhcan.