edorfaus / TEMPered

C library and program for reading the TEMPer family of thermometer and hygrometer devices.
http://edorfaus.wordpress.com/
BSD 2-Clause "Simplified" License
87 stars 50 forks source link

Can't build TEMPered #8

Open romanrm opened 12 years ago

romanrm commented 12 years ago

Hello,

I can't build TEMPered:

$ make mkdir -p build cd build && cmake .. CMake Error: The following variables are used in this project, but they are set to NOTFOUND. Please set them or make sure they are set and tested correctly in the CMake files: HIDAPI_LIB linked by target "hid-query" in directory /r/hdd/k/tmp/src/tempered/TEMPered/utils linked by target "tempered-exe" in directory /r/hdd/k/tmp/src/tempered/TEMPered/utils linked by target "enumerate" in directory /r/hdd/k/tmp/src/tempered/TEMPered/examples linked by target "read-all" in directory /r/hdd/k/tmp/src/tempered/TEMPered/examples linked by target "read-repeat" in directory /r/hdd/k/tmp/src/tempered/TEMPered/examples

-- Configuring incomplete, errors occurred! make: *\ [cmake] Error 1

The hidapi dir is as you recommended next to the TEMPered dir, and it seems to have been built fine there. This is my current directory structure:

$ find . . ./TEMPered ./TEMPered/examples ./TEMPered/examples/read-repeat.c ./TEMPered/examples/CMakeLists.txt ./TEMPered/examples/read-all.c ./TEMPered/examples/enumerate.c ./TEMPered/utils ./TEMPered/utils/hid-query.c ./TEMPered/utils/CMakeLists.txt ./TEMPered/utils/tempered.c ./TEMPered/Makefile ./TEMPered/DEVICES ./TEMPered/LICENSE ./TEMPered/README ./TEMPered/.gitignore ./TEMPered/default_c_flags.cmake ./TEMPered/build ./TEMPered/build/examples ./TEMPered/build/examples/CMakeFiles ./TEMPered/build/utils ./TEMPered/build/utils/CMakeFiles ./TEMPered/build/CMakeFiles ./TEMPered/build/CMakeFiles/CMakeOutput.log ./TEMPered/build/CMakeFiles/cmake.check_cache ./TEMPered/build/CMakeFiles/CMakeDetermineCompilerABI_C.bin ./TEMPered/build/CMakeFiles/CMakeSystem.cmake ./TEMPered/build/CMakeFiles/CompilerIdC ./TEMPered/build/CMakeFiles/CompilerIdC/CMakeCCompilerId.c ./TEMPered/build/CMakeFiles/CompilerIdC/a.out ./TEMPered/build/CMakeFiles/CMakeTmp ./TEMPered/build/CMakeFiles/CMakeCCompiler.cmake ./TEMPered/build/libtempered-util ./TEMPered/build/libtempered-util/CMakeFiles ./TEMPered/build/CMakeCache.txt ./TEMPered/build/libtempered ./TEMPered/build/libtempered/CMakeFiles ./TEMPered/libtempered-util ./TEMPered/libtempered-util/calibration.c ./TEMPered/libtempered-util/temp-scale.c ./TEMPered/libtempered-util/dew-point.c ./TEMPered/libtempered-util/tempered-util.h ./TEMPered/libtempered-util/CMakeLists.txt ./TEMPered/CMakeLists.txt ./TEMPered/.git ./TEMPered/.git/description ./TEMPered/.git/hooks ./TEMPered/.git/hooks/update.sample ./TEMPered/.git/hooks/pre-commit.sample ./TEMPered/.git/hooks/commit-msg.sample ./TEMPered/.git/hooks/pre-rebase.sample ./TEMPered/.git/hooks/prepare-commit-msg.sample ./TEMPered/.git/hooks/applypatch-msg.sample ./TEMPered/.git/hooks/post-update.sample ./TEMPered/.git/hooks/pre-applypatch.sample ./TEMPered/.git/objects ./TEMPered/.git/objects/pack ./TEMPered/.git/objects/pack/pack-e85a0944e3303375b720c7492d4ef98ddbd89553.pack ./TEMPered/.git/objects/pack/pack-e85a0944e3303375b720c7492d4ef98ddbd89553.idx ./TEMPered/.git/objects/info ./TEMPered/.git/config ./TEMPered/.git/branches ./TEMPered/.git/logs ./TEMPered/.git/logs/HEAD ./TEMPered/.git/logs/refs ./TEMPered/.git/logs/refs/heads ./TEMPered/.git/logs/refs/heads/master ./TEMPered/.git/logs/refs/remotes ./TEMPered/.git/logs/refs/remotes/origin ./TEMPered/.git/logs/refs/remotes/origin/HEAD ./TEMPered/.git/index ./TEMPered/.git/packed-refs ./TEMPered/.git/HEAD ./TEMPered/.git/refs ./TEMPered/.git/refs/heads ./TEMPered/.git/refs/heads/master ./TEMPered/.git/refs/remotes ./TEMPered/.git/refs/remotes/origin ./TEMPered/.git/refs/remotes/origin/HEAD ./TEMPered/.git/refs/tags ./TEMPered/.git/info ./TEMPered/.git/info/exclude ./TEMPered/libtempered ./TEMPered/libtempered/tempered-internal.h ./TEMPered/libtempered/core.c ./TEMPered/libtempered/temper_type.h ./TEMPered/libtempered/type_hid ./TEMPered/libtempered/type_hid/ntc.c ./TEMPered/libtempered/type_hid/ntc.h ./TEMPered/libtempered/type_hid/fm75.h ./TEMPered/libtempered/type_hid/sht1x.c ./TEMPered/libtempered/type_hid/fm75.c ./TEMPered/libtempered/type_hid/type-info.h ./TEMPered/libtempered/type_hid/common.c ./TEMPered/libtempered/type_hid/common.h ./TEMPered/libtempered/type_hid/sht1x.h ./TEMPered/libtempered/type_hid/internal.h ./TEMPered/libtempered/tempered.h ./TEMPered/libtempered/CMakeLists.txt ./TEMPered/libtempered/temper_type.c ./hidapi ./hidapi/ar-lib ./hidapi/Makefile ./hidapi/depcomp ./hidapi/ltmain.sh ./hidapi/udev ./hidapi/udev/99-hid.rules ./hidapi/HACKING.txt ./hidapi/hidtest ./hidapi/hidtest/Makefile ./hidapi/hidtest/hidtest.cpp ./hidapi/hidtest/.gitignore ./hidapi/hidtest/Makefile.am ./hidapi/hidtest/.deps ./hidapi/hidtest/.deps/hidtest.Po ./hidapi/hidtest/hidtest.o ./hidapi/hidtest/hidtest-libusb ./hidapi/hidtest/Makefile.in ./hidapi/hidtest/hidtest-hidraw ./hidapi/hidtest/.libs ./hidapi/hidtest/.libs/hidtest-libusb ./hidapi/hidtest/.libs/hidtest-hidraw ./hidapi/config.status ./hidapi/.gitignore ./hidapi/libusb ./hidapi/libusb/Makefile ./hidapi/libusb/Makefile-manual ./hidapi/libusb/hid.c ./hidapi/libusb/.gitignore ./hidapi/libusb/Makefile.am ./hidapi/libusb/hid.o ./hidapi/libusb/.deps ./hidapi/libusb/.deps/hid.Plo ./hidapi/libusb/Makefile.linux ./hidapi/libusb/libhidapi-libusb.la ./hidapi/libusb/Makefile.freebsd ./hidapi/libusb/Makefile.in ./hidapi/libusb/hid.lo ./hidapi/libusb/.libs ./hidapi/libusb/.libs/libhidapi-libusb.so.0.0.0 ./hidapi/libusb/.libs/libhidapi-libusb.so ./hidapi/libusb/.libs/hid.o ./hidapi/libusb/.libs/libhidapi-libusb.so.0 ./hidapi/libusb/.libs/libhidapi-libusb.la ./hidapi/libusb/.libs/libhidapi-libusb.a ./hidapi/libusb/.libs/libhidapi-libusb.lai ./hidapi/stamp-h1 ./hidapi/aclocal.m4 ./hidapi/README.txt ./hidapi/Makefile.am ./hidapi/pc ./hidapi/pc/hidapi-hidraw.pc ./hidapi/pc/.gitignore ./hidapi/pc/hidapi-libusb.pc ./hidapi/pc/hidapi.pc.in ./hidapi/pc/hidapi-hidraw.pc.in ./hidapi/pc/hidapi-libusb.pc.in ./hidapi/m4 ./hidapi/m4/.gitignore ./hidapi/m4/ltsugar.m4 ./hidapi/m4/ltversion.m4 ./hidapi/m4/lt~obsolete.m4 ./hidapi/m4/ltoptions.m4 ./hidapi/m4/libtool.m4 ./hidapi/m4/pkg.m4 ./hidapi/m4/ax_pthread.m4 ./hidapi/configure ./hidapi/LICENSE-bsd.txt ./hidapi/mac ./hidapi/mac/Makefile ./hidapi/mac/Makefile-manual ./hidapi/mac/hid.c ./hidapi/mac/.gitignore ./hidapi/mac/Makefile.am ./hidapi/mac/.deps ./hidapi/mac/.deps/hid.Plo ./hidapi/mac/Makefile.in ./hidapi/LICENSE-gpl3.txt ./hidapi/libtool ./hidapi/missing ./hidapi/AUTHORS.txt ./hidapi/config.h.in ./hidapi/config.sub ./hidapi/configure.ac ./hidapi/testgui ./hidapi/testgui/Makefile.mac ./hidapi/testgui/testgui.vcproj ./hidapi/testgui/Makefile ./hidapi/testgui/Makefile-manual ./hidapi/testgui/.gitignore ./hidapi/testgui/Makefile.am ./hidapi/testgui/.deps ./hidapi/testgui/.deps/test.Po ./hidapi/testgui/.deps/mac_support_cocoa.Po ./hidapi/testgui/start.sh ./hidapi/testgui/mac_support.h ./hidapi/testgui/Makefile.linux ./hidapi/testgui/TestGUI.app ./hidapi/testgui/TestGUI.app/Contents ./hidapi/testgui/TestGUI.app/Contents/Info.plist ./hidapi/testgui/TestGUI.app/Contents/Resources ./hidapi/testgui/TestGUI.app/Contents/Resources/Signal11.icns ./hidapi/testgui/TestGUI.app/Contents/Resources/English.lproj ./hidapi/testgui/TestGUI.app/Contents/Resources/English.lproj/InfoPlist.strings ./hidapi/testgui/TestGUI.app/Contents/PkgInfo ./hidapi/testgui/TestGUI.app/Contents/MacOS ./hidapi/testgui/testgui.exe ./hidapi/testgui/copy_to_bundle.sh ./hidapi/testgui/TestGUI.app.in ./hidapi/testgui/TestGUI.app.in/Contents ./hidapi/testgui/TestGUI.app.in/Contents/Info.plist ./hidapi/testgui/TestGUI.app.in/Contents/Resources ./hidapi/testgui/TestGUI.app.in/Contents/Resources/Signal11.icns ./hidapi/testgui/TestGUI.app.in/Contents/Resources/English.lproj ./hidapi/testgui/TestGUI.app.in/Contents/Resources/English.lproj/InfoPlist.strings ./hidapi/testgui/TestGUI.app.in/Contents/PkgInfo ./hidapi/testgui/mac_support_cocoa.m ./hidapi/testgui/Makefile.freebsd ./hidapi/testgui/testgui.sln ./hidapi/testgui/test.cpp ./hidapi/testgui/Makefile.in ./hidapi/testgui/mac_support.cpp ./hidapi/testgui/Makefile.mingw ./hidapi/config.log ./hidapi/autom4te.cache ./hidapi/autom4te.cache/requests ./hidapi/autom4te.cache/output.2 ./hidapi/autom4te.cache/traces.2 ./hidapi/autom4te.cache/output.1 ./hidapi/autom4te.cache/traces.1 ./hidapi/autom4te.cache/output.0 ./hidapi/autom4te.cache/traces.0 ./hidapi/bootstrap ./hidapi/config.guess ./hidapi/LICENSE-orig.txt ./hidapi/config.h ./hidapi/windows ./hidapi/windows/hidapi.vcproj ./hidapi/windows/Makefile ./hidapi/windows/Makefile-manual ./hidapi/windows/hid.c ./hidapi/windows/.gitignore ./hidapi/windows/hidapi.sln ./hidapi/windows/Makefile.am ./hidapi/windows/.deps ./hidapi/windows/.deps/hid.Plo ./hidapi/windows/hidtest.vcproj ./hidapi/windows/ddk_build ./hidapi/windows/ddk_build/.gitignore ./hidapi/windows/ddk_build/hidapi.def ./hidapi/windows/ddk_build/sources ./hidapi/windows/ddk_build/makefile ./hidapi/windows/Makefile.in ./hidapi/windows/Makefile.mingw ./hidapi/doxygen ./hidapi/doxygen/Doxyfile ./hidapi/install-sh ./hidapi/.git ./hidapi/.git/description ./hidapi/.git/hooks ./hidapi/.git/hooks/update.sample ./hidapi/.git/hooks/pre-commit.sample ./hidapi/.git/hooks/commit-msg.sample ./hidapi/.git/hooks/pre-rebase.sample ./hidapi/.git/hooks/prepare-commit-msg.sample ./hidapi/.git/hooks/applypatch-msg.sample ./hidapi/.git/hooks/post-update.sample ./hidapi/.git/hooks/pre-applypatch.sample ./hidapi/.git/objects ./hidapi/.git/objects/pack ./hidapi/.git/objects/pack/pack-22e3403be2b5477731d25d7885d2d67cfa625911.idx ./hidapi/.git/objects/pack/pack-22e3403be2b5477731d25d7885d2d67cfa625911.pack ./hidapi/.git/objects/info ./hidapi/.git/config ./hidapi/.git/branches ./hidapi/.git/logs ./hidapi/.git/logs/HEAD ./hidapi/.git/logs/refs ./hidapi/.git/logs/refs/heads ./hidapi/.git/logs/refs/heads/master ./hidapi/.git/logs/refs/remotes ./hidapi/.git/logs/refs/remotes/origin ./hidapi/.git/logs/refs/remotes/origin/HEAD ./hidapi/.git/index ./hidapi/.git/packed-refs ./hidapi/.git/HEAD ./hidapi/.git/refs ./hidapi/.git/refs/heads ./hidapi/.git/refs/heads/master ./hidapi/.git/refs/remotes ./hidapi/.git/refs/remotes/origin ./hidapi/.git/refs/remotes/origin/HEAD ./hidapi/.git/refs/tags ./hidapi/.git/info ./hidapi/.git/info/exclude ./hidapi/hidapi ./hidapi/hidapi/hidapi.h ./hidapi/Makefile.in ./hidapi/linux ./hidapi/linux/Makefile ./hidapi/linux/Makefile-manual ./hidapi/linux/hid.c ./hidapi/linux/libhidapi-hidraw.la ./hidapi/linux/.gitignore ./hidapi/linux/README.txt ./hidapi/linux/Makefile.am ./hidapi/linux/hid.o ./hidapi/linux/.deps ./hidapi/linux/.deps/hid.Plo ./hidapi/linux/Makefile.in ./hidapi/linux/hid.lo ./hidapi/linux/.libs ./hidapi/linux/.libs/libhidapi-hidraw.lai ./hidapi/linux/.libs/libhidapi-hidraw.la ./hidapi/linux/.libs/hid.o ./hidapi/linux/.libs/libhidapi-hidraw.so.0 ./hidapi/linux/.libs/libhidapi-hidraw.so.0.0.0 ./hidapi/linux/.libs/libhidapi-hidraw.a ./hidapi/linux/.libs/libhidapi-hidraw.so ./hidapi/.gitattributes ./hidapi/LICENSE.txt

What's am I missing?

edorfaus commented 12 years ago

Hmm, it seems HIDAPI has changed the build system they use, so that the library files end up in different locations than before.

I think it should work if you install HIDAPI onto your system before trying to build tempered, but if you'd prefer not to (or if that doesn't work), you could reconfigure CMake manually (kinda like running ./configure if we used autotools).

To do that, you cd to the build dir, then tell CMake where the HIDAPI lib files can be found (e.g. by running "cmake -i .." or one of the other frontends to CMake, or modifying the cache file appropriately and rerunning "cmake ..").

Depending on which variant of HIDAPI you want to use, and on whether you'd like to compile it in statically or link to the shared library, it looks to me (based on that file list) like you'd want to tell cmake to use one of these:

hidapi/linux/.libs/libhidapi-hidraw.so hidapi/linux/.libs/hid.o hidapi/libusb/.libs/libhidapi-libusb.so hidapi/libusb/.libs/hid.o