我最近在带有 Pixel 的 Raspbian Jessie 的 Raspberry Pi 3 上使用了 Adafruit(此处)提供的 Neopixel 库。Adafruit 使用 Scons 脚本文件来管理构建:
征兵文件:
Import(['clean_envs'])
tools_env = clean_envs['userspace'].Clone()
# Build Library
lib_srcs = Split('''
mailbox.c
ws2811.c
pwm.c
dma.c
rpihw.c
''')
version_hdr = tools_env.Version('version')
ws2811_lib = tools_env.Library('libws2811', lib_srcs)
tools_env['LIBS'].append(ws2811_lib)
# Shared library (if required)
ws2811_slib = tools_env.SharedLibrary('libws2811', lib_srcs)
# Test Program
srcs = Split('''
main.c
''')
objs = []
for src in srcs:
objs.append(tools_env.Object(src))
test = tools_env.Program('test', objs + tools_env['LIBS'])
Default([test, ws2811_lib])
S构造文件:
import os
opts = Variables()
opts.Add(BoolVariable('V',
'Verbose build',
False))
platforms = [
[
'userspace', # Target Name
[ 'linux', 'version' ], # Scons tool (linux, avr, etc.)
{ # Special environment setup
'CPPPATH' : [
],
'LINKFLAGS' : [
],
},
],
]
clean_envs = {}
for platform, tool, flags in platforms:
env = Environment(
options = opts,
tools = tool,
toolpath = ['.'],
ENV = {'PATH' : os.environ['PATH']},
LIBS = [],
)
env.MergeFlags(flags)
clean_envs[platform] = env
Help(opts.GenerateHelpText(clean_envs))
Export(['clean_envs'])
SConscript('SConscript');
我的问题是我目前使用 gcc 来链接 WiringPi 库,我在编译期间使用“-lwiringPi”选项。
如何在我的 scons 脚本文件中添加到 WiringPi 的链接?
非常感谢您的帮助,祝您有美好的一天!
雨果。