共有ライブラリ(.so)のインポートは簡単なタスクではないようです。私はこれの指示に従おうとした役職、しかし、私は本当にそれを働かせることができません。図書館なしの建物RF24 取り組んでいます。
/usr/local/lib
で次のファイルセットを作成するビルド手順に従いましたフォルダ
librf24-bcm.so librf24.so librf24.so.1 librf24.so.1.3
librf24.so.1.3.1 node_modules python2.7 python3.5
私の.cppファイルには、このようなライブラリが含まれています
#include <RF24.h> // also tested "" instead of <>
俺のbinding.gyp こんな感じ
{
"targets": [
{
"includes": [ "../auto.gypi" ],
"sources": [ "../../src/myfile.cpp" ],
"include_dirs": [ "../../src" ],
"library_dirs": [ "/usr/local/lib" ],
"libraries": [ "-llibrf24" ],
"cflags!": [ "-fno-exceptions" ],
"cflags": [ "-std=c++11", "-fpermissive" ],
"cflags_cc!": [ "-fno-rtti" ]
}
],
"includes": [
"../auto-top.gypi"
]
}
コンパイルエラーは
myfile.cpp:2:18: fatal error: RF24.h: No such file or directory
また、ファイルの完全な名前を使用してみました図書館 セクション、例
librf24.so.1.3.1
、および
-l
なし国旗。また、library_dirs へのエントリーinclude_dirs。それでも同じエラー。
回答 1 件
この記事によると、私はそれを理解することができました。 RF24ビルドは、
/user/local/include/RF24
に対応するヘッダーファイルも作成しました。 。を更新しましたbinding.gyp に
少なくともアドオンはエラーや警告なしでコンパイルされています。