Arduino IDEとStinoの間にいくつかのイライラする違いがあることに気づきました(主に特定のヘッダーファイルのインクルード周辺)。これらはおそらくいずれかまたは両方のパーティーでフォローアップが必要なバグですが、それまでの間、コードを編集せずに両方でコンパイルできるようにしたいと考えています。これは、コードを使用できないようにユーザーをロックしたくないためです。
すぐに利用できる(ツールチェーンやIDEを変更する必要がないなど)マクロを使用して、使用中のマクロを検出できますか?
たとえば、多くのライブラリには次のスニペットがあります。
#if ARDUINO >= 100
#include "Arduino.h"
#else
#include "WProgram.h"
#endif
しかし、StinoとArduinoの両方がこれを定義しています。
偽の名前に感謝-はい、それは良い計画のように思えます。Stinoのサポートだけが本当に必要だと思います。Eclipseが気になるほど頻繁に使用されるのを見たことはありません。
—
Cybergibbons 2014年
これは実際の解決策ではありませんが、コードの2つのバージョンを追加したり、どういうわけかコメントを付けたりすることもできます。次の行のコメントを外して、Stinoの他の行を削除します。| @Fake Arduino IDEでそのコードを使用するとき、それは問題でしょうか?
—
匿名ペンギン
Anonymous Penguinのコメントをさらに進めるために、コンパイラごとにポンドを定義することができます。そして、コードのデフォルトバージョンにはエラーがあり、ユーザーが使用しているコンパイラを指定する行にコメントしない限り実行されません。このようなもの
—
portforwardpodcast 2015年
#if !defined(STINO_COMPILER) #error please uncomment one of the compiler lines #endif
#define STINO_COMPILER
コンパイル時の定義に追加するようなものを取得するのはかなり簡単なはずです。リポジトリを管理する人は、そのような賢明なプルリクエストに対して非常にオープンであり、メインラインリポジトリに適切に配置されると、エンドユーザーの変更を必要としません。