6 berichten aan het bekijken - 1 tot 6 (van in totaal 6)
  • Q:
    Bijdrager
    drommel

    Compiling op de mac

    Hallo,

    Ik ben al een tijd bezig met het proberen om een PECL extentie te compilen in php maar het lukt me maar niet. Waarschijnlijk is het eenvoudig maar ik snap gewoon de uitleg niet en weet niet wat ik moet ingeven en waar.

    De uitleg is devolgende:

    This will result in the following directory:
    /your/phpsrcdir/ext/extname

    From here, force PHP to rebuild the configure script, and then build PHP as normal:

    $ cd /your/phpsrcdir
    $ rm configure
    $ ./buildconf –force
    $ ./configure –help
    $ ./configure –with-extname –enable-someotherext –with-foobar

    De volledige uitleg staat op: http://be2.php.net/manual/en/install.pecl.static.php

    Hopelijk kan iemand mij, een noob met de mac, begrijpbaar uitleggen hoe ik dit moet uitvoeren..

    groeten,
    ben
    $ make
    $ make install

    Bijdrager
    Ir.Bob

    Dat zijn commando’s die je op moet geven in de terminal. Daarnaast denk ik dat deze commando’s niet zonder meer gaan werken op de Mac. (tenzij je XCode of macports o.i.d. ge├»nstalleerd hebt) Ook het commando ./configure –with-extname –enable-someotherext –with-foobar zal een fout geven, want –enable-someothertext en –with-foobar zijn geen echte opties die ooit aan het configure-script gegeven worden.

    Bijdrager
    JaNiintendo

    Die commando’s werken (als het goed is) op elk UNIX-systeem. Heb je toevallig een pc met Linux draaiende?

    Bijdrager
    henkverhaar

    configure is over het algemeen een shell script, en draait dus op alle UNIX systemen, inclusief een Mac. De ./ aan het begin betekent dat het gaat om iets ‘executabels’ dat zich in de working directory bevindt en waar je systeem niet standaard van weet dat het executable is; op deze manier ‘dwing’ je het OS (het UNIX gedeelte ervan) om dit bestand uit te voeren. Het suggereert daarmee dat de scripts met de distro van PHP meegeleverd worden (dat klopt ook, meen ik mij te herinneren), en daarmee dat eea ‘automatisch’ zou moeten werken als deze commando’s zoals getoond in de Terminal, of liever een andere terminal emulator, gegeven worden. Wel zul je de ‘placeholders’ voor opties als –with-extname moeten wijzigen in echte, toepasselijke opties.

    Overigens is het heel wel mogelijk dat het configure script UNIX programma’s aanroept die je niet (standaard) op je Mac hebt staan; compilers bijvoorbeeld. Het is dus zeker aan te raden om voordat je dit soort dingen probeert eerst Xcode te installeren, dan heb je iig een C-compiler ter beschikking (gcc). Leuk is dat je vervolgens ook een fortran compiler kunt installeren (g77, g95, gfortran zijn maar drie mogelijke opties:-( )

    Bijdrager
    drommel

    Ok al bedankt voor de eerste vertaling van de code!

    Ik heb ondertussen nog wat zitten prullen en ik probeerde via PECL de extentie te installeren en dat heb ik via de terminal kunnen opstarten maar hij geeft telkens een fout waardoor hij het niet kan installeren.

    iMac-van-Ben-Elsen:bin benelsen$ ./pecl install oauth
    downloading oauth-1.1.0.tar …
    Starting to download oauth-1.1.0.tar (Unknown size)
    ………………done: 229,376 bytes
    6 source files, building
    running: phpize-5.3.1
    /Applications/XAMPP/xamppfiles/bin/phpize-5.3.1: line 60: grep: command not found
    /Applications/XAMPP/xamppfiles/bin/phpize-5.3.1: line 61: grep: command not found
    /Applications/XAMPP/xamppfiles/bin/phpize-5.3.1: line 62: grep: command not found
    Configuring for:
    PHP Api Version:
    Zend Module Api No:
    Zend Extension Api No:
    /Applications/XAMPP/xamppfiles/bin/phpize-5.3.1: line 144: mkdir: command not found
    /Applications/XAMPP/xamppfiles/bin/phpize-5.3.1: line 146: cp: command not found
    /Applications/XAMPP/xamppfiles/bin/phpize-5.3.1: line 147: cp: command not found
    /Applications/XAMPP/xamppfiles/bin/phpize-5.3.1: line 148: cat: command not found
    /Applications/XAMPP/xamppfiles/bin/phpize-5.3.1: line 198: touch: command not found
    /Applications/XAMPP/xamppfiles/bin/phpize-5.3.1: line 105: chmod: command not found
    /Applications/XAMPP/xamppfiles/bin/phpize-5.3.1: line 108: cat: command not found
    ERROR: `phpize’ failed

    weet iemand hier misschien een oplossing voor want ik denk als ik PECL aan de praat krijg, of phpize, dat het dan eenvoudiger zal zijn dan als ik de eerder beschreven manier moet gebruiken.

    groeten,
    Ben

    Bijdrager
    henkverhaar

    Ik weet zo niet wat er mis gaat, maar alle commando’s die genoemd worden zijn standaard UNIX commando’s die elke UNIX-doos ‘straight from the box’ zou moeten kennen/hebben. Het lijkt er dus op alsof er onjuiste PATHs gespecificeerd zijn, of niet de juiste bevoegdheden/permissions zijn.

    Wat gebeurt er als je in Terminal gewoon ‘grep’ intikt? in principe moet je dan iets zien als:

    Usage: grep [OPTION]… PATTERN [FILE]…
    Try `grep –help’ for more information.

    In dat geval is grep aanwezig en kan gevonden worden, en mag gedraaid worden.

    grep MOET aanwezig zijn (ik kan me niet voorstellen dat je een OS X installatie kan doen zonder het BSD subsystem), dus als je iets anders ziet is het waarschijnlijk een permissie-probleem?

    Je zou kunnen proberen om ./pecl install oauth onder sudo te draaien?

6 berichten aan het bekijken - 1 tot 6 (van in totaal 6)

Je moet ingelogd zijn om een reactie op dit onderwerp te kunnen geven.