Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Build fails on Window when TIRPC is YES #196

Open
hanak opened this issue Oct 30, 2023 · 3 comments
Open

Build fails on Window when TIRPC is YES #196

hanak opened this issue Oct 30, 2023 · 3 comments

Comments

@hanak
Copy link

hanak commented Oct 30, 2023

Problem: We are building for both Linux and Windows. When TIRPC is YES, testGpibApp fails to build on Windows. When TIRPC is not set, asyn fails to build on Linux (due to missing rpc.h).

Cause: While "asyn" Makefile states:

ifeq ($(TIRPC),YES)
  USR_INCLUDES_Linux += -I/usr/include/tirpc
  asyn_SYS_LIBS_Linux += tirpc
endif

"testGpibApp" Makefile states:

ifeq ($(TIRPC),YES)
  USR_INCLUDES += -I/usr/include/tirpc
  testGpib_SYS_LIBS += tirpc
endif

Since the suffix _Linux is missing, the setting applies to all OS.

Workaround: Set USR_INCLUDES_Linux, asyn_SYS_LIBS_Linux , and testGpib_SYS_LIBS_Linux in CONFIG_SITE instead of TIRPC.

@ericonr
Copy link
Contributor

ericonr commented Jan 7, 2025

@hanak can you open a PR changing testGpibApp to use the _Linux suffix? That seems like the most reasonable fix, and might have been missed back when TIRPC support was first added.

@MarkRivers
Copy link
Member

The problem is probably because you are modifying CONFIG_SITE to set TIRPC=YES.

If you do that, then you need to have a CONFIG_SITE.Common.windows-x64 that sets TIRPC=NO.

Preferably, don't change CONFIG_SITE. but rather add TIRPC=YES to CONFIG_SITE.Common.linux-x86_64. I just added that as the default in that file

@hanak
Copy link
Author

hanak commented Jan 8, 2025

@MarkRivers Thank you. Still, there is a difference between "asyn" Makefile and "testBpibApp" Makefile which causes different behavior while compiling on Windows. I can make it disappear by using CONFIG_SITE dedicated to a specific OS. Yet, is this meant to be like this?

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

No branches or pull requests

3 participants