我想尝试一个有makefile的程序,但是当我放入makeshell时,错误是:
g++ -g -DaUNIX -I../../acroname/aInclude -I../../acroname/aSource -Wl,-rpath,. unix_aLaserDemo_Data/aLaserDemo.o unix_aLaserDemo_Data/acpLaser.o -lpthread -lcrypto -lssl -o ../../acroname/aBinary/aLaserDemo
/usr/bin/ld: cannot find -lcrypto
collect2: ld returned 1 exit status
Run Code Online (Sandbox Code Playgroud)
这是makefile:
CC = g++
CFLAGS = -DaUNIX -I../../acroname/aInclude -I../../acroname/aSource
LFLAGS = -Wl,-rpath,.
SRC = ../../acroname/aSource
BIN = ../../acroname/aBinary
LIBS = -lpthread -lcrypto -lssl \
#LIBS = -lpthread\
-L../../acroname/aBinary -l aUtil -l aIO
OBJ = unix_aLaserDemo_Data
.PHONY : app
app : $(OBJ) $(BIN)/aLaserDemo
$(OBJ) :
mkdir $(OBJ)
$(BIN)/aLaserDemo : $(OBJ)/aLaserDemo.o $(OBJ)/acpLaser.o
$(CC) -g $(CFLAGS) $(LFLAGS) …Run Code Online (Sandbox Code Playgroud) 我想通过visual c ++访问串口我从互联网上获取程序但是当我运行程序时,似乎端口无法打开
这是我的程序serialClass.cpp
#ifndef SERIALCLASS_H_INCLUDED
#define SERIALCLASS_H_INCLUDED
#define ARDUINO_WAIT_TIME 2000
#include <windows.h>
#include <stdio.h>
#include <stdlib.h>
class Serial
{
private:
HANDLE hSerial;
bool connected;
COMSTAT status;
DWORD errors;
public:
Serial(char *portName);
//Serial();
~Serial();
int ReadData(char *buffer, unsigned int nbChar);
bool WriteData(char *buffer, unsigned int nbChar);
bool IsConnected();
};
#endif // SERIALCLASS_H_INCLUDED
Run Code Online (Sandbox Code Playgroud)
和我的Serial.cpp
#include "SerialClass.h"
Serial::Serial(char *portName)
//Serial::Serial()
{
//We're not yet connected
this->connected = false;
//Try to connect to the given port throuh CreateFile
this->hSerial = CreateFile((LPCWSTR) portName,
GENERIC_READ …Run Code Online (Sandbox Code Playgroud) 我尝试从传感器读取数据。传感器控制器使用 db9 标头 (com1),因为我将使用 com1,所以我使用 db9 到 USB 转换器并获取 com 11。
我有程序读取和写入串口,当我使用com1时它可以工作,但是当我更改为com 11时,程序无法打开com,因为它到达了ERROR_FILE_NOT_FOUND
这是我的串口编程程序:
Serial::Serial(char *portName)
{
this->connected = false;
wchar_t wcPort[64];
size_t convertedChars = 0;
mbstowcs_s(&convertedChars, wcPort, strlen(portName), portName, _TRUNCATE);
this->hSerial = CreateFile(wcPort,
GENERIC_READ | GENERIC_WRITE,
0,
NULL,
OPEN_EXISTING,
FILE_ATTRIBUTE_NORMAL,
0);
//Check if the connection was successfull
if(this->hSerial==INVALID_HANDLE_VALUE)
{
//If not success full display an Error
if(GetLastError()==ERROR_FILE_NOT_FOUND){
//Print Error if neccessary
printf("ERROR: Handle was not attached. Reason: %s not available.\n", portName);
}
else
{
printf("ERROR!!!");
}
}
else …Run Code Online (Sandbox Code Playgroud)