我在ubuntu 18上使用go版本go版本“go1.14.4 linux / amd64”。该代码不是我编写的,但我认为它可以与比当前版本早几年的go版本一起使用。当我尝试构建时,出现此错误。有什么想法我需要解决吗?
go build *.go
go build command-line-arguments: invalid flag in #cgo LDFLAGS: - I/home/me/myProject/lib
我认为这是我的go文件的相关位:package main
/*
#cgo LDFLAGS: -v -I${SRCDIR}/lib -lplaintext
#cgo CFLAGS: -I${SRCDIR}/include -I${SRCDIR}/lib
#include <stdlib.h>
#include "plaintext.h"
*/
import "C"
import (
"bufio"
"bytes"
"context"
"crypto/md5"
"flag"
"fmt"
"io"
"io/ioutil"
"log"
"log/syslog"
"net"
"net/http"
"os"
"os/signal"
"runtime"
"strings"
"strconv"
"sync"
"syscall"
"time"
"unsafe"
)
最佳答案
我相信您正在尝试为您的图书馆指定搜索路径,因此您应该使用-L
。 -I
用于编译器包含目录。
package main /*
#cgo LDFLAGS: -v -L${SRCDIR}/lib -lplaintext
#cgo CFLAGS: -I${SRCDIR}/include -I${SRCDIR}/lib