Category Archive 其他

编译错误“ undefined reference to ‘sqrt‘ ”解决方法

明明使用sqrt()函数时我们已经引用了头文件:#include <math.h>,编译器还是提示找不到对应的库函数。

原因分析:

包含了math.h头文件也报错,是因为gcc默认指定头文件对应的库文件中不包括math库,即math库不是gcc默认指定的库文件,编译时需要将gcc手动指定到math库。

解决方案:
我们分别从gcc编译,cmake文件、makefile中解决编译中出现的undefined reference to ‘sqrt‘问题。

gcc直接编译

gcc编译的时候可以直接加上-lm选项,-l为指定库,m为math库。例如将 tutorial.c编译成可执行文件Tutorial,则完整编译语句为:

gcc -o Tutorial tutorial.c -lm:

PR 做好的文件如何用其他视频作为背景,就是logo做成透明的

小白有问:做好的文件如何用其他视频作为背景,就是logo做成透明的,而不是黑色框框。。,

答:调节透明度只能全都透明,可以把片头放上面,然后去效果控件面板里找到不透明度的混合模式,改为滤色,黑色部分的背景就透明了,只剩下logo部分。

为啥我的PR没有椭圆工具,鼠标左键长按钢笔工具就出现了

如何在 WordPress 文章第一段文字后插入广告代码

大多数博客网站在正文上挂广告,一般都是放在标题上方,或标题下方,或文章尾部,或评论之前,当然也偶尔会看到有博主站长把广告放在文章内容里面,如第一段文字之后,或第 N 段文字之后。今天,本站就跟大家分享一下如何在 WordPress 文章第一段文字后插入广告代码,当然也可以是第 N 段文字之后插入。

PS:至于这种把广告放在正文的做法是否会影响用户体验或提高点击率,本站也不清楚,这个就需要大家自行探索了。

其实,在 WordPress 文章中实现插入广告的做法还是比较简单的,只需要将下面的代码添加到当前主题的 functions.php 文件即可

/**
* WordPress 在文章内容中间插入广告
*/
//在文章内容的第二段后面插入广告
add_filter( 'the_content', 'prefix_insert_post_ads' );
function prefix_insert_post_ads( $content ) {
$ad_code = '<div>添加你的广告代码</div>';
if ( is_single() && ! is_admin() ) {
// 修改 1 这个段落数
return prefix_insert_after_paragraph( $ad_code, 1, $content );
}
return $content;
}
// 插入广告所需的功能代码
function prefix_insert_after_paragraph( $insertion, $paragraph_id, $content ) {
$closing_p = '</p>';
$paragraphs = explode( $closing_p, $content );
foreach ($paragraphs as $index => $paragraph) {
if ( trim( $paragraph ) ) {
$paragraphs[$index] .= $closing_p;
}
if ( $paragraph_id == $index + 1 ) {
$paragraphs[$index] .= $insertion;
}
}
return implode( '', $paragraphs );
}

温馨提示:

1、添加好代码后记得按照代码中的注释修改广告代码和段落数哦。默认是在正文第一段后面添加广告位。

2、这些代码已经在本地测试过是无错有效的,请放心使用。

3、如果想要实现同时在内容之前、内容之后和指定的多个段落之后分别插入相同或不同的广告,建议使用插件实现。

Nginx 报错:Failed to start A high performance web server and a reverse proxy server.

报错
Failed to start A high performance web server and a reverse proxy server.

原因
之前卸载nginx时没卸载干净,导致此错误,执行以下指令清除干净后安装即可

解决
sudo apt-get remove nginx nginx-common
sudo apt-get purge nginx nginx-common
sudo apt-get autoremove
sudo apt-get remove nginx-full nginx-common

然后再进行安装即可

和府捞面

和府捞面 – 日漫风格,需要此效果的联系我。

yay 报错 response decoding failed: invalid character ‘<‘ looking for beginning of value;

yay 报错 response decoding failed: invalid character ‘<‘ looking for beginning of  value;

执行以下命令:

yay --aururl "https://aur.archlinux.org" --save

yay安装失败的解决方案

yay安装失败的解决方案

常规安装方法

$ git clone https://aur.archlinux.org/yay
$ cd yay
$ makepkg -si

通常情况执行完上面所示命令即可安装成功,但是经常会遇到网络错误的情况,主要原因有如下两点

  1. go语言的软件安装源被屏蔽
  2. github访问受限

所以解决思路要么采取科学上网软件,或者采取我以下所说的方法。

解决方案

1. go语言换源

本文采用Goproxy.cn源,官网有换源方法,这里也贴出来

  1. 换源
$ go env -w GO111MODULE=on
$ go env -w GOPROXY=https://goproxy.cn,direct
  1. 使更换的源生效
  • 临时生效
$ export GO111MODULE=on
$ export GOPROXY=https://goproxy.cn
  • 永久生效
$ echo "export GO111MODULE=on" >> ~/.profile
$ echo "export GOPROXY=https://goproxy.cn" >> ~/.profile
$ source ~/.profile

完成以上步骤以后,可以再次尝试

$ makepkg -si

若还存在网络问题可以继续往下看,修改hosts

2.修改hosts访问github

github hosts如下:

# GitHub Host Start
​
185.199.108.154              github.githubassets.com
140.82.112.22                central.github.com
185.199.108.133              desktop.githubusercontent.com
185.199.108.153              assets-cdn.github.com
185.199.108.133              camo.githubusercontent.com
185.199.108.133              github.map.fastly.net
199.232.69.194               github.global.ssl.fastly.net
140.82.114.3                 gist.github.com
185.199.108.153              github.io
140.82.113.3                 github.com
140.82.112.5                 api.github.com
185.199.108.133              raw.githubusercontent.com
185.199.108.133              user-images.githubusercontent.com
185.199.108.133              favicons.githubusercontent.com
185.199.108.133              avatars5.githubusercontent.com
185.199.108.133              avatars4.githubusercontent.com
185.199.108.133              avatars3.githubusercontent.com
185.199.108.133              avatars2.githubusercontent.com
185.199.108.133              avatars1.githubusercontent.com
185.199.108.133              avatars0.githubusercontent.com
185.199.108.133              avatars.githubusercontent.com
140.82.112.10                codeload.github.com
52.217.207.1                 github-cloud.s3.amazonaws.com
52.216.78.4                  github-com.s3.amazonaws.com
52.217.194.169               github-production-release-asset-2e65be.s3.amazonaws.com
52.216.131.131               github-production-user-asset-6210df.s3.amazonaws.com
52.216.28.204                github-production-repository-file-5c1aeb.s3.amazonaws.com
185.199.108.153              githubstatus.com
64.71.144.202                github.community
185.199.108.133              media.githubusercontent.com
​
# Please Star : https://github.com/ineo6/hosts
# Mirror Repo : https://gitee.com/ineo6/hosts
# Update at: 2021-12-01 08:39:41
​
# GitHub Host End
  1. 修改hosts
$ sudo vim /etc/hosts
  1. 将以上github host内容追加到/etc/hosts文件中
  2. 使更新的hosts立即生效
$ sudo systemctl restart nscd

在 Arch Linux 中安装 Yay

先决条件

打开终端并运行以下命令。出现提示时提供管理员密码。这些步骤需要 base-devel 包和 git 包进行编译和安装。

sudo pacman -S base-devel
sudo pacman -S git

安装 Yay

yay 包在 Arch 仓库中有两个版本,如下所示。

对于本指南,我使用了稳定版。现在,进入 /opt 目录并克隆 git 仓库。

cd /opt
sudo git clone https://aur.archlinux.org/yay.git

更改源目录的所有者。将 cc2 替换为你的用户名。

sudo chown -R cc2:users ./yay

如果你不知道用户或组,可以使用以下示例查找用户和组。

id cc2

进入目录并编译。

cd yay
makepkg -si

这样就完成了 Arch Linux 中 Yay 的安装。

Manjaro 如果 yay 使用了 aur 的清华源,出现报错解决方法

如果yay使用了aur的清华源,参考以下文章关于移除 AUR 镜像的通知

所以更换aur源即可:

yay –aururl “https://mirrors.aliyun.com/archlinuxcn” –save

yay –aururl “这里可以换你想用得源” –save

# 官方源
http://repo.archlinuxcn.org
# 163源
http://mirrors.163.com/archlinux-cn
# 中科大
https://mirrors.ustc.edu.cn/archlinuxcn
# 阿里
https://mirrors.aliyun.com/archlinuxcn

更换为中科大arch软件源:sudo vim /etc/pacman.conf

1、把下面代码放到文件的最后位置:

[archlinuxcn]

SigLevel = Optional TrustedOnly

# (下面得源任选一个)
# 官方源
Server = http://repo.archlinuxcn.org/$arch
# 163源
Server = http://mirrors.163.com/archlinux-cn/$arch
# 中科大
Server = https://mirrors.ustc.edu.cn/archlinuxcn/$arch
# 阿里
Server = https://mirrors.aliyun.com/archlinuxcn/$arch

2、然后更新软件源:

sudo pacman -Syy && sudo pacman -S archlinuxcn-keyring

安装yay

sudo pacman -S yay

#安装完成后再次更新
yay -Syyu && yay -Sys

/usr/bin/env: “python”: 没有那个文件或目录

/usr/bin/env: “python”: 没有那个文件或目录解决方案

创建一个链接符号到 python 命令:

sudo ln -s /usr/bin/python3 /usr/bin/python