【vscode读linux源码】【微同城源码】【图片生成源码】gd源码包

时间:2024-11-30 18:39:19 来源:马报app源码 编辑:课表源码html

1.在windows下使用arm-gcc编译工程开发stm32/gd32
2.php-8.3.3 源码编译安装以及扩展 redis 源码、gd和 sodium安装
3.Rust 嵌入式开发 STM32 & RISC-V
4.软件测试管理神器之zentao(禅道)-Linux环境部署
5.CentOS 6.2编译安装Nginx1.0.14+MySQL5.5.22+PHP5.3.10步骤分享

gd源码包

在windows下使用arm-gcc编译工程开发stm32/gd32

       在进行Windows下使用arm-gcc编译工程开发STM/GD的源码操作时,需要准备并配置一些关键的源码工具和资源。首先,源码推荐下载并安装版本为“.2.Rel1”的源码arm-none-eabi工具链,该工具链包含了gcc、源码vscode读linux源码gdb等核心组件。源码安装时,源码确保在安装路径不变的源码前提下,选中“Add path to environment”选项,源码并在Windows环境变量中添加路径以实现gcc工具的源码调用。

       其次,源码MinGW-w也是源码重要工具,适用于和位Windows系统。源码下载相应的源码版本,将其解压并放置于C:\Program Files (x)目录下。同时,将mingw-make.exe复制一份,并重命名为make.exe,以便后续使用。

       STMCubeMX作为STM初始化代码生成器,对于开发过程具有辅助作用,但并非必需。安装过程中需要注意注册ST账号,完成注册后,可以利用该软件生成工程代码,简化开发工作。然而,如果计划使用标准库,则可选择不安装STMCubeMX。

       Visual Studio Code作为代码编辑器,提供了一流的微同城源码编程体验。虽然它不是编译工具,但在编写和调试代码时不可或缺。确保安装并配置好VSCode,以便进行更高效地编程。

       OpenOCD作为连接MCU、下载程序的工具,对于STM/GD开发至关重要。尽管官方提供了源代码,实际使用中通常会从指定的非官方库中下载已编译好的版本。安装时,将其放置于C:\Program Files (x)目录下,并添加至环境变量,确保bin文件夹路径正确配置。

       Cortex-debug作为VScode插件,可提供调试功能,虽然非必要,但强烈推荐使用,以提升开发效率和调试体验。

       示例工程通常可以通过Git拉取或直接下载获得。在实际操作中,确保正确设置工程目录及路径,以便后续编译和调试。

       在编写和理解代码时,关于例程的解释非常重要。例如,标准外设库与HAL库的选择取决于所用芯片,如STMFZG,推荐使用标准外设库以兼容更多芯片系列。若使用标准库,需注意printf重定向方式的差异,即使用_gcc提供的图片生成源码_write函数而非重定向fputc函数。

       关于Makefile的使用,详细解释见个人笔记和官方文档,重点在于理解gcc编译指令、Make的语法和使用方法。Makefile的正确配置对于自动化编译流程至关重要,确保编译过程顺利无阻。

       调试方法中,OpenOCD文件夹内的两个关键配置文件,如stlink-v2-1.cfg和stmf4x.cfg,对于连接MCU和下载程序至关重要。使用VScode中的cortex-debug插件进行调试时,需要正确配置这些文件的路径。若遇到“Info : Unable to match requested speed kHz, using kHz”的错误,可修改stmf4x.cfg文件中的“adapter speed ”为“adapter speed ”以解决。

       此外,对于GD的GNU汇编风格启动文件与链接脚本的理解,可以参考其他文章以获得更深入的解释和使用技巧。

php-8.3.3 源码编译安装以及扩展 redis 、gd和 sodium安装

       本文主要记录如何安装PHP 8.3.3版本及其扩展,包括Redis、GD、和Sodium。本教程适合寻求实现最新PHP技术的开发者。

       首先,使用阿里云购买配置为4c8G的Rocky Linux 9.3机器用于安装。

       开始安装前,进行系统版本的确认和软件包的更新。

       然后利用源码方式编译安装PHP 8.3.3版本。在此过程中,需先安装必要的依赖包。

       接着,阿里云源码创建www用户用于权限管理。

       下载并解压PHP 8.3.3的源码。

       运行configure预编译,可能遇到诸如“无法找到ldap.h”或“无法识别ldap库在/usr/lib”等问题,需排查这些依赖问题。

       通过访问pkgs.org网站搜索缺失的 oniguruma-devel 包进行安装。注意在搜索到的页面找到oniguruma-devel的安装入口,有时可能需要通过验证。

       正确安装依赖后,再次编译,进行make操作。完成编译后,创建php的软链接至系统中。

       优化PHP默认配置,并创建php-fpm进程管理脚本。

       下一步是安装PHP的扩展。例如,对于Redis、GD和Sodium的扩展。

       确保正确安装扩展后,进行验证,确保所有配置都正确实现。

       如果希望深入理解安装细节或遇到问题,可以查找更多相关教程或咨询社区成员。

       在本教程中,提供了一条基于源码的安装PHP 8.3.3及其扩展的方法,并且避免了一些常见的复杂安装步骤。此方法适合追求高效且全面掌握PHP配置与安装细节的开发者。

Rust 嵌入式开发 STM & RISC-V

       在嵌入式领域,Rust 的应用正逐渐受到关注。其官方标语“可靠且高效”以及吉祥物硬壳螃蟹,bt搜索源码暗示了Rust在安全和嵌入式应用中的潜力。Rust的早期编译器通过代理功能,能够编译出不同指令集的程序,这在后来与LLVM的集成后,使得在嵌入式开发领域更加便捷。LLVM的特性在于提供抽象的IR(中间表示),将源码翻译为IR,再生成不同指令集的程序,效率高且兼容不同平台。通过拥抱LLVM,Rust在嵌入式领域的发展潜力得到进一步释放。

       要开始在STM或GD上使用Rust开发,首先需要搭建Rust的开发环境。Rust的官方主页提供了详细的安装指南,整个过程相当简单。值得注意的是,在Windows下安装Rust时,可能会提示需要安装Visual Studio,但实际上,Rust本身已经集成了LLVM,可以直接编译,无需额外的编译器。当然,对于某些Rust组件的安装可能需要自行安装编译器,如cargo-binutils。安装好Rust环境后,重启控制台,应能运行rustup、rustc和cargo。

       Rust主要由编译器rustc、软件包管理器cargo、工具链管理器rustup组成。cargo能提供项目创建、编译、运行等便利功能。rustup则负责管理rust的工具链,如编译器、运行环境等,这对于使用Rust进行嵌入式开发尤为重要。通过rustup,用户可以安装所需的运行环境(Runtime)以适应不同指令集架构的设备。

       以STMF为例,使用Rust开发时,可以借助ssd crate进行驱动。首先下载源码,定义依赖,然后编译。目标开发板的硬件信息需要在配置文件中指定,以确保正确链接资源。为了适应目标MCU,可能需要预编译的运行环境。编译完成后,使用objcopy生成适用于开发板的bin文件,最后使用st-link或其他工具将bin文件上传到开发板。

       在RISC-V平台上进行Rust开发时,同样需要定义运行环境并进行编译。流程与STM类似,但目标是RISC-V架构的开发板,如Longan Naon。这里可能需要使用芯来科技的RISC-V GNU工具链。编译生成的bin文件可以使用dfu-utils工具上传到开发板。

       在开发过程中,可能会遇到连接过程使用了arm-gcc和riscv-gcc的问题。为解决此问题,Rust提供了cargo-binutils工具,可以利用LLVM的objcopy生成最终的二进制文件。通过更新或调整配置,使用cargo objcopy生成的bin文件现在可以正常运行,无需额外的gcc工具链。

软件测试管理神器之zentao(禅道)-Linux环境部署

       禅道,作为一款国产开源项目管理软件,集产品管理、项目管理、质量管理、文档管理、组织管理和事务管理于一体,专注于研发项目管理,提供全面覆盖研发项目管理的核心流程。其管理思想注重实效,功能完备丰富,操作简洁高效,界面美观大方,搜索功能强大,统计报表丰富多样,软件架构合理,扩展灵活,并具有完善的API可以调用。

       在Linux环境下搭建禅道系统,对于测试工程师来说是必备技能。以下是搭建流程,帮助您轻松上手。

       一、运行环境说明

       推荐环境为 CentOS7 + Apache + PHP(7.0/7.1/7.2版本)+ MySQL(5.5/5.6版本)/mariadb + zantaopms(.4.1/8.9.1)组合。确保PHP运行环境加载了pdo, pdo_mysql, json, filter, openssl, mbstring, zlib, curl, gd, iconv模块。

       二、安装Apache服务

       包括安装并开启Apache服务,配置Apache运维命令,关闭防火墙和SELINUX,以及验证Apache服务运行状态。使用ifconfig查看IP地址,通过浏览器访问服务器IP地址来确认Apache运行成功。

       三、安装PHP7.2版本

       更新系统软件包,移除默认的PHP5版本,挂载PHP7的yum源,安装PHP7.2版本及其拓展插件。创建phpinfo文件,测试PHP与Apache服务。

       四、安装mariadb数据库

       安装并开启mariadb服务,重置数据库root账号密码,验证数据库安装成功。建议在此阶段给虚拟机做个快照备份。

       五、安装禅道软件

       下载禅道软件源码包,解压并修改Apache访问路径。重启系统和apache服务,开始安装禅道。通过宿主机浏览器访问禅道登录界面。

       六、安装ioncube loader扩展插件(专业版)

       解决禅道专业版核心代码加密问题,下载并安装ioncube loader扩展,按照安装向导进行配置,重启Apache服务,检查ioncube是否安装成功。再次访问禅道首页,使用注册的用户名和密码登录,完成禅道系统安装。

       至此,禅道系统已成功安装,可以正常使用。如需使用docker部署禅道系统,可查阅相关文章。欢迎关注作者,如觉得文章有价值,不妨给个赞同、喜欢、收藏。

CentOS 6.2编译安装Nginx1.0.+MySQL5.5.+PHP5.3.步骤分享

       说明:

       操作系统:CentOS 6.2 位

           准备篇:

           一、配置好IP、DNS 、网关,确保使用远程连接工具能够连接服务器

           二、配置防火墙,开启端口、端口

           vi /etc/sysconfig/iptables

           -A INPUT -m state --state NEW -m tcp -p tcp --dport -j ACCEPT(允许端口通过防火墙)

           -A INPUT -m state --state NEW -m tcp -p tcp --dport -j ACCEPT(允许端口通过防火墙)

           特别提示:很多网友把这两条规则添加到防火墙配置的最后一行,导致防火墙启动失败,正确的应该是添加到默认的端口这条规则的下面

           添加好之后防火墙规则如下所示:

           #########################################################

           # Firewall configuration written by system-config-firewall

           # Manual customization of this file is not recommended.

           *filter

           :INPUT ACCEPT [0:0]

           :FORWARD ACCEPT [0:0]

           :OUTPUT ACCEPT [0:0]

           -A INPUT -m state --state ESTABLISHED,RELATED -j ACCEPT

           -A INPUT -p icmp -j ACCEPT

           -A INPUT -i lo -j ACCEPT

           -A INPUT -m state --state NEW -m tcp -p tcp --dport -j ACCEPT

           -A INPUT -m state --state NEW -m tcp -p tcp --dport -j ACCEPT

           -A INPUT -m state --state NEW -m tcp -p tcp --dport -j ACCEPT

           -A INPUT -j REJECT --reject-with icmp-host-prohibited

           -A FORWARD -j REJECT --reject-with icmp-host-prohibited

           COMMIT

           #########################################################

           /etc/init.d/iptables restart #最后重启防火墙使配置生效

           三、关闭SELINUX

           vi /etc/selinux/config

           #SELINUX=enforcing #注释掉

           #SELINUXTYPE=targeted #注释掉

           SELINUX=disabled #增加

           :wq 保存,关闭

           shutdown -r now #重启系统

           四 、系统约定

           软件源代码包存放位置:/usr/local/src

           源码包编译安装位置:/usr/local/软件名字

           五、下载软件包

           1、下载nginx(目前稳定版)

           .php.net/distributions/php-5.3..tar.gz

           5、下载cmake(MySQL编译工具)

           f /etc/my.cnf #拷贝配置文件(注意:如果/etc目录下面默认有一个my.cnf,直接覆盖即可)

           vi /etc/my.cnf #编辑配置文件,在 [mysqld] 部分增加

           datadir = /data/mysql #添加MySQL数据库路径

           ./scripts/mysql_install_db --user=mysql #生成mysql系统数据库

           cp ./support-files/mysql.server /etc/rc.d/init.d/mysqld #把Mysql加入系统启动

           chmod /etc/init.d/mysqld #增加执行权限

           chkconfig mysqld on #加入开机启动

           vi /etc/rc.d/init.d/mysqld #编辑

           basedir = /usr/local/mysql #MySQL程序安装路径

           datadir = /data/mysql #MySQl数据库存放目录

           service mysqld start #启动

           vi /etc/profile #把mysql服务加入系统环境变量:在最后添加下面这一行

           export PATH=$PATH:/usr/local/mysql/bin

           下面这两行把myslq的库文件链接到系统默认的位置,这样你在编译类似PHP等软件时可以不用指定mysql的库文件地址。

           ln -s /usr/local/mysql/lib/mysql /usr/lib/mysql

           ln -s /usr/local/mysql/include/mysql /usr/include/mysql

           shutdown -r now #需要重启系统,等待系统重新启动之后继续在终端命令行下面操作

           mysql_secure_installation #设置Mysql密码

           根据提示按Y 回车输入2次密码

           或者直接修改密码/usr/local/mysql/bin/mysqladmin -u root -p password "" #修改密码

           service mysqld restart #重启

           到此,mysql安装完成!

           五、安装 nginx

           groupadd www #添加www组

           useradd -g www www -s /bin/false #创建nginx运行账户www并加入到www组,不允许www用户直接登录系统cd /usr/local/src

           tar zxvf nginx-1.0..tar.gz

           cd nginx-1.0.

           ./configure --prefix=/usr/local/nginx --user=www --group=www --with-tl --enable-sockets --with-xmlrpc --enable-zip --enable-soap --without-pear --with-gettext --enable-session --with-mcrypt --with-curl #配置

           make #编译

           make install #安装

           cp php.ini-production /usr/local/php5/etc/php.ini #复制php配置文件到安装目录

           rm -rf /etc/php.ini #删除系统自带配置文件

           ln -s /usr/local/php5/etc/php.ini /etc/php.ini #添加软链接

           cp /usr/local/php5/etc/php-fpm.conf.default /usr/local/php5/etc/php-fpm.conf #拷贝模板文件为php-fpm配置文件

           vi /usr/local/php5/etc/php-fpm.conf #编辑

           user = www #设置php-fpm运行账号为www

           group = www #设置php-fpm运行组为www

           pid = run/php-fpm.pid #取消前面的分号

           设置 php-fpm开机启动

           cp /usr/local/src/php-5.3./sapi/fpm/init.d.php-fpm /etc/rc.d/init.d/php-fpm #拷贝php-fpm到启动目录

           chmod +x /etc/rc.d/init.d/php-fpm #添加执行权限

           chkconfig php-fpm on #设置开机启动

           vi /usr/local/php5/etc/php.ini #编辑配置文件

           找到:;open_basedir =

           修改为:open_basedir = .:/tmp/ #防止php木马跨站,重要!!

           找到:disable_functions =

           修改为:disable_functions = passthru,exec,system,chroot,scandir,chgrp,chown,shell_exec,proc_open,proc_get_status,ini_alter,ini_alter,ini_restore,dl,openlog,syslog,readlink,symlink,popepassthru,stream_socket_server,escapeshellcmd,dll,popen,disk_free_space,checkdnsrr,checkdnsrr,getservbyname,getservbyport,disk_total_space,posix_ctermid,posix_get_last_error,posix_getcwd, posix_getegid,posix_geteuid,posix_getgid, posix_getgrgid,posix_getgrnam,posix_getgroups,posix_getlogin,posix_getpgid,posix_getpgrp,posix_getpid, posix_getppid,posix_getpwnam,posix_getpwuid, posix_getrlimit, posix_getsid,posix_getuid,posix_isatty, posix_kill,posix_mkfifo,posix_setegid,posix_seteuid,posix_setgid, posix_setpgid,posix_setsid,posix_setuid,posix_strerror,posix_times,posix_ttyname,posix_uname

           #列出PHP可以禁用的函数,如果某些程序需要用到这个函数,可以删除,取消禁用。

           找到:;date.timezone =

           修改为:date.timezone = PRC #设置时区

           找到:expose_php = On

           修改为:expose_php = OFF #禁止显示php版本的信息

           找到:display_errors = On

           修改为:display_errors = OFF #关闭错误提示

           七、配置nginx支持php

           vi /usr/local/nginx/conf/nginx.conf

           修改/usr/local/nginx/conf/nginx.conf 配置文件,需做如下修改

           user www www; #首行user去掉注释,修改Nginx运行组为www www;必须与/usr/local/php5/etc/php-fpm.conf中的user,group配置相同,否则php运行出错

           index index.php index.html index.htm; #添加index.php

           # pass the PHP scripts to FastCGI server listening on .0.0.1:

           #

           location ~ /.php$ {

           root html;

           fastcgi_pass .0.0.1:;

           fastcgi_index index.php;

           fastcgi_param SCRIPT_FILENAME $document_root$fastcgi_script_name;

           include fastcgi_params;

           }

           #取消FastCGI server部分location的注释,并要注意fastcgi_param行的参数,改为$document_root$fastcgi_script_name,或者使用绝对路径

           /etc/init.d/nginx restart #重启nginx

           八、配置php支持Zend Guard

           安装Zend Guard

           cd /usr/local/src

           mkdir /usr/local/zend #建立Zend安装目录

           tar xvfz ZendGuardLoader-php-5.3-linux-glibc-i.tar.gz #解压安装文件

           cp ZendGuardLoader-php-5.3-linux-glibc-i/php-5.3.x/ZendGuardLoader.so /usr/local/zend/ #拷贝文件到安装目录

           vi /usr/local/php5/etc/php.ini #编辑文件

           在最后位置添加以下内容

           [Zend Guard]

           zend_extension=/usr/local/zend/ZendGuardLoader.so

           zend_loader.enable=1

           zend_loader.disable_licensing=0

           zend_loader.obfuscation_level_support=3

           zend_loader.license_path=

           测试篇

           cd /usr/local/nginx/html/ #进入nginx默认网站根目录

           rm -rf /usr/local/nginx/html/* #删除默认测试页

           vi index.php #新建index.php文件

           ?php

           phpinfo();

           ?

           :wq! #保存

           chown www.www /usr/local/nginx/html/ -R #设置目录所有者

           chmod /usr/local/nginx/html/ -R #设置目录权限

           shutdown -r now #重启

           在客户端浏览器输入服务器IP地址,可以看到相关的配置信息!

           service nginx restart #重启nginx

           service mysqld restart #重启mysql

           /usr/local/php5/sbin/php-fpm #启动php-fpm

           /etc/rc.d/init.d/php-fpm restart #重启php-fpm

           /etc/rc.d/init.d/php-fpm stop #停止php-fpm

           /etc/rc.d/init.d/php-fpm start #启动php-fpm

           #############################################################################

           备注:

           nginx默认站点目录是:/usr/local/nginx/html/

           权限设置:chown www.www /usr/local/nginx/html/ -R

           MySQL数据库目录是:/data/mysql

           权限设置:chown mysql.mysql -R /data/mysql

           到此,CentOS 6.2下 Nginx1.0.+MySQL5.5.+PHP5.3.+Zend Guard Loader基本运行环境搭建完成!

copyright © 2016 powered by 皮皮网   sitemap