Newsgroups: php.internals Path: news.php.net Xref: news.php.net php.internals:62326 Return-Path: Mailing-List: contact internals-help@lists.php.net; run by ezmlm Delivered-To: mailing list internals@lists.php.net Received: (qmail 14698 invoked from network); 21 Aug 2012 00:19:57 -0000 Received: from unknown (HELO lists.php.net) (127.0.0.1) by localhost with SMTP; 21 Aug 2012 00:19:57 -0000 Authentication-Results: pb1.pair.com header.from=rasmus@lerdorf.com; sender-id=unknown Authentication-Results: pb1.pair.com smtp.mail=rasmus@lerdorf.com; spf=permerror; sender-id=unknown Received-SPF: error (pb1.pair.com: domain lerdorf.com from 209.85.220.170 cause and error) X-PHP-List-Original-Sender: rasmus@lerdorf.com X-Host-Fingerprint: 209.85.220.170 mail-vc0-f170.google.com Received: from [209.85.220.170] ([209.85.220.170:35513] helo=mail-vc0-f170.google.com) by pb1.pair.com (ecelerity 2.1.1.9-wez r(12769M)) with ESMTP id E6/94-28202-D24D2305 for ; Mon, 20 Aug 2012 20:19:57 -0400 Received: by vcbgb30 with SMTP id gb30so6431269vcb.29 for ; Mon, 20 Aug 2012 17:19:54 -0700 (PDT) X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=google.com; s=20120113; h=message-id:date:from:user-agent:mime-version:to:cc:subject :references:in-reply-to:x-enigmail-version:content-type :content-transfer-encoding:x-gm-message-state; bh=lA3tfKKfpggQ5TkkxvhTeLWtneLzUIvbLEs1kvVLmTM=; b=aGCKFWiWaVbOHTl+qEZ2Q/eikvKL2FE+QFHYxNVJ1LpONadmYr4hAg53QPMzVKaM9/ IjAwwE51LdSdthGU2ko4xA/3i4zY3t4WyNXje1FWWt9rNeBHjIcW2suFkhy3vr/ou5l4 wNLrYPuwozmW/k4vzTIaRX/Lq+ynbz73vJ5iNx0dtNr9WK1Y23+vmm8ZZLG6U2FjJuvC MZXYSI+cLz7XP21hxF0FQs/cIFqdF3pnZ6pMm5yYAsifJcXM2nGkR1FfeKldbyTjG9GW sE8RaqruAFowt9JDo0JTgbo5/YYGicMZQATm9L673yV47eYVBWvqw63qelBF74qNbb37 8n2w== Received: by 10.58.102.48 with SMTP id fl16mr12889766veb.41.1345508394703; Mon, 20 Aug 2012 17:19:54 -0700 (PDT) Received: from [192.168.2.140] (CPE00131063dcac-CM0011aec551ea.cpe.net.cable.rogers.com. [174.113.209.222]) by mx.google.com with ESMTPS id bh5sm6116676vdc.16.2012.08.20.17.19.52 (version=SSLv3 cipher=OTHER); Mon, 20 Aug 2012 17:19:53 -0700 (PDT) Message-ID: <5032D427.70705@lerdorf.com> Date: Mon, 20 Aug 2012 20:19:51 -0400 User-Agent: Mozilla/5.0 (X11; Linux x86_64; rv:14.0) Gecko/20120714 Thunderbird/14.0 MIME-Version: 1.0 To: Lester Caine CC: PHP internals References: <5032B197.9080502@lsces.co.uk> <5032BF77.6060108@lsces.co.uk> <5032C533.4070809@lerdorf.com> <5032D277.5050003@lsces.co.uk> In-Reply-To: <5032D277.5050003@lsces.co.uk> X-Enigmail-Version: 1.5a1pre Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 7bit X-Gm-Message-State: ALoCoQlvkuqLHvuX+O9qMtU4h7FjRxJp1DbGttDUKmFD5iB9FxAMz1znMjkv0JcwTg2wlNPey4Cj Subject: Re: [PHP-DEV] shared mysqlnd extension ... From: rasmus@lerdorf.com (Rasmus Lerdorf) On 08/20/2012 08:12 PM, Lester Caine wrote: > Rasmus Lerdorf wrote: >> On 08/20/2012 06:51 PM, Lester Caine wrote: >>> >Ferenc Kovacs wrote: >>>> >>why is this an internals question? >>> >Because no one answered on general:( >>> >But since the core code base does not compile it seems internal to me >>> >anyway. >> The bundled extensions are not designed to be built standalone using >> phpize as you have discovered. The core codebase builds perfectly using >> the procedure it was designed for. And you don't have to touch your core >> install. Just add the flags or build in a separate directory if you are >> worried and type make install-modules and it will install any shared >> modules from that build without touching anything else. Or you can >> simply copy the modules/*.so files you want to your extension_dir >> manually. > > Except that mysqlnd does not build as a shared module even when doing a > full build. mysqli is fine built either way, and a standalone build of > mysqlnd creates a module without any warnings, just not one that works, > but there seems to be no way to flag from a core build that mysqlnd > should be built shared? There is no mysqlnd.so file to copy over, and > only a stand alone build seems to have the relevant flag :( mysqlnd is not a standalone extension at all. It is infrastructure code that needs to be linked into your PHP in order for extensions to use it. Once you have that you can load shared mysql, mysqli and pdo_mysql extensions against it. And no, it won't affect other extensions that mysqlnd is there. But again, this is a question for php-install, not internals. This is pretty basic stuff. -Rasmus