Skip to content

fpm and Plplot with gtk3/4: "multiple definition of `main'" error (support needed) #284

@lllaxmatist

Description

@lllaxmatist

When try to compile project with PLplot support i get errors both on windows and on Linux.
(without inclusion of Plplot project runs perfect)

Errors on MSYS2:
lllax@LAPTOP-KVC9DPIV UCRT64 /home/FPMprojects/circle_fpm
$   fpm run --flag "$(pkg-config --cflags --libs plplot plplot-fortran)"
circle_fpm.f90                         done.
circle_fpm.exe                         failed.
[100%] Compiling...
D:/Programs/MSYS2/ucrt64/bin/../lib/gcc/x86_64-w64-mingw32/13.2.0/../../../../x86_64-w64-mingw32/bin/ld.exe: build\gfortran_B17540FEB7ADF59B\circle_fpm\app_circle_fpm.f90.o
:circle_fpm.f90:(.text+0x1254): multiple definition of `main'; D:/Programs/MSYS2/ucrt64/bin/../lib/gcc/x86_64-w64-mingw32/13.2.0/../../../../lib/libmingw32.a(lib64_libmingw
32_a-crtexewin.o):C:/M/B/src/mingw-w64/mingw-w64-crt/crt/crtexewin.c:23: first defined here
D:/Programs/MSYS2/ucrt64/bin/../lib/gcc/x86_64-w64-mingw32/13.2.0/../../../../x86_64-w64-mingw32/bin/ld.exe: D:/Programs/MSYS2/ucrt64/bin/../lib/gcc/x86_64-w64-mingw32/13.2
.0/../../../../lib/libmingw32.a(lib64_libmingw32_a-crtexewin.o): in function `main':
C:/M/B/src/mingw-w64/mingw-w64-crt/crt/crtexewin.c:67:(.text.startup+0xbd): undefined reference to `WinMain'
D:/Programs/MSYS2/ucrt64/bin/../lib/gcc/x86_64-w64-mingw32/13.2.0/../../../../x86_64-w64-mingw32/bin/ld.exe: build\gfortran_0913D9F560CF5CAD\circle_fpm\libcircle_fpm.a(buil
d_dependencies_gtk-fortran_src_gtk-draw-hl.f90.o):gtk-draw-hl.f9:(.text+0x507): undefined reference to `gdk_cairo_set_source_pixbuf'
D:/Programs/MSYS2/ucrt64/bin/../lib/gcc/x86_64-w64-mingw32/13.2.0/../../../../x86_64-w64-mingw32/bin/ld.exe: build\gfortran_0913D9F560CF5CAD\circle_fpm\libcircle_fpm.a(buil
d_dependencies_gtk-fortran_src_gtk-draw-hl.f90.o):gtk-draw-hl.f9:(.text+0x663): undefined reference to `gdk_pixbuf_get_from_surface'
collect2.exe: error: ld returned 1 exit status
<ERROR> Compilation failed for object " circle_fpm.exe "
<ERROR> stopping due to failed compilation
STOP 1

If i exclude all plplot from code (comment out, only usage of plplot remain) the erors keeps in code.

p.s. :
On Linux i get different errors (ill paste it as i get to my PC in next post).

p.p.s. :
I do need only simple 2d plots, maybe there is alternative lib to use instead?

Metadata

Metadata

Assignees

Projects

No projects

Milestone

No milestone

Relationships

None yet

Development

No branches or pull requests

Issue actions