Versuch die open Hcan Dienste zu kompilieren scheitert ??

71 views
Skip to first unread message

Manuel Oswald

unread,
Nov 13, 2017, 5:10:20 PM11/13/17
to openHCAN
Hallo 

Ich habe vor ca zwei Wochen mein PC neu aufgespielt ohne Problem mit Linux Ubuntu als 32bit system .

Heute habe ich versucht mit einem Neuen Rechner 64bit System unter ubuntu 17.04 die Hcan Dienste zu kompilieren und zum laufen zu bekommen ohne Erfolg .

Ich bekomme immer diese Meldung . 

make[3]: Verzeichnis „/home/manuel/openHCAN/libhcandata“ wird verlassen
cd check_hcan; test -d .depend || sudo echo "" > .depend; make all
make[3]: Verzeichnis „/home/manuel/openHCAN/check_hcan“ wird betreten
ln -sf libhcan++.so.2.0 libhcan++.so
cd ../libhcan++ && make
make[4]: Verzeichnis „/home/manuel/openHCAN/libhcan++“ wird betreten
make[4]: Für das Ziel „all“ ist nichts zu tun.
make[4]: Verzeichnis „/home/manuel/openHCAN/libhcan++“ wird verlassen
g++ -Wall -O2 -I. -I.. -I../libhcan++ -I../include -Werror   -c -o main.o main.cc
In file included from ../libhcan++/board_connection.h:6:0,
                 from main.cc:12:
../libhcan++/board_driver.h:76:15: error: ‘shared_ptr’ in namespace ‘std’ does not name a template type
  typedef std::shared_ptr<board_driver> board_driver_p;
               ^
In file included from main.cc:12:0:
../libhcan++/board_connection.h:36:4: error: ‘board_driver_p’ does not name a type
    board_driver_p m_driver;
    ^
../libhcan++/board_connection.h:49:4: error: ‘board_driver_p’ does not name a type
    board_driver_p &get_driver () { return m_driver; }
    ^
In file included from main.cc:14:0:
../libhcan++/driver_factory.h:29:4: error: ‘board_driver_p’ does not name a type
    board_driver_p make_driver (board_connection &bcon,
    ^
<eingebaut>: die Regel für Ziel „main.o“ scheiterte
make[3]: *** [main.o] Fehler 1
make[3]: Verzeichnis „/home/manuel/openHCAN/check_hcan“ wird verlassen
Makefile:74: die Regel für Ziel „cppDienste“ scheiterte
make[2]: *** [cppDienste] Fehler 2
make[2]: Verzeichnis „/home/manuel/openHCAN“ wird verlassen
Makefile:46: die Regel für Ziel „all“ scheiterte
make[1]: *** [all] Fehler 2
make[1]: Verzeichnis „/home/manuel/openHCAN“ wird verlassen
Makefile:25: die Regel für Ziel „alles“ scheiterte
make: *** [alles] Fehler 2
manuel@manuel-openhcan:~/openHCAN$

Kann mir da jemand Helfen ??

Warum habe ich es unter ubuntu 32bit komplett zum laufen bekommen und hir nicht ??

hcaningo

unread,
Nov 14, 2017, 12:14:31 PM11/14/17
to openHCAN
Hallo Manuel,
habe gerade noch einmal das aktuelle zip von github geladen und per make alles erstellen lassen. Habe kein Problem erkennen können. 

Das Vorgehen ist hier beschrieben: https://github.com/hcanIngo/openHCAN/wiki/entwicklungsumgebung_installieren

Habe allerdings nur Ubuntu 17.04 in der 32-Bit Version.

Viele Grüße,
Ingo

Manuel Oswald

unread,
Nov 15, 2017, 1:25:09 PM11/15/17
to openHCAN
Hallo Ingo 

Danke für deine Antwort .
Ich habe feststellen müssen das tatsächlich unter 32 bit das kompilieren funktioniert .
Nun habe ich feststellen müssen das das hcanhid nicht mehr Bestandteil der aktuellen Git Version ist .
Meine Frage :Wie kann ich dann eine Verbindung zu meinen Controllern aufbauen ??

Gibt es vielleicht neue Wege ,die mir noch nichts sagen ??

Ich habe Gott sei dank noch ein funktionierenden BananaPi .

Trotzdem würde ich gerne eine Desktop Version haben die auch für den Fall aller Fälle funktioniert .

Danke und Gruss   


hcaningo

unread,
Nov 15, 2017, 1:59:05 PM11/15/17
to openHCAN
Hallo Manuel,
Ersatz ist der hcansocketd (über socketCAN) z.B. per Bananapi.

Das USB-hcanhid brauche ich schon länger nicht mehr.

Viele Grüße,
Ingo

hcaningo

unread,
Nov 15, 2017, 4:06:44 PM11/15/17
to openHCAN
Hallo nochmal,
habe gerade den shared-Pointer-"Fehler" beseitigt, sodass du es auch noch mit Ubuntu 64-Bit testen könntest.

Viele Grüße,
Ingo

Manuel Oswald

unread,
Nov 18, 2017, 1:46:27 PM11/18/17
to openHCAN
hallo Ingo 

Danke für deine Hilfe .

Ich habe jetzt nochmals Ubuntu 16.04 LTE Version und 64 bit System aufgespielt .

Nun kann jetzt sagen das es funktioniert auch unter 64bit .

Kompilieren und den Telican Modus laufen einwandfrei,einzigstes Problem das ich habe das ich immer sudo davor schreiben muss .Ich denke es liegt zusammen mit dem Hi am Usb-Port und den Rechten unter Ubuntu .

Naja da ich auf Linux noch recht wacklig bin suche ich weiter im Netz .

Danke nochmals an Alle .



Martin Preinesberger

unread,
Dec 15, 2017, 4:16:53 PM12/15/17
to openHCAN
Hallo Manuel,
das mit dem sudo kann ich auch auf meinem Banana pi auch bestätigen.

Telican lässt sich nur per sudo starten. Was in soweit interessant ist als das ich auf dem banana pi immer als root arbeite (*hust*)
Wenn ich telican ohne sudo starte, sagt er irgendwann das er keine SRC Adresse bekommt. Daher scheint die Kommunikation mit hcanaddressed nicht zu klappen.
Wenn ich telican aber so starte: 'telican -s 513 -p 328' also die SRC Adresse so mitgeben und ihn die 328 anpingen lassen.
Tut er so als ob er was sendet, aber auf dem Bus sieht man nix ...

Früher ging das definiv ohne, auch daher glaube ich nicht das es bei dir am USB-Port bzw. dessen Zugreifbarkeit liegt.

Ich hab noch eine alte hcan ZIP (ohne open) gefunden. Die Kompiliere und installiere ich das WE mal. Mal sehen ob da das mit dem sudo auch ist/war


Gruß Martin

Am Samstag, 18. November 2017 19:46:27 UTC+1 schrieb Manuel Oswald:
[...]
einzigstes Problem das ich habe das ich immer sudo davor schreiben muss .Ich denke es liegt zusammen mit dem Hi am Usb-Port und den Rechten unter Ubuntu
[...]

Martin Preinesberger

unread,
Dec 19, 2017, 4:17:19 AM12/19/17
to openHCAN
Leider funktionierte das mit der alten Version nicht so reibungslog wie ich dachte, die lässt sich nicht kompilieren, wahrscheinlich eine Inkompatibilität mit der neuen Compiler Version ...
Aber ich bleibe da dran. mich nervt das sudo auch.

hcaningo

unread,
Dec 20, 2017, 2:35:34 PM12/20/17
to openHCAN
Hallo zusammen,
das mit dem sudo habe ich auf dem Bananapi mal überprüft: Ist auf dem Armbian-Bananapi nicht notwendig für die Ausführung des installierten telican.

Viele Grüße,
Ingo


Martin Preinesberger

unread,
Jan 1, 2018, 10:19:49 AM1/1/18
to openHCAN
Hallo zusammen,
ich hoffe alle sind gut ins neue Jahr gekommen.

Ich hab zufällig etwas bzgl. dem sudo raus gefunden.

Wenn ich telican mit -a 127.0.0.1 starte geht es auch ohne sudo.
Daher habe ich mal die Umgebungsvariable HCAN_ADDRESS gecheckt. Da steht bei mir 192.168.1.42 drin. Ich hatte das in der ARCH.inc nie geändert.
Telican nimmt zwar generell die 127.0.0.1, wenn es aber diese Umgebungsvariable gibt, wird die genommen.

so kann man die Variable prüfen:
echo $HCAND_ADDRESS

Nach dem ich die richtige IP in der ARCH.inc eingetragen, ein make all gemacht und mich neu angemeldet hatte, geht es auch ohne sudo.

Alternativ kann man auch die Umgebungsvariable direkt ändern:
nano ~/.bash_profile
nano ~/.xsessionrc
logout&login
in der ARCH.inc sollte man es natürlich trotzdem ändern. sonst wird es immer wieder überschrieben.


Gruß Martin

hcaningo

unread,
Jan 2, 2018, 5:14:54 AM1/2/18
to openHCAN
Hallo Martin,
dem ist noch eine ganze Kleinigkeit hinzuzufügen / zu korrigieren:

"make all" führt nicht zum Ziel. "make" ist an der Stelle korrekt.

Viele Grüße und danke für den sehr guten Beitrag!
Ingo

Martin Preinesberger

unread,
Jan 2, 2018, 5:10:54 PM1/2/18
to openHCAN
Hallo Ingo,
du hast natürlich recht. Ich wollte "make alles" schreiben.
Aber make ohne Parameter geht ja auch, da der erste Block ausgeführt wird.

Gruß Martin
Reply all
Reply to author
Forward
0 new messages