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

fix: fix make install missing file #119

Closed
wants to merge 3 commits into from
Closed

Conversation

Neko-vecter
Copy link

File Change:

  • Makefile

Fix the missing version.h file when using make install directly.

How to reproduce the problem.
git clone the repo and update submodule in the repo. Then run the following command in camera-streamer directory.

sudo make install

After make install it will show missing version.h

It relate to the issue ayufan/camera-streamer issue 111 and mainsail-crew/crowsnest issue 188

After this fix it can build with crowsnest.

-Neko.vecter

File Change:
- Makefile

Fix the missing `version.h` file when using `make install` directly.
@@ -86,7 +86,7 @@ version:
%: cmd/% $(TARGET_OBJS)
Copy link
Owner

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

I think the version should be added to %: cmd/% $(TARGET_OBJS) instead.

Copy link
Author

@Neko-vecter Neko-vecter Nov 30, 2023

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

like change below?

%: version cmd/% $(TARGET_OBJS)

Copy link
Owner

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Yes. Try if this works.

Copy link
Author

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

ok I will try this change.

Copy link
Author

@Neko-vecter Neko-vecter Nov 30, 2023

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

it work in make install. For more check I will run the crowsnest build with system build. it maybe take 30min.
If it work I will update this.

Copy link
Author

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

For now it didn't show missing version.h but show other.
I am still progressing. (try to install on debian 12 with crowsnest)

Current issue.

[100%] Linking CXX static library libdatachannel-static.a
make[5]: Leaving directory '/home/pi/crowsnest/bin/camera-streamer/third_party/libdatachannel/build'
[100%] Built target datachannel-static
make[4]: Leaving directory '/home/pi/crowsnest/bin/camera-streamer/third_party/libdatachannel/build'
make[3]: Leaving directory '/home/pi/crowsnest/bin/camera-streamer/third_party/libdatachannel/build'
make[2]: Leaving directory '/home/pi/crowsnest/bin/camera-streamer/third_party/libdatachannel/build'
g++ -Werror -Wall -g -I/home/pi/crowsnest/bin/camera-streamer -D_GNU_SOURCE -Wno-error=deprecated-declarations -DUSE_HW_H264 -DUSE_FFMPEG -DUSE_LIBCAMERA -I/usr/include/libcamera  -DUSE_RTSP -I/usr/include/liveMedia -I/usr/include/groupsock -I/usr/include/BasicUsageEnvironment -I/usr/include/UsageEnvironment  -DUSE_LIBDATACHANNEL -Ithird_party/libdatachannel/include -Ithird_party/libdatachannel/deps/json/include -o camera-streamer version device/buffer.o device/buffer_list.o device/buffer_lock.o device/buffer_queue.o device/device.o device/device_list.o device/links.o output/http_ffmpeg.o output/http_h264.o output/http_hls.o output/http_jpeg.o output/output.o device/camera/camera.o device/camera/camera_debug.o device/camera/camera_decoder.o device/camera/camera_input.o device/camera/camera_isp.o device/camera/camera_output.o device/camera/camera_pipeline.o device/camera/camera_rescaller.o device/dummy/buffer.o device/dummy/buffer_list.o device/dummy/device.o device/dummy/dummy.o device/libcamera/fake_camera.o device/v4l2/buffer.o device/v4l2/buffer_list.o device/v4l2/debug.o device/v4l2/device.o device/v4l2/device_list.o device/v4l2/device_media.o device/v4l2/device_options.o device/v4l2/v4l2.o util/ffmpeg/remuxer.o util/http/http.o util/http/http_methods.o util/opts/control.o util/opts/fourcc.o util/opts/log.o util/opts/opts.o device/libcamera/buffer.o device/libcamera/buffer_list.o device/libcamera/device.o device/libcamera/libcamera.o device/libcamera/options.o output/rtsp/rtsp.o output/webrtc/webrtc.o html/control.html.o html/index.html.o html/webrtc.html.o third_party/libdatachannel/build/libdatachannel-static.a  -lpthread -lstdc++ -lavcodec -lavformat -lavutil -lcamera -lcamera-base  -lliveMedia -lgroupsock -lBasicUsageEnvironment -lUsageEnvironment  -Lthird_party/libdatachannel/build -ldatachannel-static -Lthird_party/libdatachannel/build/deps/usrsctp/usrsctplib -lusrsctp -Lthird_party/libdatachannel/build/deps/libsrtp -lsrtp2 -Lthird_party/libdatachannel/build/deps/libjuice -ljuice-static -lcrypto -lssl
/usr/bin/ld: cannot find version: No such file or directory
collect2: error: ld returned 1 exit status
make[1]: *** [Makefile:87: camera-streamer] Error 1
rm device/buffer_lock.o device/v4l2/buffer.o output/http_hls.o device/camera/camera_output.o html/webrtc.html.c device/v4l2/buffer_list.o html/webrtc.html.o device/buffer_queue.o util/ffmpeg/remuxer.o device/buffer.o html/control.html.c device/camera/camera_decoder.o device/links.o output/webrtc/webrtc.o cmd/list-devices/main.o device/v4l2/debug.o device/camera/camera_input.o util/opts/opts.o device/libcamera/device.o device/v4l2/device_options.o output/http_ffmpeg.o device/camera/camera.o device/camera/camera_rescaller.o device/libcamera/fake_camera.o html/control.html.o output/rtsp/rtsp.o cmd/camera-streamer/main.o device/buffer_list.o device/camera/camera_debug.o util/http/http.o device/camera/camera_pipeline.o device/dummy/buffer_list.o util/opts/control.o output/http_jpeg.o cmd/camera-streamer/opts.o util/opts/fourcc.o output/output.o device/v4l2/device_list.o device/device_list.o device/v4l2/device_media.o device/dummy/device.o device/libcamera/buffer_list.o device/dummy/dummy.o device/libcamera/libcamera.o util/http/http_methods.o cmd/camera-streamer/status.o device/dummy/buffer.o cmd/camera-streamer/http.o util/opts/log.o html/index.html.o html/index.html.c device/camera/camera_isp.o device/v4l2/v4l2.o device/device.o device/libcamera/options.o device/v4l2/device.o device/libcamera/buffer.o output/http_h264.o
make[1]: Leaving directory '/home/pi/crowsnest/bin/camera-streamer'
make: *** [Makefile:67: all] Error 2
make: *** [Makefile:19: install] Error 2

-Neko.vecter

Copy link
Author

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Ok... move this version in %: version cmd/% $(TARGET_OBJS) is not working. it will show the message below

/usr/bin/ld: cannot find version: No such file or directory

So... the fix should be like the first commit I make.

Test Device:
Raspberry Pi 4B (4GB ver.) with bookworm 64 (Debian 12)

-Neko.vecter

File Change:
- Makefile

move `version` to line 86
```
%: version cmd/% $(TARGET_OBJS)
```
File Change:
- Makefile

Fix the missing `version.h` file when using `make install` directly.

move this to `%: cmd/% $(TARGET_OBJS)` not working.
@Neko-vecter Neko-vecter marked this pull request as ready for review November 30, 2023 17:13
@Neko-vecter
Copy link
Author

Since move this version in %: version cmd/% $(TARGET_OBJS) is not working. it will show the message below

/usr/bin/ld: cannot find version: No such file or directory

So... the fix should be like the first commit I make.

Test Device:
Raspberry Pi 4B (4GB ver.) with bookworm 64 (Debian 12)

-Neko.vecter

@ayufan
Copy link
Owner

ayufan commented Nov 30, 2023 via email

@Neko-vecter
Copy link
Author

Neko-vecter commented Nov 30, 2023

Move version at the end, not beginning. This should work then.

On Thu, 30 Nov 2023 at 18:15, Neko.vecter @.> wrote: Since move this version in %: version cmd/% $(TARGET_OBJS) is not working. it will show the message below /usr/bin/ld: cannot find version: No such file or directory So... the fix should be like the first commit I make. Test Device: Raspberry Pi 4B (4GB ver.) with bookworm 64 (Debian 12) -Neko.vecter — Reply to this email directly, view it on GitHub <#119 (comment)>, or unsubscribe https://github.com/notifications/unsubscribe-auth/AASOSQOHTEVWELKGMNSID5LYHC5KFAVCNFSM6AAAAABABBXS62VHI2DSMVQWIX3LMV43OSLTON2WKQ3PNVWWK3TUHMYTQMZUGE4TKMRTGQ . You are receiving this because you commented.Message ID: @.>

it not work.
I made change like below

%: cmd/% $(TARGET_OBJS) version

and show

/usr/bin/ld: cannot find version: No such file or directory
collect2: error: ld returned 1 exit status

I think it only work add in install:? Like below.

install: version $(TARGET)

-Neko.vecter

@ayufan
Copy link
Owner

ayufan commented Dec 2, 2023

@Neko-vecter I will look at this tomorrow and add this to a target.

@Neko-vecter
Copy link
Author

@Neko-vecter I will look at this tomorrow and add this to a target.

Ok! Have a nice day~

-Neko.vecter

@Neko-vecter
Copy link
Author

Neko-vecter commented Dec 6, 2023

@Neko-vecter I will look at this tomorrow and add this to a target.

I am thinking let crowsnest using camera-streamer pre-build package.
I just open a feature request in mainsail-crew/crowsnest.

-Neko.vecter

@ayufan
Copy link
Owner

ayufan commented Dec 6, 2023

@Neko-vecter I fixed this in 54bdd9d.

@ayufan ayufan closed this Dec 6, 2023
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

Successfully merging this pull request may close these issues.

2 participants