Zusätzliche Headerdateien etc. als Parameter bei GCC/make verwenden..?
-
Hallo zusammen
Ich versuche was zu kompilieren, allerdings scheint der Verweis aufgrund des neuen Raspbian "Buster" 10 auf mysql.h nicht mehr zu laufen:
root@localhost:~/GIT/PF_CPPP/indiv# make -w -j4 make: Verzeichnis „/root/GIT/PF_CPPP/indiv“ wird betreten make[1]: Verzeichnis „/root/GIT/PF_CPPP/indiv“ wird betreten make[2]: Verzeichnis „/root/GIT/PF_CPPP/indiv“ wird betreten make[2]: Verzeichnis „/root/GIT/PF_CPPP/indiv“ wird verlassen make[2]: Verzeichnis „/root/GIT/PF_CPPP/indiv“ wird betreten [ 66%] Building CXX object CMakeFiles/indiv.dir/root/GIT/PF_CPPP/include/indiv.cpp.o [ 66%] Building CXX object CMakeFiles/indiv.dir/main.cpp.o In file included from /root/GIT/PF_CPPP/include/indiv.cpp:1: /root/GIT/PF_CPPP/include/indiv.h:24:10: fatal error: mysql.h: Datei oder Verzeichnis nicht gefunden #include <mysql.h> ^~~~~~~~~ In file included from /root/GIT/PF_CPPP/indiv/main.cpp:1: /root/GIT/PF_CPPP/indiv/../include/indiv.h:24:10: fatal error: mysql.h: Datei oder Verzeichnis nicht gefunden #include <mysql.h> ^~~~~~~~~ compilation terminated. compilation terminated. make[2]: *** [CMakeFiles/indiv.dir/build.make:63: CMakeFiles/indiv.dir/root/GIT/PF_CPPP/include/indiv.cpp.o] Fehler 1 make[2]: *** Es wird auf noch nicht beendete Prozesse gewartet.... make[2]: *** [CMakeFiles/indiv.dir/build.make:76: CMakeFiles/indiv.dir/main.cpp.o] Fehler 1 make[2]: Verzeichnis „/root/GIT/PF_CPPP/indiv“ wird verlassen make[1]: *** [CMakeFiles/Makefile2:73: CMakeFiles/indiv.dir/all] Fehler 2 make[1]: Verzeichnis „/root/GIT/PF_CPPP/indiv“ wird verlassen make: *** [Makefile:84: all] Fehler 2 make: Verzeichnis „/root/GIT/PF_CPPP/indiv“ wird verlassen root@localhost:~/GIT/PF_CPPP/indiv#
...nun habe ich deswegen die entsprechenden lib...-Pakete installiert:
root@localhost:~/GIT/PF_CPPP/indiv# find / | grep mysql.h /usr/include/mariadb/mysql.h /usr/include/mariadb/server/mysql.h /usr/include/mariadb/server/private/probes_mysql.h root@localhost:~/GIT/PF_CPPP/indiv#
Wie kann ich nun mit "make" mit "CXXFLAGS" dieses Verzeichnis angeben? Was hier beschrieben wird, scheint nicht zu stimmen -> https://stackoverflow.com/questions/7561509/how-to-add-include-and-lib-paths-to-configure-make-cycle :
$ LDFLAGS="-L/home/me/local/lib" CFLAGS="-I/home/me/local/include" make
In meinem Fall konkret:
$ eatmydata -- make -w -j4 CXXFLAGS="-I/usr/include/mariadb"
...nur ergibt das leider wieder das gleiche Theater:
root@localhost:~/GIT/PF_CPPP/indiv# make -w -j4 CXXFLAGS="-I$/usr/include/mariadb" make: Verzeichnis „/root/GIT/PF_CPPP/indiv“ wird betreten make[1]: Verzeichnis „/root/GIT/PF_CPPP/indiv“ wird betreten make[2]: Verzeichnis „/root/GIT/PF_CPPP/indiv“ wird betreten make[2]: Verzeichnis „/root/GIT/PF_CPPP/indiv“ wird verlassen make[2]: Verzeichnis „/root/GIT/PF_CPPP/indiv“ wird betreten [ 66%] Building CXX object CMakeFiles/indiv.dir/root/GIT/PF_CPPP/include/indiv.cpp.o [ 66%] Building CXX object CMakeFiles/indiv.dir/main.cpp.o In file included from /root/GIT/PF_CPPP/include/indiv.cpp:1: /root/GIT/PF_CPPP/include/indiv.h:24:10: fatal error: mysql.h: Datei oder Verzeichnis nicht gefunden #include <mysql.h> ^~~~~~~~~ compilation terminated. In file included from /root/GIT/PF_CPPP/indiv/main.cpp:1: /root/GIT/PF_CPPP/indiv/../include/indiv.h:24:10: fatal error: mysql.h: Datei oder Verzeichnis nicht gefunden #include <mysql.h> ^~~~~~~~~ compilation terminated. make[2]: *** [CMakeFiles/indiv.dir/build.make:63: CMakeFiles/indiv.dir/root/GIT/PF_CPPP/include/indiv.cpp.o] Fehler 1 make[2]: *** Es wird auf noch nicht beendete Prozesse gewartet.... make[2]: *** [CMakeFiles/indiv.dir/build.make:76: CMakeFiles/indiv.dir/main.cpp.o] Fehler 1 make[2]: Verzeichnis „/root/GIT/PF_CPPP/indiv“ wird verlassen make[1]: *** [CMakeFiles/Makefile2:73: CMakeFiles/indiv.dir/all] Fehler 2 make[1]: Verzeichnis „/root/GIT/PF_CPPP/indiv“ wird verlassen make: *** [Makefile:84: all] Fehler 2 make: Verzeichnis „/root/GIT/PF_CPPP/indiv“ wird verlassen
Und "CXXFLAGS" nach "CPPFLAGS" oder "CFLAGS" zu ändern bringt leider auch nix - gleiches Problem!
Vielen Dank für die Feedbacks.
Grüsse, Jan
-
@xdev sagte in Zusätzliche Headerdateien etc. als Parameter bei GCC/make verwenden..?:
CXXFLAGS="-I$/usr/include/mariadb"
Warum ist da ein $ drin?
In /usr/include/mariadb gibt es auch eine mysql.h?
-
Vielen Dank, hat sich geklärt mit einem Softlink von /usr/include/mysql nach /usr/include/mariadb!
Gruss, Jan