По какой-то причине после загрузки библиотеки ATIDAQ C я не могу даже сделать свои примеры акций. Структура файла выглядит следующим образом:
├── ATIDAQ
│ ├── ascii.h
│ ├── asciitab.h
│ ├── dom.c
│ ├── dom.h
│ ├── events.c
│ ├── expatls.c
│ ├── ftconfig.c
│ ├── ftconfig.h
│ ├── ftrt.c
│ ├── ftrt.h
│ ├── ftsharedrt.h
│ ├── iasciitab.h
│ ├── latin1tab.h
│ ├── nametab.h
│ ├── node.c
│ ├── stack.c
│ ├── stack.h
│ ├── utf8tab.h
│ ├── xmldef.h
│ ├── xmlparse.c
│ ├── xmlparse.h
│ ├── xmlrole.c
│ ├── xmlrole.h
│ ├── xmltok.c
│ ├── xmltok.h
│ ├── xmltok_impl.c
│ ├── xmltok_impl.h
│ └── xmltok_ns.c
├── readme.txt
└── Samples
├── calinfo.c
├── ftconvert.c
└── makefile
Следующие файлы должны быть скомпилированы как часть вашего проекта: ftconfig.c ftrt.c dom.c expatls.c node.c stack.c xmlparse.c xmlrole.c xmltok.c
В дополнение к вышеуказанным файлам файлы "events.c", "xmltok_impl.c" и "xmltok_ns.c" также включены в эту библиотеку, но не предназначены для прямого компиляции, так как они "#include", d в другие файлы библиотеки.
Ни один из этих файлов не предназначен для изменения.
Но есть уже созданный make файл, который выглядит как таковой:
#makefile for ftconvert and calinfo
#use 'make ftconvert' to make ftconvert sample and 'make calinfo' to make calinfo
#uses gcc, needs modifications for other compilers.
object_compile = gcc -c
exe_compile = gcc -o
remove_command = rm
ftconvert: ftconvert.o ftconfig.o ftrt.o dom.o expatls.o node.o stack.o xmlparse.o xmlrole.o xmltok.o
$(exe_compile) ftconvert.exe ftconvert.o ftconfig.o ftrt.o dom.o expatls.o node.o stack.o xmlparse.o xmlrole.o xmltok.o
ftconvert.o: ftconvert.c ../atidaq/ftconfig.h
$(object_compile) ftconvert.c
ftconfig.o: ../atidaq/ftconfig.c ../atidaq/ftconfig.h
$(object_compile) ../atidaq/ftconfig.c
ftrt.o: ../atidaq/ftrt.c ../atidaq/ftrt.h ../atidaq/ftsharedrt.h
$(object_compile) ../atidaq/ftrt.c
dom.o: ../atidaq/dom.c
$(object_compile) ../atidaq/dom.c
expatls.o: ../atidaq/expatls.c
$(object_compile) ../atidaq/expatls.c
node.o: ../atidaq/node.c
$(object_compile) ../atidaq/node.c
stack.o: ../atidaq/stack.c
$(object_compile) ../atidaq/stack.c
xmlparse.o: ../atidaq/xmlparse.c
$(object_compile) ../atidaq/xmlparse.c
xmlrole.o: ../atidaq/xmlrole.c
$(object_compile) ../atidaq/xmlrole.c
xmltok.o: ../atidaq/xmltok.c
$(object_compile) ../atidaq/xmltok.c
calinfo: calinfo.o ftconfig.o ftrt.o dom.o expatls.o node.o stack.o xmlparse.o xmlrole.o xmltok.o
$(exe_compile) calinfo.exe calinfo.o ftconfig.o ftrt.o dom.o expatls.o node.o stack.o xmlparse.o xmlrole.o xmltok.o
calinfo.o: calinfo.c ../atidaq/ftconfig.h
$(object_compile) calinfo.c
clean:
$(remove_command) *.o *.exe
запуск команды: make ftconvert
дает ошибку:
gcc -c ftconvert.c
ftconvert.c:35:32: fatal error: ..\atidaq\ftconfig.h: No such file or directory
compilation terminated.
make: *** [ftconvert.o] Error 1
Не уверен, что мне здесь не хватает, или почему я не могу даже заставить пример на складе работать
Это проблема с именем каталога.
atidaq
- это не то же самое, что ATIDAQ
.
Переименуйте каталог или отредактируйте файл makefile.
Затем отправляйте жалобу людям, которые обеспечивают, чтобы их источник зависел от того, чтобы быть извлеченным на платформе, на которой нет имен файлов, чувствительных к регистру (например, Windows).
make: *** No rule to make target '../ATIDAQ/ftconfig.h', needed by 'ftconvert.o'. Stop.