sql >> Database teknologi >  >> RDS >> Mysql

app kan ikke linke til mysql-biblioteker (CentOS)

Du bør sætte det mest uafhængige bibliotek i slutningen af ​​kommandoen, så compileren kan finde symboler og definitioner korrekt:

c++ -L/usr/lib/x86_64-linux-gnu -o tom tom.o Block.o IPC.o \
  ConnectMxctl.o CI_Metadata.o Log.o \
  -lmysqlclient -lpthread -lz -lm -lrt -ldl 

Ved at gøre det på denne måde vil compileren fortsætte med at søge efter udefinerede symboler fra næste linkende filer. For eksempel hvis IPO.o har bruger symbol(type/klasse/struct/funktion osv.) defineret i CI_Metadata.o , kan compileren finde det, fordi du sætter CI_Metadata.o efter IPO.o . De fleste biblioteker er uafhængige, det er derfor, de er i slutningen af ​​kompilering/link-kommando.




  1. Vores mest populære database blogindlæg i 2017

  2. Responsindholdet skal være en streng eller et objekt, der implementerer __toString(), boolsk givet efter flytning til psql

  3. Java lagret procedure kalder i java program

  4. Symfony2:opretter fetch=EAGER en joinforbindelse?