MacOS jenkins 若干问题 - housekeeper-software/tech GitHub Wiki

安装

brew install jenkins,以当前用户运行,用起来比较方便
不要通过安装包安装,否则有权限的问题需要解决

有个地方需要修改

在 jenkins 系统信息中可以看到 PATH 变量未必包含 /usr/local/bin,这样会带来巨大的问题。因为brew 的软链接都指向这里。
导致jenkins编译的时候找不到相应的工具,比如 autoreconf,cmake等。  
sudo vim /usr/local/Cellar/jenkins/2.348/homebrew.mxcl.jenkins.plist
添加:

<?xml version="1.0" encoding="UTF-8"?>
<!DOCTYPE plist PUBLIC "-//Apple//DTD PLIST 1.0//EN" "http://www.apple.com/DTDs/PropertyList-1.0.dtd">
<plist version="1.0">
<dict>
        <key>KeepAlive</key>
        <true/>
        <key>Label</key>
        <string>homebrew.mxcl.jenkins</string>
        <key>ProgramArguments</key>
        <array>
                <string>/usr/local/opt/openjdk@11/bin/java</string>
                <string>-Dmail.smtp.starttls.enable=true</string>
                <string>-jar</string>
                <string>/usr/local/opt/jenkins/libexec/jenkins.war</string>
                <string>--httpListenAddress=0.0.0.0</string>
                <string>--httpPort=8080</string>
        </array>
        <key>RunAtLoad</key>
        <true/>
        <key>StandardErrorPath</key>
        <string>/usr/local/var/log/jenkins/error.log</string>
        <key>StandardOutPath</key>
        <string>/usr/local/var/log/jenkins/output.log</string>

        <key>EnvironmentVariables</key>
        <dict>
                <key>PATH</key>
                <string>/usr/local/bin:/usr/bin:/bin:/usr/sbin:/sbin</string>
        </dict>
</dict>
</plist>

其中:
        <key>EnvironmentVariables</key>
        <dict>
                <key>PATH</key>
                <string>/usr/local/bin:/usr/bin:/bin:/usr/sbin:/sbin</string>
        </dict>
是添加进去的。可以 echo $PATH,然后将结果复制过去

ffmpeg 编译

ffmpeg arm编译 需要gas-preprocessor.pl
从这个地方下载 https://github.com/libav/gas-preprocessor
其他地方的版本比较老,可能不行,但上述仓库里的是可以的
sudo cp gas-preprocessor /usr/local/bin/gas-preprocessor
sudo chmod +x /usr/local/bin/gas-preprocessor
然后可以编译

需要安装的其他编译工具

brew install automake nasm subversion libtool pkg-config autoconf cmake yasm
⚠️ **GitHub.com Fallback** ⚠️