Jump to content

Fehler beim Bricklet Plugin compilieren


Recommended Posts

Da ich ja das Difference Bricklet entwickle und mich gerade um das Plugin kümmere, habe ich versucht nach eurer Anleitung das Joystick Bricklet selber zu compilieren um sicher zu gehen das ich dann bei meinem Pugin alles richtig mache.

 

GCC für ARM ,Make und CMake habe ich installiert.

Auf die Versionsabragen in der CMD bekomme ich auch die Versionen angezeigt.

 

D:>make --version

GNU Make 3.81

Copyright © 2006  Free Software Foundation, Inc.

This is free software; see the source for copying conditions.

There is NO warranty; not even for MERCHANTABILITY or FITNESS FOR A

PARTICULAR PURPOSE.

 

This program built for i386-pc-mingw32

 

D:\>cmake --version

cmake version 3.1.3

 

CMake suite maintained and supported by Kitware (kitware.com/cmake).

 

D:\>arm-none-eabi-gcc --version

arm-none-eabi-gcc (Sourcery CodeBench Lite 2014.05-28) 4.8.3 20140320 (prerelease)

Copyright © 2013 Free Software Foundation, Inc.

This is free software; see the source for copying conditions.  There is NO

warranty; not even for MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.

 

Wenn ich jetzt das Makefile ausführe, also unter Windows7 das menerate_makefile.bat, bekomme ich folgende Fehlermeldung.

 

D:\Software\Tinkerforge\Software\joystick-bricklet-master\software>cmake -E chdir build/ cmake -G "MinGW Makefiles" -DCMAKE_TOOLCHAIN_FILE=toolchains/arm-none-eabi.cmake ../

CMake Error: CMake was unable to find a build program corresponding to "MinGW Makefiles".  CMAKE_MAKE_PROGRAM is not set.  You probably need to select a different build tool.-- Configuring incomplete, errors occurred!

 

CMake Error: CMake was unable to find a build program corresponding to "MinGW Makefiles".  CMAKE_MAKE_PROGRAM is not set.  You probably need to select a different build tool.

CMake Error: Error required internal CMake variable not set, cmake may be not be built correctly.

Missing variable is:

CMAKE_C_COMPILER_ENV_VAR

CMake Error: Could not find cmake module file: D:/Software/Tinkerforge/Software/joystick-bricklet-master/software/build/CMakeFiles/3.1.3/CMakeCCompiler.cmake

CMake Error: Error required internal CMake variable not set, cmake may be not be built correctly.

Missing variable is:

CMAKE_CXX_COMPILER_ENV_VAR

CMake Error: Could not find cmake module file: D:/Software/Tinkerforge/Software/joystick-bricklet-master/software/build/CMakeFiles/3.1.3/CMakeCXXCompiler.cmake

 

Was fehlt noch beziehunhsweise was mache ich noch falsch?

Link zu diesem Kommentar
Share on other sites

Das sieht aus als ob cmake make nicht finden könnte. Komisch, ich kann generate_makefile.bat aber hier erfolgreich ausführen selbst wenn make gar nicht installiert ist.

 

Ist dein cmake richtig installiert? Versuch mal cmake neu zu installieren, oder ein ältere Version wie cmake 2.8 zu installieren. Ich steht da ein bisschen auf dem Schlauch.

 

Edit: Okay, ich konnte den Fehler gerade reproduzieren. Unsere Anleitung passt sozusagen nicht zu generate_makefile.bat. Ein Fix ist in Arbeit.

Link zu diesem Kommentar
Share on other sites

Ändere mal bitte in generate_makefile.bat die cmake Zeile zu

 

cmake -E chdir build/ cmake -G "MinGW Makefiles" -DCMAKE_MAKE_PROGRAM:PATH=make.exe -DCMAKE_TOOLCHAIN_FILE=toolchains/arm-none-eabi.cmake ../

 

Und führe es erneut aus.

 

Da Problem ist, dass wir cmake vorgeben MinGW Makefiles zu erzeugen. Dafür will cmake aber mingw32-make finden. Nach Anleitung hast du aber nur GCC für ARM, cmake und make installiert, aber kein mingw32-make, was auch nicht notwendig ist. In meinem Test hier funktionierte das gerade, weil ich mingw32-make installiert habe.

 

Damit cmake nicht nach mehr nach mingw32-make sucht gibt die abgeänderte Zeile jetzt mit

 

-DCMAKE_MAKE_PROGRAM:PATH=make.exe

 

vor wo/was (mingw32-)make ist. Damit sollte das jetzt auch bei dir funktionieren.

 

Wenn das bei dir funktioniert, werde ich das für alle Firmwares und Plugins abändern.

Link zu diesem Kommentar
Share on other sites

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...

×   Du hast formatierten Text eingefügt.   Formatierung jetzt entfernen

  Only 75 emoji are allowed.

×   Dein Link wurde automatisch eingebettet.   Einbetten rückgängig machen und als Link darstellen

×   Dein vorheriger Inhalt wurde wiederhergestellt.   Clear editor

×   Du kannst Bilder nicht direkt einfügen. Lade Bilder hoch oder lade sie von einer URL.

×
×
  • Neu erstellen...