2

autotools を使用して Google Test Framework をアプリに追加しようとしています。しかし、私にはいくつかの奇妙なエラーがありました。configure.ac:

AC_CHECK_HEADER([gtest/gtest.h], [AC_DEFINE([HAVE_GTEST_H], 1)])

しかし、ログで私が得た:

...
checking for limits.h... yes
checking gtest/gtest.h usability... no
checking gtest/gtest.h presence... no
checking for gtest/gtest.h... no

config.log:

configure:3276: checking gtest/gtest.h presence
configure:3276: gcc -E  conftest.c
In file included from conftest.c:19:0:
/usr/include/gtest/gtest.h:54:18: fatal error: limits: No such file or directory
compilation terminated.

両方のファイルが存在します。そして、私が知っているように、 /usr/include はデフォルトのインクルードです。

4

1 に答える 1

2

<limits>は C++ ヘッダーです。これはおそらくgtest.h、Google Test フレームワークが C++ で記述されていることを意味する C++ ヘッダーであることを示しています。ヘッダーの有用性を検出するには、C++ コンパイラを使用する必要があります。

autotools を使用してこれを回避する方法の詳細については、この回答を参照してください。

于 2012-12-20T21:19:52.653 に答える