Rumah pembangunan bahagian belakang tutorial php 在Windows上编译安装AMFEXT for PHP5.3

在Windows上编译安装AMFEXT for PHP5.3

Jun 13, 2016 pm 01:02 PM
build error php

在Windows下编译安装AMFEXT for PHP5.3
AMFEXT官方未提供PHP5.3版的dll文件,不得不自己动手编译,以下是编译小记:

1. 下载必要的软件.
1). PHP5.3 for Win32二进制和源代码各一份
2). VC6或以上IDE
3). Cygwin.
4). 两个必要的包
http://www.php.net/extra/bindlib_w32.zip
http://www.php.net/extra/win32build.zip
5). 下载amfext 0.9.2-dev版

2. 解压缩软件到适当目录
1). 解压缩php二进制代码到e:\php5.3.6目录(其实我们只感兴趣dev子目录下的php5ts.lib文件)
2). 解压缩php源代码到e:\php5.3.6-sources目录
3). 解压缩amfext 0.9.2到e:\php5.3.6-sources\ext\amfext目录下
4). 解压缩bindlib_w32.zip和win32build.zip到同样目录(如:c:\win32build)
设置路径set path=%path%;c:\win32build\bin

3. 编译amfext VC工程
1). 打开amfext.dsp工程文件
2). 设置工程
Project->Settings(Win32 Release)->Link 为:e:\php5.3.6\dev\php5ts.lib
Build->Set Active Project Configuration选中amftext - Win32 Release.
3). 编译amfext
由于amfext for php5.3有个bug,所以编译之前要修改amf.c

    //On line 1188, replace:  
    int deallocResult = (*struc)->refcount;  
    //with  
    int deallocResult = Z_REFCOUNT_PP(struc); 
    
    //On line 2674, replace:
    newval->refcount--;
    //with
    Z_DELREF_P(newval);
Salin selepas log masuk

现在按F7编译工程,提示
Cannot open include file: '../main/config.w32.h',提示找不到文件,到php源代码的字母main目录下一看,果然没有这个文件,要自己生成这个文件:
步骤1. 到PHP源代码根目录执行buildconf.bat
步骤2. 到PHP源代码根目录执行configure.bat(或者执行 cscript /nologo configure.js --with-php-build="../win32build" --without-libxml  --disable-odbc)
如果没有之前的set path=%path%;D:\win32build\bin会出现如下提示:
Checking for bison.exe ...
ERROR: bison is required

重新编译工程,报错。一大堆的php_stream_transport.h error
形如
..\..\main\streams/php_stream_transport.h(85) : error C2143: syntax error : missing ')' before '*'
..\..\main\streams/php_stream_transport.h(85) : error C2081: 'socklen_t' : name in formal parameter list illegal
Salin selepas log masuk

这是由于找不到宏报的语法错误。打开这个文件,添加
typedef int socklen_t;
Salin selepas log masuk

到文件头部。

重新编译工程,不出意外在php源代码ext子目录就可以看到php_amf.dll

1 楼 wanluoliang 2011-07-12  
非常感谢你的教程。。。。。。。。。。。。。。

2 楼 live711 2011-08-13  
你编译的dll能下载过来直接用吗?
Kenyataan Laman Web ini
Kandungan artikel ini disumbangkan secara sukarela oleh netizen, dan hak cipta adalah milik pengarang asal. Laman web ini tidak memikul tanggungjawab undang-undang yang sepadan. Jika anda menemui sebarang kandungan yang disyaki plagiarisme atau pelanggaran, sila hubungi admin@php.cn

Alat AI Hot

Undresser.AI Undress

Undresser.AI Undress

Apl berkuasa AI untuk mencipta foto bogel yang realistik

AI Clothes Remover

AI Clothes Remover

Alat AI dalam talian untuk mengeluarkan pakaian daripada foto.

Undress AI Tool

Undress AI Tool

Gambar buka pakaian secara percuma

Clothoff.io

Clothoff.io

Penyingkiran pakaian AI

AI Hentai Generator

AI Hentai Generator

Menjana ai hentai secara percuma.

Artikel Panas

R.E.P.O. Kristal tenaga dijelaskan dan apa yang mereka lakukan (kristal kuning)
2 minggu yang lalu By 尊渡假赌尊渡假赌尊渡假赌
Repo: Cara menghidupkan semula rakan sepasukan
1 bulan yang lalu By 尊渡假赌尊渡假赌尊渡假赌
Hello Kitty Island Adventure: Cara mendapatkan biji gergasi
4 minggu yang lalu By 尊渡假赌尊渡假赌尊渡假赌

Alat panas

Notepad++7.3.1

Notepad++7.3.1

Editor kod yang mudah digunakan dan percuma

SublimeText3 versi Cina

SublimeText3 versi Cina

Versi Cina, sangat mudah digunakan

Hantar Studio 13.0.1

Hantar Studio 13.0.1

Persekitaran pembangunan bersepadu PHP yang berkuasa

Dreamweaver CS6

Dreamweaver CS6

Alat pembangunan web visual

SublimeText3 versi Mac

SublimeText3 versi Mac

Perisian penyuntingan kod peringkat Tuhan (SublimeText3)

Konfigurasi Projek CakePHP Konfigurasi Projek CakePHP Sep 10, 2024 pm 05:25 PM

Dalam bab ini, kita akan memahami Pembolehubah Persekitaran, Konfigurasi Umum, Konfigurasi Pangkalan Data dan Konfigurasi E-mel dalam CakePHP.

Panduan Pemasangan dan Naik Taraf PHP 8.4 untuk Ubuntu dan Debian Panduan Pemasangan dan Naik Taraf PHP 8.4 untuk Ubuntu dan Debian Dec 24, 2024 pm 04:42 PM

PHP 8.4 membawa beberapa ciri baharu, peningkatan keselamatan dan peningkatan prestasi dengan jumlah penamatan dan penyingkiran ciri yang sihat. Panduan ini menerangkan cara memasang PHP 8.4 atau naik taraf kepada PHP 8.4 pada Ubuntu, Debian, atau terbitan mereka

Tarikh dan Masa CakePHP Tarikh dan Masa CakePHP Sep 10, 2024 pm 05:27 PM

Untuk bekerja dengan tarikh dan masa dalam cakephp4, kami akan menggunakan kelas FrozenTime yang tersedia.

Muat naik Fail CakePHP Muat naik Fail CakePHP Sep 10, 2024 pm 05:27 PM

Untuk mengusahakan muat naik fail, kami akan menggunakan pembantu borang. Di sini, adalah contoh untuk muat naik fail.

Penghalaan CakePHP Penghalaan CakePHP Sep 10, 2024 pm 05:25 PM

Dalam bab ini, kita akan mempelajari topik berikut yang berkaitan dengan penghalaan ?

Bincangkan CakePHP Bincangkan CakePHP Sep 10, 2024 pm 05:28 PM

CakePHP ialah rangka kerja sumber terbuka untuk PHP. Ia bertujuan untuk menjadikan pembangunan, penggunaan dan penyelenggaraan aplikasi lebih mudah. CakePHP adalah berdasarkan seni bina seperti MVC yang berkuasa dan mudah difahami. Model, Pandangan dan Pengawal gu

Cara Menyediakan Kod Visual Studio (Kod VS) untuk Pembangunan PHP Cara Menyediakan Kod Visual Studio (Kod VS) untuk Pembangunan PHP Dec 20, 2024 am 11:31 AM

Kod Visual Studio, juga dikenali sebagai Kod VS, ialah editor kod sumber percuma — atau persekitaran pembangunan bersepadu (IDE) — tersedia untuk semua sistem pengendalian utama. Dengan koleksi sambungan yang besar untuk banyak bahasa pengaturcaraan, Kod VS boleh menjadi c

Pengesah Mencipta CakePHP Pengesah Mencipta CakePHP Sep 10, 2024 pm 05:26 PM

Pengesah boleh dibuat dengan menambah dua baris berikut dalam pengawal.

See all articles