Ошибка L6218E при вызове конструктора VxGUI

Я пытаюсь скомпилировать с помощью Vrxcc Compiler в VeriFone SDK.
когда я хочу создать графическое приложение для Vx675 поза Оплата, компилятор покажет эту ошибку

ошибка: L6218E: неопределенный символ VxGUI :: VxGUI () (по ссылке из Main.o)

Main.cpp является

#include <stdio.h>
#include <svc.h>
#include <svc_gui.h>

void main()
{
VxGUI *m_GUIObj;
m_GUIObj = new VxGUI();
}

И MakeFile это

#
################### Paths   ##################
#

ACTIncludes = $(EVOACT)include
EOSIncludes = $(EOSSDK)\include
GUIIncludes  =  $(GUISDK)\Include
CardslotInclude=$(VCARDSLOT)\Include
DTKTOOLS=C:\eVoAps\Tools

###################  App Source Paths   ##################
SrcDir = .################### Compiler/Linker/Outhdr Output Paths ##################
ObjDir = .\vobj
OutDir = .\vbin###################for release...##################
ACTStaticLibraries = $(EVOACT)\Output\RV\Files\Static\Release
ACTSharedLibraries = $(EVOACT)\OutPut\RV\Files\Shlib1\Release
VMACLibraries = $(EVOVMAC)\Output\RV\Lib\Files\Debug
EOSLibararuies = $(EOSSDK)\lib
GUISDKLibraries= $(GUISDK)\lib
VRXSDKLobraries= $(EVOSDK)\lib
VCARDSLOTLobraries= $(VCARDSLOT)\Output\RV\Files\Static

#
######################### Options for Tools ########################
#

############# Compiler Options  ############
Includes = -I$(ACTIncludes) -I$(EOSIncludes) -I$(GUIIncludes) -I$(CardslotInclude)

# for release version change the COptions to
#COptions =  -DLOGSYS_FLAG -DVERIFONE
COptions =  -D_VERIFONE -DVERIFONE -DEVO -p -W -D ARM -D _ARM -g  -D _MAKE_VX_
VRXHDRPARAM= -s 300000 -h 4000000

#
######################### Dependencies  ########################
#

AppObjects = $(ObjDir)\Main.o#Using ACT static library.
ACTLibs = \
$(ACTStaticLibraries)\act2000.a \
$(EOSLibararuies)\CEIF.o    \
$(EOSLibararuies)\svc_net.o  \
$(EOSLibararuies)\elog.o \
$(GUISDKLibraries)\libvxguisdk.so#
#########################  sample Target Definition ########################
#

pseudoOut : $(OutDir)\Hello.out
$(EVOSDK)\bin\vrxhdr $(VRXHDRPARAM) -l ceif.lib=N:/ceif.lib -l net.lib=N:/net.lib -l elog.lib=N:/elog.lib  $(OutDir)\Hello.out$(OutDir)\Hello.out : $(AppObjects)
$(EVOSDK)\bin\vrxcc -map -p   $(AppObjects) $(ACTLibs) -o Hello.out
move  Hello.out $(OutDir)
del  /F /Q $(ObjDir)\*.o########################  Compile #########################$(ObjDir)\Main.o : $(SrcDir)\Main.cpp
$(EVOSDK)\bin\vrxcc  -c  $(Includes)  $(COptions) $(SrcDir)\Main.cpp -e"-" | "$(DTKTOOLS)\fmterrorARM.exe"move Main.o $(ObjDir)\Main.o

Пожалуйста, помогите мне решить эту проблему.

3

Решение

Исправили проблему выше?
Если нет, обратите внимание, что при использовании libvxgui вы должны использовать синтаксис C ++ и генерировать файл .vso вместо файла .out bin.

вставьте параметр -vsoapp в параметры CC и Link, и на выходе должен быть файл .vso.

COptions = -g -b -p -vsoapp -map -armcc, «- diag_suppress 1300 \, 611 \, 9, — apcs = / fpic —export_all_vtbl» -DLOGSYS_FLAG -DLOGSYS_NEW_API_STYLE

LOptions = -g -p -vsoapp -b -k -map

$ (VRXSDK) / bin / vrxcc $ (LOptions) $ (AppObjects) $ (Libs) -o $ @

$ (VRXSDK) / bin / vrxhdr -s $ (STACK_SIZE) -h $ (HEAP_SIZE) -lnet.lib = N: /net.lib -lceif.lib = N: /ceif.lib -lssl.lib = N: / ssl.lib -lelog.lib = N: /elog.lib $ (OutDir) / $ (OutFile)

$ (ObjDir) /%. O: $ (SrcFiles) /%. C
$ (VRXSDK) / bin / vrxcc -c $ (COptions) $ (включает в себя) $< -о $ @

$ (ObjDir) /%. O: $ (SrcFiles) /%. Cpp
$ (VRXSDK) / bin / vrxcc -c $ (COptions) $ (включает в себя) $< -о $ @

Я использовал VxGUI и в том числе с объектами QT с успехом.
Если у вас есть больше проблем, дайте мне знать. Я могу отправить вам рабочий проект.

С наилучшими пожеланиями,
Leandro

2

Другие решения

Других решений пока нет …

По вопросам рекламы [email protected]