8

LPCXpresso で LPC1769 のプロジェクトを作成しようとしています。私はCファイルを呼び出しています

#include <string.h>
int main()
{
    //some stuff
    strnlen(SomeString, someInt);
}

エラーが発生します:

Undefined reference to 'strnlen'

奇妙な部分は、strcpy、strncpy、またはその他の一般的な文字列関数に問題がないことです。

Cortex-M3 プロセッサ用にビルドしています 使用するコンパイラは次のとおりです: arm-none-eabi-gcc Eclipse では、MCU リンカー オプションにチェックを入れました: スタートアップまたはデフォルト ライブラリはありません Ubuntu で Eclipse を実行しています

strlen を使用するだけでこれをバイパスするのは簡単かもしれませんが、実際には strnlen を使用するライブラリを使用して問題に直面しており、ライブラリのソースを台無しにしたくありません。

4

4 に答える 4

1

-std=gnu++11同じ問題を追加すると、コンパイラフラグを使用すると解決することがわかりました。

于 2017-01-06T10:15:21.750 に答える
-1

代わりにこれを含める必要があります:

#include <string.h>

<>との違いは、システムの include フォルダー内のヘッダー ファイル""<>検索することです。""現在のディレクトリおよびその他のインクルード フォルダー内のヘッダー ファイルの検索は、-I directory

于 2015-05-13T00:20:12.680 に答える