method you want to use. The following example uses
Saslauthd to verify the authentication request.
# Cd/usr/lib/sasl2
# Echo 'pwcheck _ method: saslauthd'>; Sendmail. conf
3. Test
OK. Now you can run saslauthd and perform the test.
# Cd/usr/local/sasl2/sbin
#./Saslauthd-a shadow
Use the shadow user and password for verification.
#./Testsaslauthd-u userid-p password
0: OK "Success ."
If the preceding information is displayed, saslauthd is running properly. The testsaslauthd program is not compi
. decompress the code package tar-zxvf thrift-0.2.0-incubating.tar.gz
4. Copy thrift to the installation directory CP-r thrift0.2.0/usr/local/
5. CD/usr/local/thrift0.2.0 run the./Bootstrap. sh shell script in this directory. You may encounter these two errors in this step.
Error 1
[Root @ localhost thrift] #./Bootstrap. Sh -- enable-m4_pattern_allow
Libtoolize: You shocould Add the contents of './aclocal/libtool. M4' to 'aclocal.
cflow system. Parsing with this option may cause some misunderstandings.-U name (-- undefine = name) cancels the previous name Definition-L (-- print-level) prints the number of nested layers. The layers are printed at the end of the output line (if -- number or -- format = posix is used, the layers are enclosed in braces ).-T (-- tree) uses ASCII code to print and call the tree.-- Usage provides brief usage information.-V (-- verbose) prints all error messages in detail. The error information
each tool in sequence **** (2) modify configure. ac, m4, and Makefile. am ***The flowchart is as follows:The procedure is as follows:(1) the source code root directory calls the autoscan script to generate the configure. scan file, and rename the file to configure. ac (or configure. in, early use of the. in suffix)(2) modify [configure. ac] and use various M4 macros provided by autoconf to configure variou
Api Version: 20090626Zend Module Api No: 20090626Zend Extension Api No: 220090626Config. m4: 180: warning: AC_CACHE_VAL (PHP_APC_GCC_ATOMICS,...): suspicious cache-id, must contain _ cv _ to be cached.../../Lib/autoconf/general. m4: 1974: AC_CACHE_VAL is expanded from....../../Lib/autoconf/general. m4: 1994: AC_CACHE_CHECK is expanded from...Config.
the ext directory under the php Directory. if you only need a basic extension framework, execute the following command:
./Ext_skel -- extname = module_name
Module_name is the name of the extension module you can choose, for example, my_module. After the tool is executed, the directory named module_name of your choice is automatically created under the ext directory, which generates the relevant code. in the code, you only need to adjust the config. the three lines of comments in the
tool that can help you build an empty php extension, then you can add the corresponding code to it to complete your function expansion. Next we will introduce how to use this tool.
First, transfer your directory to the ext directory under the php Directory. if you only need a basic extension framework, execute the following command:
./Ext_skel -- extname = module_name
Module_name is the name of the extension module you can choose, for example, my_module. After the tool is executed, the dir
Copy codeThe Code is as follows:Yum-y install openssl/Usr/local/bin/is the php installation directory.Switch to the etx/openssl directory in the php installation directory.Cd/root/soft/php-5.2.8/ext/opensslCopy codeThe Code is as follows:/Usr/local/bin/phpize Cannot find config. m4.Make sure that you run '/usr/local/bin/phpize' in the top level source directory of the moduleCheck that the openssl directory contains config. w32 and config0.
If you do not need to re-compile PHP to add the openssl module for php, you can refer to it.
Yum-y install openssl
/Usr/local/bin/is the php installation directory.Switch to the etx/openssl directory in the php installation directory.Cd/root/soft/php-5.2.8/ext/openssl
/Usr/local/bin/phpize
Cannot find config. m4.Make sure that you run '/usr/local/bin/phpize' in the top level source directory of the moduleCheck that the openssl directory contains c
Title: n matrix multiplication, to find the least number of multiply operations and how to combineSuppose that matrix A is r1*r2 and matrix B is R2*R3, so m=a*b=r1*r2*r3. When multiple matrices are multiplied, the number of operations is different when the matrix is combined in different ways.Example: M=M1 * M2 * M3 * M4[5*20] [20*50] [50*1] [1*100]((m1*m2) *m3) *m4=5000+250+500=5750and M1* (m2* (M3*
command:
./Ext_skel -- extname = module_name
Module_name is the name of the extension module you can choose, for example, my_module. After the tool is executed, the directory named module_name of your choice is automatically created under the ext directory, which generates the relevant code. in the code, you only need to adjust the config. the three lines of comments in the m4 file can be used to compile php with the custom extension module normall
How to compile an independent PHP extension this article translated from the README.SELF-CONTAINED-EXTENSIONS in the PHP source code. The content marked as note is added by yourself. The content is a little old and cool, and I didn't talk about any in-depth content, but it can be used as a reference for getting started learning.
Independent PHP extensions can be distributed independently of the PHP source code. To create such an extension, you need to prepare two things:
Configuration file
macro once at the end of 'configure. in.
#
Ac_output
------------------------------------------------
Modify action:
1. Modify the parameters in ac_init: ac_init (main, 1.0, pgpxc@163.com)
2. Add the macro am_init_automake, which is an essential macro for automake. Similarly, the package is the name of the software suite to be generated, and the version is the version number.
3. Add the output file makefile after ac_output.
Modified results:
------------------------------------------------
#-*-
To use it in an autoscaling package:
-If you don't use automake, append M4/iconv. M4 to your aclocal. M4
File.
-If you do use automake, add M4/iconv. M4 to your M4 macro repository.
-Add to the link command line o
structure, and one uses the interface structure.
Figure 1: UML class diagram of the Demo code
The following code implements each user-defined data type, and I write the implementation very easily.
/* Base. Java */Public class base{Public String M1 (){Return "base. M1 ()";}Public String m2 (string S){Return "base. m2 (" + S + ")";}}/* Itype. Java */Interface itype{String m2 (string S );String m3 ();}/* Derived. Java */Public class derivedExtends BaseImplements itype{Public String M1 (
, we need to write two files: makefile. Am and configure. In.Makefile. am is a logical language without execution. The purpose is to simplify the compilation of makefile.Configure. In is executed sequentially, and all macros added in it are used for execution. The purpose is to detect the system.(For example, if you want to compile a C ++ program, you need to add the ac_prog_cxx macro. This macro will detect the G ++ compiler of the system and use this compiler to write the makefile .)Let's look
-defined Type. Each rectangle in an independent implementation (such as type orientation) represents a type. From the implementation method, four types Use the class structure, and one uses the interface structure.
Figure 1: UML class diagram of the Demo code
The following code implements each user-defined data type, and I write the implementation very easily.
/* Base. java */
Public class Base{Public String m1 (){Return Base. m1 ();}
Public String m2 (String s){Return Base. m2 (+ s + );}}
/* IT
The content source of this page is from Internet, which doesn't represent Alibaba Cloud's opinion;
products and services mentioned on that page don't have any relationship with Alibaba Cloud. If the
content of the page makes you feel confusing, please write us an email, we will handle the problem
within 5 days after receiving your email.
If you find any instances of plagiarism from the community, please send an email to:
info-contact@alibabacloud.com
and provide relevant evidence. A staff member will contact you within 5 working days.