sql >> Database >  >> RDS >> Mysql

Waar zoekt Ruby's have_header-methode naar header-bestanden?

Ik geloof dat ik een antwoord heb gevonden.

Het lijkt erop dat have_header kijkt naar het systeem inclusief pad. Als de relevante omgevingsvariabelen niet zijn ingesteld, zijn de standaard include-paden /usr/local/include en /usr/include .

Als je ze handmatig wilt instellen, doe je zoiets als:

export C_INCLUDE_PATH=/usr/include/mysql/

Dat is waar, zelfs als u een C++-programma compileert, als het headerbestand een C-bestand is. Als uw headerbestand daarentegen C++ is en niet C, doet u het volgende:

export CPLUS_INCLUDE_PATH=/usr/include/mysql

Natuurlijk heb je de tijdelijke oplossing gevonden, namelijk het opnemen van dir_config('mysql') in uw extconf.rb . Dat stelt u in staat om de --with-mysql-include optie en geef het pad handmatig op.

Hier is mijn bron:http://www.network-theory.co .uk/docs/gccintro/gccintro_23.html

En hier is een meer algemene versie van dezelfde vraag (met antwoorden):Hoe voeg je een standaard include-pad toe voor gcc in linux?




  1. dubbele vermeldingen in tabel verwijderen

  2. Aanroep naar ongedefinieerde methode Sluiting::query()

  3. voeg dagen en uren toe in het datum/tijd-veld en verkrijg de bijgewerkte datum/tijd in php met mysql

  4. Verbind MySQL-database vanaf Android