Jump to content
View in the app

A better way to browse. Learn more.

Tinkerunity

A full-screen app on your home screen with push notifications, badges and more.

To install this app on iOS and iPadOS
  1. Tap the Share icon in Safari
  2. Scroll the menu and tap Add to Home Screen.
  3. Tap Add in the top-right corner.
To install this app on Android
  1. Tap the 3-dot menu (⋮) in the top-right corner of the browser.
  2. Tap Add to Home screen or Install app.
  3. Confirm by tapping Install.

Featured Replies

Geschrieben

genau

Geschrieben

Sag mal für welche arm-Architektur brauchst Du denn das udev ?

Beim Raspberry sind entsprechende Pakete (armhf) vorhanden.

Dort kompiliert der brickd (bei mir) auch problemlos.

 

Geschrieben

ich arbeite auf einem Beagleboard. Ich weiss das es dafür auch schon ports von ubuntu etc. gibt. Jedoch habe ich ein eigenes Linux installiert nach der Anleitung von Embedded Linux from Scratch

 

@photron thanks, ich werde das ausprobieren

 

Geschrieben

also, ich habe die libusb-1.0 unter /mnt/clfs/cross-tools/lib und include/libusb-1.0

 

wie muss ich da LIBUSB_CFLAGS und LIBUSB_LDFLAGS und LIBUSB_LIBS anpassen?

 

Geschrieben

Entweder im Makefile die Variablen so setzen:

 

LIBUSB_CFLAGS := -I/mnt/clfs/cross-tools/include/libusb-1.0
LIBUSB_LDFLAGS := -L/mnt/clfs/cross-tools/lib
LIBUSB_LIBS := -lusb-1.0

 

oder make so aufrufen:

 

make WITH_LIBUDEV=no LIBUSB_CFLAGS=-I/mnt/clfs/cross-tools/include/libusb-1.0 LIBUSB_LDFLAGS=-L/mnt/clfs/cross-tools/lib LIBUSB_LIBS=-lusb-1.0

 

 

Geschrieben

kk, leider will nun die usblib nicht initialisieren...

Geschrieben

Also, die Bricks laufen ohne Probleme auf dem Beagleboart mit der Arch distribution.

 

Nur beim Compilen von meinem Programm musste ich beim g++ das Flag -fpermissive angeben.

 

Geschrieben

Nur beim Compilen von meinem Programm musste ich beim g++ das Flag -fpermissive angeben.

 

Welche Fehler hast du denn ohne -fpermissive bekommen? Waren das Fehler in den C/C++ Bindings? Dann hätte ich sie gerne gewusst um das verbessern zu können.

Geschrieben

Befehl:

g++ -pthread main.c defines.h ip_connection.h ip_connection.c bricklet_humidity.h bricklet_humidity.c bricklet_lcd_20x4.h bricklet_lcd_20x4.c bricklet_temperature.h bricklet_temperature.c -o test

 

Ausgabe:

ip_connection.c: In function ‘void* thread_wrapper(void*)’:
ip_connection.c:469:19: error: invalid conversion from ‘void*’ to ‘Thread*’ [-fpermissive]
bricklet_humidity.c: In function ‘void humidity_create(Humidity*, const char*, IPConnection*)’:
bricklet_humidity.c:241:60: error: invalid conversion from ‘void (*)(Humidity*, Packet*) {aka void (*)(Device_*, Packet*)}’ to ‘void*’ [-fpermissive]
bricklet_humidity.c:242:64: error: invalid conversion from ‘void (*)(Humidity*, Packet*) {aka void (*)(Device_*, Packet*)}’ to ‘void*’ [-fpermissive]
bricklet_humidity.c:243:68: error: invalid conversion from ‘void (*)(Humidity*, Packet*) {aka void (*)(Device_*, Packet*)}’ to ‘void*’ [-fpermissive]
bricklet_humidity.c:244:72: error: invalid conversion from ‘void (*)(Humidity*, Packet*) {aka void (*)(Device_*, Packet*)}’ to ‘void*’ [-fpermissive]
bricklet_lcd_20x4.c: In function ‘void lcd_20x4_create(LCD20x4*, const char*, IPConnection*)’:
bricklet_lcd_20x4.c:151:66: error: invalid conversion from ‘void (*)(LCD20x4*, Packet*) {aka void (*)(Device_*, Packet*)}’ to ‘void*’ [-fpermissive]
bricklet_lcd_20x4.c:152:67: error: invalid conversion from ‘void (*)(LCD20x4*, Packet*) {aka void (*)(Device_*, Packet*)}’ to ‘void*’ [-fpermissive]
bricklet_temperature.c: In function ‘void temperature_create(Temperature*, const char*, IPConnection*)’:
bricklet_temperature.c:155:69: error: invalid conversion from ‘void (*)(Temperature*, Packet*) {aka void (*)(Device_*, Packet*)}’ to ‘void*’ [-fpermissive]

 

Aber ich bin mir nicht ganz sicher, ob es wirklich an den Bindings liegt.

Join the conversation

You can post now and register later. If you have an account, sign in now to post with your account.

Gast
Reply to this topic...

Configure browser push notifications

Chrome (Android)
  1. Tap the lock icon next to the address bar.
  2. Tap Permissions → Notifications.
  3. Adjust your preference.
Chrome (Desktop)
  1. Click the padlock icon in the address bar.
  2. Select Site settings.
  3. Find Notifications and adjust your preference.